Developer sandbox

Sandbox

Explore endpoints, walk through federation, deliver test events and simulate certificate release. All payloads here are simulated and labelled; nothing contacts a live system.

Example
POST/users
Example

Create or upsert a candidate

Creates a candidate record. When external_id already exists the request is treated as an update, which keeps commerce and HR systems idempotent on retry.

auth: Bearer token, scope users.write

Parameters

NameInTypeRequiredDescription
emailbodystringrequiredCandidate email, used as the login identity when SSO is not configured.
first_namebodystringrequiredGiven name.
last_namebodystringrequiredFamily name.
external_idbodystringoptionalStable identifier from the source system (order, CRM, ATS, commerce customer id).
source_systembodystringoptionalOrigin label for audit, e.g. commerce-platform.
Example request body
{
  "email": "jane.smith@example.com",
  "first_name": "Jane",
  "last_name": "Smith",
  "external_id": "WC-8291",
  "source_system": "commerce-platform",
  "locale": "en-US"
}

Code

cURL
curl -X POST "https://sandbox.integration-lab.local/api/v1/users" \
  -H "Authorization: Bearer $IL_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"email":"jane.smith@example.com","first_name":"Jane","last_name":"Smith","external_id":"WC-8291","source_system":"commerce-platform","locale":"en-US"}'

Error responses

409external_id_conflictexternal_id belongs to a different email address.
422validation_failedemail is not a valid address.

Response viewer

No request sent

Choose an endpoint and select “Try in sandbox” to see a simulated response. Responses are illustrative until verified against official Integration Lab API documentation.