HTTP endpoints
resolvePlacement
GET /api/tracking/{key}/placements/{placementKey}
Uses the publishable tracking key in the path. Website requests need an allowed Origin. Native capture must be enabled on the key. No server key is sent.
HTTP
Use your backend's HTTP client. The cURL request shows the wire format. Replace path parameters and example values.
sh
curl --fail-with-body --request GET \
'https://app.grizzlee.ca/api/tracking/{key}/placements/{placementKey}' \
-H 'Origin: https://shop.example.com'Response
HTTP responses wrap this value in data. The SDK returns the value directly unless the note above describes a wrapper.
| Field | Type | Required | Details |
|---|---|---|---|
placement | string | Yes | |
programId | string | Yes | |
active | boolean | Yes | |
display | object | Yes | The program's public name, headline and milestone label. |
display
| Field | Type | Required | Details |
|---|---|---|---|
display.publicName | object | Yes | |
display.headline | object | Yes | |
display.milestoneLabel | union | Yes | Null for order programs. Forms by plural category, picked with Intl.PluralRules. few and many matter in Russian. A merchant's label sets one and other, and few and many reuse other. |
display.publicName
| Field | Type | Required | Details |
|---|---|---|---|
display.publicName.en | string | Yes | |
display.publicName.fr-CA | string | Yes | |
display.publicName.hy | string | Yes | |
display.publicName.ru | string | Yes |
display.headline
| Field | Type | Required | Details |
|---|---|---|---|
display.headline.en | string | Yes | |
display.headline.fr-CA | string | Yes | |
display.headline.hy | string | Yes | |
display.headline.ru | string | Yes |
display.milestoneLabel
Variant 1
Type: null.
Variant 2
| Field | Type | Required | Details |
|---|---|---|---|
display.milestoneLabel.one | object | Yes | |
display.milestoneLabel.few | object | Yes | |
display.milestoneLabel.many | object | Yes | |
display.milestoneLabel.other | object | Yes |
display.milestoneLabel.one
| Field | Type | Required | Details |
|---|---|---|---|
display.milestoneLabel.one.en | string | Yes | |
display.milestoneLabel.one.fr-CA | string | Yes | |
display.milestoneLabel.one.hy | string | Yes | |
display.milestoneLabel.one.ru | string | Yes |
display.milestoneLabel.few
| Field | Type | Required | Details |
|---|---|---|---|
display.milestoneLabel.few.en | string | Yes | |
display.milestoneLabel.few.fr-CA | string | Yes | |
display.milestoneLabel.few.hy | string | Yes | |
display.milestoneLabel.few.ru | string | Yes |
display.milestoneLabel.many
| Field | Type | Required | Details |
|---|---|---|---|
display.milestoneLabel.many.en | string | Yes | |
display.milestoneLabel.many.fr-CA | string | Yes | |
display.milestoneLabel.many.hy | string | Yes | |
display.milestoneLabel.many.ru | string | Yes |
display.milestoneLabel.other
| Field | Type | Required | Details |
|---|---|---|---|
display.milestoneLabel.other.en | string | Yes | |
display.milestoneLabel.other.fr-CA | string | Yes | |
display.milestoneLabel.other.hy | string | Yes | |
display.milestoneLabel.other.ru | string | Yes |
Response schema
json
{
"type": "object",
"properties": {
"placement": {
"type": "string"
},
"programId": {
"type": "string"
},
"active": {
"type": "boolean"
},
"display": {
"type": "object",
"properties": {
"publicName": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
},
"headline": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
},
"milestoneLabel": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"one": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
},
"few": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
},
"many": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
},
"other": {
"type": "object",
"properties": {
"en": {
"type": "string"
},
"fr-CA": {
"type": "string"
},
"hy": {
"type": "string"
},
"ru": {
"type": "string"
}
},
"required": [
"en",
"fr-CA",
"hy",
"ru"
]
}
},
"required": [
"one",
"few",
"many",
"other"
]
}
],
"description": "Null for order programs. Forms by plural category, picked with Intl.PluralRules. few and\nmany matter in Russian. A merchant's label sets one and other, and few and many reuse other."
}
},
"required": [
"publicName",
"headline",
"milestoneLabel"
],
"description": "The program's public name, headline and milestone label."
}
},
"required": [
"placement",
"programId",
"active",
"display"
]
}Errors
Failures return { "error": { "code": "...", "message": "...", "details": {} } }. Details are optional. See error statuses. Reuse an unchanged event payload when retrying.