Associate an existing Person with an exact external identity
Requires the separate properties.personAssociation.projectAccessTokenIds grant. Without an onboardingPolicy this is explicit linking only. With svit-user enabled, a new claim requires onboarding.email (nullable) and must still resolve to this Person. Same key and Person repeats successfully, including after email changes. Other owners, retired keys and inactive/foreign targets are rejected. Never creates or edits a Person. Creation/lookup permissions and existing associations are unchanged.
/v1/external/people/{personId}/external-identitiesRequires the separate properties.personAssociation.projectAccessTokenIds grant. Without an onboardingPolicy this is explicit linking only. With svit-user enabled, a new claim requires onboarding.email (nullable) and must still resolve to this Person. Same key and Person repeats successfully, including after email changes. Other owners, retired keys and inactive/foreign targets are rejected. Never creates or edits a Person. Creation/lookup permissions and existing associations are unchanged.
Authorization
projectAccessToken Server-to-server Project Access Token. Requests operate in the token's Project.
In: header
Path Parameters
1 <= length <= 16Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://api-external.svit.one/api/v1/external/people/string/external-identities" \ -H "Content-Type: application/json" \ -d '{ "integrationId": "497a18ca-284e-40c0-985d-f72be35d468e", "externalId": "string" }'{
"personId": "string",
"status": "created"
}{
"personId": "string",
"status": "created"
}Person external associations
Create a Person with a stable source identity and recover its ID by exact lookup.
Create a Person POST
Creates a persisted Person in the Project established by the server token. Plain creation needs no Integration or mapper and is not idempotent. Optional externalAssociation claims an exact Integration/externalId key atomically with the Person. It requires this token's ID in the Integration's properties.personRegistration.projectAccessTokenIds allowlist. An occupied key returns 409 without updating the existing Person; use the separate by-external-id lookup to recover its current Person ID. No source payload is captured.