Targeting key

Schema, including its fields, nested structure, and relationships

Definition

A Targeting Key is a governed attribute definition that you can safely reference in variation-group targeting rules (e.g., release, country, isLoggedIn). Declaring keys centrally ensures consistent naming, types, and documentation across campaigns and SDKs.

Payload Properties

When creating or updating a targeting key, the payload can include:

  • id (String, optional) — Unique targeting key identifier. Include this only when updating an existing targeting key.

  • name (String, required) — Machine-readable key used in targeting.targetings[].key. Example: "release", "country", "targeting_key_created_with_resource_loader".

  • type (String, required) — Data type of the key. Common values: "string", "number", "boolean". Use the type your SDK will emit at runtime.

  • description (String, optional) — Human-friendly explanation of what the key represents and how it’s populated by your app/SDK.

Notes • Keep key names stable; changing them requires updating all targeting that references the key. • Use the most specific type possible to enable operator validation (e.g., numbers for numeric comparisons).

Example Project Payload:

{
  "type": "string",
  "name": "targeting_key_created_with_resource_loader",
  "description": "Loaded from resource loader"
}

Response Fields

When a Targeting Key is returned by the API/Resource Loader, you’ll receive its server-assigned ID and normalized definition:

  • id (String) — Unique targeting key identifier.

  • name (String) — Targeting key name used in rules.

  • type (String) — Data type (e.g., "string").

  • description (String) — Documentation for the key.

Example Response

{
  "description": "Loaded from resource loader",
  "id": "targeting_key",
  "name": "targeting_key_created_with_resource_loader",
  "type": "string"
}

Error Codes

  • InvalidPayload – Missing project name when creating a project, or other payload formatting issues.

  • PermissionDenied – User not allowed to create projects (if such permission is restricted).

Last updated

Was this helpful?