v1

latestOpenAPI 3.0.3Apache 2.02026-07-1756158355.3 KB
identity

Create an Identity

Create an identity. This endpoint can also be used to import credentials for instance passwords, social sign in configurations or multifactor methods.

post/admin/identities

Request body

external_idstring

ExternalID is an optional external ID of the identity. This is used to link the identity to an external system. If set, the external ID must be unique across all identities.

{"stackTrail":"components:schemas:createIdentityBody:properties:metadata_admin","oasType":"schema","type":"unknown","description":"Store metadata about the user which is only accessible through admin APIs such as `GET /admin/identities/<id>`."}
{"stackTrail":"components:schemas:createIdentityBody:properties:metadata_public","oasType":"schema","type":"unknown","description":"Store metadata about the identity which the identity itself can see when calling for example the\nsession endpoint. Do not store sensitive information (e.g. credit score) about the identity in this field."}
organization_idstring uuid4 nullable
schema_idstring required

SchemaID is the ID of the JSON Schema to be used for validating the identity's traits.

state'active' | 'inactive'

State is the identity's state. active StateActive inactive StateInactive

traitsobject required

Traits represent an identity's traits. The identity is able to create, modify, and delete traits in a self-service manner. The input will always be validated against the JSON Schema defined in schema_url.

Example request

{
  "recovery_addresses": [
    {
      "updated_at": "2000-01-23T04:56:07.000+00:00",
      "created_at": "2000-01-23T04:56:07.000+00:00",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "via": "via"
    }
  ],
  "verifiable_addresses": [
    {
      "updated_at": "2014-01-01T23:28:56.782Z",
      "verified_at": "2000-01-23T04:56:07.000+00:00",
      "verified": true,
      "created_at": "2014-01-01T23:28:56.782Z",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "status": "status",
      "via": "email"
    }
  ]
}

Response

identity

created_atstring date-time

CreatedAt is a helper struct field for gobuffalo.pop.

credentialsobject

Credentials represents all credentials that can be used for authenticating this identity.

external_idstring

ExternalID is an optional external ID of the identity. This is used to link the identity to an external system. If set, the external ID must be unique across all identities.

idstring uuid required

ID is the identity's unique identifier.

The Identity ID can not be changed and can not be chosen. This ensures future compatibility and optimization for distributed stores such as CockroachDB.

{"stackTrail":"components:schemas:identity:properties:metadata_admin","oasType":"schema","type":"unknown","description":"NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-","nullable":true}
{"stackTrail":"components:schemas:identity:properties:metadata_public","oasType":"schema","type":"unknown","description":"NullJSONRawMessage represents a json.RawMessage that works well with JSON, SQL, and Swagger and is NULLable-","nullable":true}
organization_idstring uuid4 nullable
schema_idstring required

SchemaID is the ID of the JSON Schema to be used for validating the identity's traits.

schema_urlstring required

SchemaURL is the URL of the endpoint where the identity's traits schema can be fetched from.

format: url

state'active' | 'inactive'

State is the identity's state.

This value has currently no effect. active StateActive inactive StateInactive

state_changed_atstring date-time
{"stackTrail":"components:schemas:identity:properties:traits","oasType":"schema","type":"unknown","description":"Traits represent an identity's traits. The identity is able to create, modify, and delete traits\nin a self-service manner. The input will always be validated against the JSON Schema defined\nin `schema_url`."}
updated_atstring date-time

UpdatedAt is a helper struct field for gobuffalo.pop.

Example response

{
  "traits": "",
  "credentials": {
    "key": {
      "updated_at": "2000-01-23T04:56:07.000+00:00",
      "identifiers": [
        "identifiers",
        "identifiers"
      ],
      "created_at": "2000-01-23T04:56:07.000+00:00",
      "type": "password",
      "config": "{}",
      "version": 0
    }
  },
  "state_changed_at": "2000-01-23T04:56:07.000+00:00",
  "created_at": "2000-01-23T04:56:07.000+00:00",
  "external_id": "external_id",
  "recovery_addresses": [
    {
      "updated_at": "2000-01-23T04:56:07.000+00:00",
      "created_at": "2000-01-23T04:56:07.000+00:00",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "via": "via"
    },
    {
      "updated_at": "2000-01-23T04:56:07.000+00:00",
      "created_at": "2000-01-23T04:56:07.000+00:00",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "via": "via"
    }
  ],
  "metadata_admin": "",
  "updated_at": "2000-01-23T04:56:07.000+00:00",
  "verifiable_addresses": [
    {
      "updated_at": "2014-01-01T23:28:56.782Z",
      "verified_at": "2000-01-23T04:56:07.000+00:00",
      "verified": true,
      "created_at": "2014-01-01T23:28:56.782Z",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "status": "status",
      "via": "email"
    },
    {
      "updated_at": "2014-01-01T23:28:56.782Z",
      "verified_at": "2000-01-23T04:56:07.000+00:00",
      "verified": true,
      "created_at": "2014-01-01T23:28:56.782Z",
      "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
      "value": "value",
      "status": "status",
      "via": "email"
    }
  ],
  "organization_id": "organization_id",
  "schema_id": "schema_id",
  "schema_url": "schema_url",
  "id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  "state": "active",
  "metadata_public": ""
}