Create a user profile

Create a user profile
Open Recipe

Creates a new user profile. Note that, because of database replication requirements, it sometimes takes a few minutes for the newly-created user profile to be available to the entity.find and entity.count endpoints (the latter when using filters). See the include_record parameter for more information.

Refer to the Registration error codes page for details on error codes.

API client permissions

The following table indicates the API clients that can and can't be used to call this operation:

owneraccess_issuerdirect_accessdirect_read_accesslogin_client

Authentication

This operation supports both Basic authentication (recommended) and janrain-signed authentication. See Get started for more information.

Base URL

The base URL for this operation is your Identity Cloud Capture domain; for example:

https://educationcenter.us-dev.janraincapture.com

Your Capture domain (also known as a Registration domain) can be found in Console on the Manage Application page.

Examples

Example request: Create a user account

This command creates a new user account, specifying the following attribute values for the account:

  • familyName
  • givenName
  • email
  • statuses

Note that the statuses attribute is a plural attribute, and contains two child attributes: status and statusCreated.

curl -X POST \
  -H "Authorization: Basic c2dueXZ1czZwYzRqbTdraHIybmVxNWdzODlnYnIyZXE6d3Q0YzN1bjl3a2tjZnZ5a25xeDQ0eW5jNDc2YWZzNjg=" \
  --data-urlencode type_name=user\
  --data-urlencode attributes='{"givenName":"Matt","familyName":"Parker","email":"parkerm@example.com","statuses":[{"status":"active","statusCreated":"2019-10-15T07:36:25Z"}]}' \
  https://my-app.janraincapture.com/entity.create

Example response

If the operation succeeds, you'll get back the id and uuid of the new account:

{
  "id": 11649,
  "uuid": "02b0c68d-7d7a-49d8-a88d-022585b0f877",
  "stat": "ok"
}

Example error response

If your API call doesn't succeed, you'll get back an error message similar to this:

{
  "argument_name": "attributes",
  "request_id": "geup8cd3gvcvjjnc",
  "code": 200,
  "error_description": "attributes was not valid for the following
    reason: the JSON isnot syntactically valid",
  "error": "invalid_argument",
  "stat": "error"
}

See Registration error codes for more information about these error codes. Note that the Entity and Entity Type API doesn't use standard HTTP error codes.

Parameters

All parameters need to be configured as x-www-form-urlencoded* body parameters.

ParameterTypeRequiredDescription
attributesJSON objectAttribute names and values for the new user account. Note that you don't need to include all the possible user profile attributes: the new record is created using whatever attributes and attribute values you supply.

Attributes not included in the request are set to null.
include_recordbooleanWhen true, the API response includes all the attributes and attribute values assigned to the new record. Use this parameter if you need to work with new record immediately after the user profile has been created. That's because, due to database replication issues, you might experience a brief delay before you can access the new record with the /entity.find or the entity.count endpoints.

Note that the record ID and UUID are always returned regardless of whether or not you use the include_record parameter.
type_namestringEntity type that that stores the new user account.