export interface AccessTokenRequest { requester_id: string; roles: string[]; } /** * The required attributes of a field */ export interface CreateFieldRequest { /** * Unique alphanumeric identifier for the field. */ name: string; /** * Descriptiong of field purpose */ description?: string; /** * Access group id given default access to all instances of this data */ default_access_group?: string; } export interface UpdateFieldRequest { name?: string; description?: string; default_access_group?: string; } export interface CreateRoleRequest { name: string; description?: string; } export interface UpdateRoleRequest { name?: string; description?: string; } export interface UpdateFieldInstanceRequest { field: string; value: string; } /** * The required attributes of an access group */ export interface CreateAccessGroupRequest { /** * The access group name of which the access group id is derived. */ name: string; /** * Description of the access group's purpose. */ description?: string; /** * List of role ids that have READ permission in this group. */ read_roles?: string[]; /** * List of role ids that have WRITE permission in this group. */ write_roles?: string[]; } export interface UpdateAccessGroupRequest { name?: string; description?: string; read_roles?: string[]; write_roles?: string[]; } export interface AliasKeyRequestValue { encrypted_key: string; alias_wrapper_key_id: string; } export interface AliasKeyRequest { data: AliasKeyRequestValue[]; } export interface AliasWrapperKeyRequest { algorithm: string; } export interface EncryptedAliasRequestValue { ciphertext: string; hash: string; alias_wrapper_key_id: string; }