Skip to main content
POST
cURL

Authorizations

Authorization
string
header
required

Paste your API key as the CMS showed it: fsk_<site>_<key id>_<secret> (issued under API Keys). ApiKey in front of it works too. Leave it empty to read as the public.

Scopes

conversions:write

Headers

X-Fetchski-Timestamp
string

Required for API keys. The Unix time in seconds when the request was signed; it must be within 5 minutes of the server clock.

Pattern: ^[0-9]{9,11}$
X-Fetchski-Signature
string

Required for API keys. v1= + the lower-case hex HMAC-SHA256, keyed with the API key’s signing secret (fss_…, shown once when the key is created or rotated), of <timestamp>.<METHOD>.<path including query>.<raw request body> — e.g. 1790000000.POST./api/v1/conversion-event/external.{"eventId":…}. Several comma-separated v1= values are accepted.

Pattern: ^v1=[0-9a-f]{64}(,\s*v1=[0-9a-f]{64})*$

Path Parameters

eventId
string
required

The event ID. Opaque, unique per site, stable. The CMS mints a UUID for events it originates; another system mints its own (e.g. tenant-42:order:1234:purchase). Forwarded unchanged to every ad platform as its de-duplication key.

Maximum string length: 128
Pattern: ^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$
Example:

"tenant-42:order:1234:purchase"

Body

application/json
adjustmentId
string
required

Minted by the caller; a retry sends the same ID. Re-using it with different content is a 409.

Maximum string length: 128
Pattern: ^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$
Example:

"tenant-42:order:1234:refund:1"

action
enum<string>
required

retract — it did not happen (full refund, cancellation); final. restate — a new value.

Available options:
retract,
restate
value
number

Required to restate.

Required range: x >= 0
currency
string

ISO 4217 code of value (restate only).

Pattern: ^[A-Z]{3}$
reason
string

Why, in your words (a refund, a cancellation).

Maximum string length: 500
occurredAt
string<date-time>

When the change happened. Defaults to now.

Response

The event after the adjustment.

applied
boolean
required

False when this adjustment ID was already applied.

event
object
required

One conversion occurrence. Fields the visitor’s consent did not allow are ABSENT, not empty. Never returned: the visitor’s IP address and user agent, outbox lease and retry bookkeeping.

Example: