Skip to content

Update channels

BetaAPI v2 is in public beta: endpoints, fields and behaviour can change before general availability. See the changelog

PATCH
/back_in_stock/settings/channels
curl --request PATCH \
--url https://app.stoqapp.com/api/v2/external/back_in_stock/settings/channels \
--header 'Content-Type: application/json' \
--header 'X-Auth-Token: <X-Auth-Token>' \
--data '{ "channels": { "email": { "enabled": true }, "sms": { "enabled": true }, "push": { "enabled": false } } }'

Update back-in-stock notification channel toggles, and the master switch for automatic back-in-stock alerts.

Note: Channel toggles are set via this PATCH: email.enabled, sms.enabled, push.enabled — e.g. { sms: { enabled: true } }. alerts_enabled false stops automatic back-in-stock alerts on every channel, whatever the channel switches say. Enabling SMS for the first time triggers a restricted-content verification check; sends may be held until the shop is verified.

Media typeapplication/json
object
alerts_enabled
email
sms
push

Example

{
"channels": {
"email": {
"enabled": true
},
"sms": {
"enabled": true
},
"push": {
"enabled": false
}
}
}

Success — example response shown.

Media typeapplication/json
object

Example

{
"channels": {
"email": {
"enabled": true
},
"sms": {
"enabled": true
},
"push": {
"enabled": false
}
},
"delivery": {
"batching": {
"enabled": false
},
"stock_threshold": 1,
"locations": {
"filter_enabled": false,
"location_ids": []
}
},
"compliance": {
"optin_required": false,
"optin_method": "single"
},
"tagging": {
"order_tags": {
"enabled": false,
"tags": []
}
},
"alerts": {
"scheduled_reports": {
"weekly": true,
"email": "merchant@example.com"
}
}
}

Accepted — async/bulk work was queued. Poll the returned job.

Media typeapplication/json

Returned for async/bulk work — poll the job until it reaches a terminal state.

object
job_id
string
status_url
string

Example

{
"job_id": "job_a1b2c3",
"status_url": "/api/v2/external/jobs/job_a1b2c3"
}

Missing or invalid X-Auth-Token.

Media typeapplication/json

Error envelope returned by every failed request.

object
errors
required
Array<string>

Example

{
"errors": [
"Unauthorized"
]
}

The request failed validation.

Media typeapplication/json

Error envelope returned by every failed request.

object
errors
required
Array<string>

Example

{
"errors": [
"name is required"
]
}

Rate limited — cost-weighted per token (read 1, write 2; 360 points / 60s). Check Retry-After.

Media typeapplication/json

Error envelope returned by every failed request.

object
errors
required
Array<string>

Example

{
"errors": [
"Rate limit exceeded"
]
}
Was this page helpful?

Still stuck? Ask Quinn or chat with support