For the complete documentation index, see llms.txt. This page is also available as Markdown.

Users

Get a specific user

get
Authorizations
AuthorizationstringRequired
Path parameters
idintegerRequired

Catalog user id

Responses
200

user found

application/json
get/api/v1/users/{id}
GET /api/v1/users/{id} HTTP/1.1
Host: catalog.example.edu
Authorization: YOUR_API_KEY
Accept: */*
200

user found

{
  "user": {
    "id": 1,
    "root_account_id": 1,
    "canvas_user_id": 1,
    "registered_account_id": 1,
    "canvas_root_account_uuid": "text",
    "canvas_user_uuid": "text",
    "user_name": "text",
    "first_name": "text",
    "last_name": "text",
    "email_address": "text",
    "custom_fields": {},
    "created_at": "text",
    "updated_at": "text",
    "time_zone": "text",
    "merged_into_user_id": 1,
    "disable_alert_timeouts": true
  }
}

Update a specific user

put

Set clear_merged_into_user_id to true to resolve the "Current user has been deleted or merged. Please re-login" login error.

Authorizations
AuthorizationstringRequired
Path parameters
idintegerRequired

Catalog user id

Body
clear_merged_into_user_idbooleanOptional

Clear the merged_into_user_id field when true

custom_fieldsobjectOptional

Custom field values (strings or null); omitted keys are unchanged

Responses
200

user updated

application/json
put/api/v1/users/{id}
PUT /api/v1/users/{id} HTTP/1.1
Host: catalog.example.edu
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 53

{
  "clear_merged_into_user_id": true,
  "custom_fields": {}
}
200

user updated

{
  "user": {
    "id": 1,
    "root_account_id": 1,
    "canvas_user_id": 1,
    "registered_account_id": 1,
    "canvas_root_account_uuid": "text",
    "canvas_user_uuid": "text",
    "user_name": "text",
    "first_name": "text",
    "last_name": "text",
    "email_address": "text",
    "custom_fields": {},
    "created_at": "text",
    "updated_at": "text",
    "time_zone": "text",
    "merged_into_user_id": 1,
    "disable_alert_timeouts": true
  }
}

Delete a specific user with dependencies

delete

Deletes the user and dependencies. When only_orders_and_enrollments is true, deletes only orders, enrollments, payments, bulk invitations, and applicants — not the user or related account admins.

Authorizations
AuthorizationstringRequired
Path parameters
idintegerRequired

Catalog user id

Query parameters
only_orders_and_enrollmentsbooleanOptional

Delete only user dependencies, not the user itself

Responses
200

user (and/or dependencies) deleted

No content

delete/api/v1/users/{id}
DELETE /api/v1/users/{id} HTTP/1.1
Host: catalog.example.edu
Authorization: YOUR_API_KEY
Accept: */*
200

user (and/or dependencies) deleted

No content

List users

get
Authorizations
AuthorizationstringRequired
Query parameters
registered_in_catalogbooleanOptional

true = Catalog-registered only; false = Canvas-registered only; omit for all

canvas_user_idintegerOptional

Canvas user id

created_at_fromstring · date-timeOptional

Created at from (UTC)

created_at_tostring · date-timeOptional

Created at to (UTC)

Responses
200

users listed

application/json
get/api/v1/users
GET /api/v1/users HTTP/1.1
Host: catalog.example.edu
Authorization: YOUR_API_KEY
Accept: */*
200

users listed

{
  "users": [
    {
      "id": 1,
      "root_account_id": 1,
      "canvas_user_id": 1,
      "registered_account_id": 1,
      "canvas_root_account_uuid": "text",
      "canvas_user_uuid": "text",
      "user_name": "text",
      "first_name": "text",
      "last_name": "text",
      "email_address": "text",
      "custom_fields": {},
      "created_at": "text",
      "updated_at": "text",
      "time_zone": "text",
      "merged_into_user_id": 1,
      "disable_alert_timeouts": true
    }
  ]
}

Register a user

post
Authorizations
AuthorizationstringRequired
Body
user_namestringRequired

Full user name

first_namestringOptional
last_namestringOptional
email_addressstringRequired

E-mail address (also the login)

registered_account_idintegerOptional

Subcatalog to associate (defaults to the API key root account)

custom_fieldsobjectOptional

Custom field values

Responses
200

user registered

application/json
post/api/v1/users
POST /api/v1/users HTTP/1.1
Host: catalog.example.edu
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 127

{
  "user_name": "text",
  "first_name": "text",
  "last_name": "text",
  "email_address": "text",
  "registered_account_id": 1,
  "custom_fields": {}
}
200

user registered

{
  "user": {
    "id": 1,
    "root_account_id": 1,
    "canvas_user_id": 1,
    "registered_account_id": 1,
    "canvas_root_account_uuid": "text",
    "canvas_user_uuid": "text",
    "user_name": "text",
    "first_name": "text",
    "last_name": "text",
    "email_address": "text",
    "custom_fields": {},
    "created_at": "text",
    "updated_at": "text",
    "confirmation_url": "text",
    "terms_of_use": true,
    "locale": "text"
  }
}

Last updated

Was this helpful?