Skip to main content
PUT
/
projects
/
{projectId}
/
identities
/
{typeName}
/
{externalId}
Upsert an identity
curl --request PUT \
  --url https://api.kansato.com/sdk/whistle/v1/projects/{projectId}/identities/{typeName}/{externalId} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "display": {
    "name": "<string>",
    "username": "<string>",
    "avatarUrl": "<string>"
  },
  "metadata": "<unknown>"
}
'
{
  "identity": {
    "id": "<string>",
    "externalId": "<string>",
    "projectId": "<string>",
    "type": "<string>",
    "name": "<string>",
    "username": "<string>",
    "avatarUrl": "<string>",
    "metadata": "<unknown>",
    "reportCount": 123,
    "lastSeenAt": "2023-11-07T05:31:56Z",
    "lastReportedAt": "2023-11-07T05:31:56Z",
    "displayName": "<string>",
    "handleLabel": "<string>",
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.kansato.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key with wh_ prefix. Send as Bearer token: Authorization: Bearer wh_xxxxxxxxxxxx

Path Parameters

projectId
string
required

Project UUID

typeName
string
required

Identity type (e.g. user)

externalId
string
required

External subject ID from your platform

Body

application/json
display
object
metadata
any

Arbitrary JSON metadata

Response

Identity upserted

identity
object
required