Basker Docs

Bulk update custom attributes

Bulk set or unset configured custom attributes. Rate limit: 20 requests per minute per API key.

PATCH
/{version}/{tenant}/events/custom-attributes
Authorization<token>

Use format: users API-Key YOUR_API_KEY

In: header

Path Parameters

version*string

API version

Default"2026-02"
Value in"2026-02"
tenant*string

Tenant slug

Query Parameters

draft?boolean

When false or omitted, updates the latest published version and syncs only the targeted configured fields into the latest draft when one exists. When true, writes through Payload's draft API so live content is unchanged; if no newer draft exists, Payload creates a draft version from the current published document.

Defaultfalse

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X PATCH "https://api.basker.app/partners/2026-02/string/events/custom-attributes" \  -H "Content-Type: application/json" \  -d '{    "all": true  }'
{
  "dryRun": true,
  "versionTarget": "published",
  "matched": 0,
  "updated": 0,
  "wouldUpdate": 0,
  "unchanged": 0,
  "failed": 0,
  "draftSynced": 0,
  "draftWouldSync": 0,
  "draftSyncSkipped": 0,
  "draftSyncFailed": 0,
  "results": [
    {
      "id": "string",
      "status": "updated",
      "set": [
        "string"
      ],
      "unset": [
        "string"
      ],
      "draftSync": {
        "status": "updated",
        "set": [
          "string"
        ],
        "unset": [
          "string"
        ],
        "error": {
          "message": "string",
          "status": 0
        }
      },
      "error": {
        "message": "string",
        "status": 0
      }
    }
  ]
}
{
  "error": "string",
  "message": "string",
  "field": "string"
}
{
  "error": "string",
  "message": "string",
  "field": "string"
}
{
  "error": "Too Many Requests",
  "message": "Rate limit exceeded. Please retry later."
}