People & IdentityRetrieve a person

Retrieve a person

Fetch a single resolved person profile. personId may be either the canonical person id or a raw identity value (anonymous id, device id, email, user id, phone, or a Mythic Link Click ID iiid) — raw values are resolved to their canonical person.

Passing an iiid answers "who did this link click become?". The click's edge-captured UTMs and click IDs are also restored onto the person, so a click ID the browser stripped still reaches your ad destinations. Note an iiid is first-claim-wins and never triggers a merge — see the Identity guide.

If the id refers to a person that was merged away, the response follows the merged-into profile by default and includes resolved_from. Pass resolve_merged=false to instead receive a 410 with the merged_into_id so you can update your own records.

curl -X GET "https://mythic-analytics.gulp.workers.dev/client/v1/data/people/8f3c1e00-4a2b-4c9d-9e11-1a2b3c4d5e6f?location_id=acme-retail&resolve_merged=true" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
{
  "success": true,
  "data": {
    "id": "8f3c1e00-4a2b-4c9d-9e11-1a2b3c4d5e6f",
    "location_id": "acme-retail",
    "resolved_from": "1c9d2e00-7f3a-4b1c-8d22-9a8b7c6d5e4f",
    "properties": {},
    "identities": [
      {}
    ],
    "first_seen_at": "2024-12-25T10:00:00Z",
    "last_seen_at": "2024-12-25T10:00:00Z",
    "session_count": 10,
    "unique_sessions": 42,
    "unique_devices": 42,
    "first_geo_country_name": "John Doe",
    "first_browser": "example_string",
    "first_os": "example_string",
    "first_device_type": "example_string"
  }
}
GET
/people/{personId}
GET
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

Agency key as bearer token. Format: Bearer ak_.... Must name a location via the location_id query parameter or X-Location-Id header. Scoped keys (mcp_) are accepted too and need people:read. See Using an mcp_ key over HTTP.

Agency key as bearer token. Format: Bearer ak_.... Must name a location via the location_id query parameter or X-Location-Id header. Scoped keys (mcp_) are accepted too and need people:read. See Using an mcp_ key over HTTP.
Bearer Token
Bearer Tokenstring
Required

Location secret key as bearer token. Format: Bearer sk_.... Resolves its own location — no location_id needed.

Location secret key as bearer token. Format: Bearer sk_.... Resolves its own location — no location_id needed.
path
personIdstring
Required

Canonical person id, or any raw identity value linked to the person (anonymous id, device id, email, or user id).

query
location_idstring

Required for agency (ak_) keys. Ignored for secret (sk_) keys, which resolve their own location. May also be supplied via the X-Location-Id header.

query
resolve_mergedstring

When a person was merged away, true (default) returns the canonical merged-into profile. Set to false to receive 410 person_merged with merged_into_id instead.

Options: true, false
Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. Agency key as bearer token. Format: Bearer ak_.... Must name a location via the location_id query parameter or X-Location-Id header. Scoped keys (mcp_) are accepted too and need people:read. See Using an mcp_ key over HTTP.

header
Authorizationstring
Required

Bearer token. Location secret key as bearer token. Format: Bearer sk_.... Resolves its own location — no location_id needed.

Path Parameters

personIdstring
Required

Canonical person id, or any raw identity value linked to the person (anonymous id, device id, email, or user id).

Example:
8f3c1e00-4a2b-4c9d-9e11-1a2b3c4d5e6f

Query Parameters

location_idstring

Required for agency (ak_) keys. Ignored for secret (sk_) keys, which resolve their own location. May also be supplied via the X-Location-Id header.

Example:
acme-retail
resolve_mergedstring

When a person was merged away, true (default) returns the canonical merged-into profile. Set to false to receive 410 person_merged with merged_into_id instead.

Allowed values:truefalse

Responses

successboolean
dataobject