POST
/users/identifyIdentify (create or update) a user
Create a new portal user or update an existing one by email. User attributes must be configured in Settings > User Attributes before they can be set.
Request body
| Field | Type | Description |
|---|---|---|
emailrequired | string | User email (used for lookup/creation) |
name | string | Display name |
image | string | Profile image URL |
emailVerified | boolean | Email verification status |
externalId | string | Your system's user ID for cross-referencing |
attributes | object | User attributes (must be configured in Settings > User Attributes) |
Response
Existing user updated
| Field | Type | Description |
|---|---|---|
principalIdrequired | string | Principal ID |
userIdrequired | string | User ID |
namerequired | string | |
emailrequired | string | |
imagerequired | stringnull | Profile image URL |
emailVerifiedrequired | boolean | Whether email is verified |
externalIdrequired | stringnull | Customer-provided external user ID |
attributesrequired | object | User attributes (must be configured in Settings > User Attributes) |
createdAtrequired | string | Account creation date |
createdrequired | boolean | true if new user was created, false if existing was updated |
Errors
400Validation error (invalid attributes)401UnauthorizedExample request
curl \
-X POST \
"https://feedback.quackback.io/api/v1/users/identify" \
-H "Authorization: Bearer qb_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"email": "example_email",
"name": "example_name",
"image": "example_image",
"emailVerified": false,
"externalId": "example_externalId"
}'