Svit.One Docs
Reference

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.

POST/v1/external/people/{personId}/external-identities

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.

Authorization

projectAccessToken
AuthorizationBearer <token>

Server-to-server Project Access Token. Requests operate in the token's Project.

In: header

Path Parameters

personId*string
Length1 <= length <= 16

Request 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"
}
Empty
Empty
Empty
Empty
Empty