Assemble Developer Portal

External Identifiers (3.0)

Download OpenAPI specification:Download

External identifiers are used to link a user in Assemble to a user in an external system.

This API allows you to search for, create, update, and delete external identifiers for users in Assemble.

Assemble users can have multiple external identifiers, but each external identifier must be unique per identifier type.

All external identifier endpoints are scoped to the permissions of the user making the request and requires the "Superuser" permission.

External Identifiers

Operations related to external identifiers

Search external identifiers

Search for external identifiers across all users in the organisation.

Authorizations:
None
query Parameters
type
string
Enum: "moodle" "talentlms" "cornerstone_user_id" "cornerstone_username" "litmos_user_id" "donorfy"
Example: type=moodle

Filter external identifiers by type. Supports multiple values using a comma-separated string.

identifier
string
Example: identifier=515165

Filter external identifiers by identifier value. Supports multiple values using a comma-separated string.

user
string
Example: user=65784

Filter external identifiers by Assemble user ID. Supports multiple values using a comma-separated string.

page
integer
Default: 1
Example: page=1

The page number of external identifiers to return in the response.

limit
integer [ 1 .. 1000 ]
Default: 15
Example: limit=100

The maximum number of external identifiers to return in the response.

Responses

Response Schema: application/json
Array of objects (User external identifier)
object

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": 38482,
      • "user_id": 54865,
      • "type": "moodle",
      • "status": "success",
      • "identifier": "69874562",
      • "created_at": "2020-01-01 00:00:00",
      • "updated_at": "2020-01-01 00:00:00"
      }
    ],
  • "meta": {
    • "pagination": {
      • "total": "string",
      • "count": "string",
      • "per_page": "string",
      • "current_page": "string",
      • "total_pages": "string",
      • "links": {
        • "next": "string",
        • "previous": "string"
        }
      }
    }
}

User External Identifiers

Operations related to user external identifiers

Retrieve external identifiers for user

Retrieve external identifiers for a specific user in Assemble.

Authorizations:
None
path Parameters
userId
required
integer
Example: 234523

The Assemble user ID

query Parameters
type
string
Enum: "moodle" "talentlms" "cornerstone_user_id" "cornerstone_username" "litmos_user_id" "donorfy"
Example: type=moodle

Filter external identifiers by type. Supports multiple values using a comma-separated string.

identifier
string
Example: identifier=515165

Filter external identifiers by identifier value. Supports multiple values using a comma-separated string.

page
integer
Default: 1
Example: page=1

The page number of external identifiers to return in the response.

limit
integer [ 1 .. 1000 ]
Default: 15
Example: limit=100

The maximum number of external identifiers to return in the response.

Responses

Response Schema: application/json
Array of objects (User external identifier)
object

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": 38482,
      • "user_id": 54865,
      • "type": "moodle",
      • "status": "success",
      • "identifier": "69874562",
      • "created_at": "2020-01-01 00:00:00",
      • "updated_at": "2020-01-01 00:00:00"
      }
    ],
  • "meta": {
    • "pagination": {
      • "total": "string",
      • "count": "string",
      • "per_page": "string",
      • "current_page": "string",
      • "total_pages": "string",
      • "links": {
        • "next": "string",
        • "previous": "string"
        }
      }
    }
}

Create external identifier

Create an external identifier for a specific user in Assemble.

Each external identifier must be unique per identifier type across all users in the organisation.

You cannot update an external identifier once it has been created, you must delete it and create a new one.

Authorizations:
None
path Parameters
userId
required
integer
Example: 234523

The Assemble user ID

Request Body schema: application/json
type
required
string
Enum: "moodle" "talentlms" "cornerstone_user_id" "cornerstone_username" "litmos_user_id" "donorfy"

The type of external identifier

identifier
required
string

The external identifier value

Responses

Request samples

Content type
application/json
{
  • "type": "moodle",
  • "identifier": "69874562"
}

Response samples

Content type
application/json
{
  • "data": {
    • "id": 38482,
    • "user_id": 54865,
    • "type": "moodle",
    • "status": "success",
    • "identifier": "69874562",
    • "created_at": "2020-01-01 00:00:00",
    • "updated_at": "2020-01-01 00:00:00"
    }
}

Delete external identifier

Delete an external identifier for a specific user in Assemble.

External identifiers cannot be restored once deleted, you must create a new one.

Authorizations:
None
path Parameters
userId
required
integer
Example: 53253

The Assemble user ID

identifierId
required
integer
Example: 53253

The unique identifier for the external identifier

Responses

Response samples

Content type
application/json
{
  • "message": "Unauthorized action",
  • "status_code": "403"
}