const { result, error } = await unkey.identities.get({
  externalId: "user_123",
});

if (error) {
  // handle potential network or bad request error
  // a link to our docs will be in the `error.docs` field
  console.error(error.message);
  return;
}

console.log(result);
{
  "result": {
    "id": "id_123",
    "externalId": "user_123",
    "meta": {},
    "ratelimits": [
      {
        "name": "tokens",
        "limit": 10,
        "duration": 1000
      }
    ]
  }
}
const { result, error } = await unkey.identities.get({
  externalId: "user_123",
});

if (error) {
  // handle potential network or bad request error
  // a link to our docs will be in the `error.docs` field
  console.error(error.message);
  return;
}

console.log(result);
{
  "result": {
    "id": "id_123",
    "externalId": "user_123",
    "meta": {},
    "ratelimits": [
      {
        "name": "tokens",
        "limit": 10,
        "duration": 1000
      }
    ]
  }
}

Request

externalId
string
required
The externalId of the identity to fetch, use either identityId or externalId, if both are provided, identityId takes precedence.
identityId
string
required
The id of the identity to fetch, use either identityId or externalId, if both are provided, identityId takes precedence.

Response

id
string
required
The id of the identity. Used internally, you do not need to store this. Example: "id_123"
externalId
string
required
The id in your system
meta
object
This is a place for dynamic meta data, anything that feels useful for you should go hereExample:
{
  "billingTier": "PRO",
  "trialEnds": "2023-06-16T17:16:37.161Z"
}
ratelimits
object[]
Attach ratelimits to this identity.When verifying keys, you can specify which limits you want to use and all keys attached to this identity, will share the limits.