List targeting attributes
Returns every auto-inferred targeting attribute in the project — the name and (when known) the value type — for building gate/experiment targeting rules.
Returns every auto-inferred targeting attribute in the project — the name and (when known) the value type — for building gate/experiment targeting rules.
Discover which user-context keys are available before authoring a targeting rule, instead of guessing attribute names.
Authorization
bearerSdkKey Pass an admin SDK key as Authorization: Bearer sdk_admin_…. Mint via POST /api/admin/keys with type: "admin".
In: header
Query Parameters
Case-insensitive substring filter across the resource's human-readable text columns (e.g. name, title, description). OR-matched across those columns; omit to return everything.
length <= 100Header Parameters
Project the request operates on. Optional — defaults to the project the SDK key belongs to; pass it only to scope a multi-project key (the generated client sets it once from its configuration, so per-call callers never thread it).
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://shipeasy.ai/api/admin/attributes"[
{
"id": "attr_01j7w8a1b2c3",
"name": "plan",
"type": "enum",
"enumValues": [
"free",
"paid"
],
"required": 1,
"description": "Billing plan of the calling user.",
"sdkPath": "user.plan",
"createdAt": "2026-06-20T09:14:08.000Z",
"source": "manual",
"lastSeenAt": "2026-07-16T22:04:11.000Z",
"deprecated": 0
},
{
"id": "attr_01j7w8a1b2c4",
"name": "country",
"type": "string",
"enumValues": null,
"required": 0,
"description": null,
"sdkPath": null,
"createdAt": "2026-06-20T09:14:08.000Z",
"source": "auto",
"lastSeenAt": "2026-07-16T22:04:11.000Z",
"deprecated": 0
}
]{
"error": "Malformed request (bad JSON, missing project scope).",
"code": "BAD_REQUEST"
}{
"error": "Missing or invalid admin SDK key.",
"code": "UNAUTHORIZED"
}{
"error": "Key is valid but not allowed to act on this project.",
"code": "FORBIDDEN"
}{
"error": "The resource does not exist or is not visible to the caller.",
"code": "NOT_FOUND"
}{
"error": "A resource with this name already exists in the project.",
"code": "ALREADY_EXISTS"
}{
"error": "The request body failed structural (schema) validation.",
"code": "VALIDATION"
}