[GET] Setting
[GET] Settings
* Authentication
Required Authorization
Limit throttle:60,1
Endpoint GET - /shop-api/settings
Read-only. Store settings can only be read through the Shop API; they are changed in the app admin.
Headers
| Header | Required | Description |
|---|---|---|
Authorization |
Yes | Shop public API key Bearer token |
Content-Type |
Yes | application/json |
Scopes
Any valid API token can call this endpoint. Which groups are returned depends on the token scopes; a group the token cannot read is omitted from the response.
| Group | Required scope |
|---|---|
timezone, date_format, translation |
None (any valid token) |
preorder |
read_preorders (or write_preorders) |
coming_soon |
read_coming_soon (or write_coming_soon) |
1. Request Payload
No parameters, no JSON body.
Example
GET /shop-api/settingsAuthorization: Bearer token ************2. Success Response 200
Token with read_preorders and read_coming_soon (translation is truncated in this example):
{ "success": true, "data": { "timezone": "America/New_York", "date_format": "MMM DD, YYYY", "translation": { "default": { "preorderText": "Pre Order", "messageAboveText": "Don't miss out - Grab yours now before we sell out again!", "messageBellowText": "We will fulfill the item as soon as it becomes available", "preorderBadge": "Pre Order", "preorderLabel": "Pre-order", "comingSoonAddToCartText": "Coming soon", "partialPaymentLabel": "Payment option", "partialPaymentReleased": "You will be charged the remaining balance when the product is released on {{ released }}" }, "fr": { "preorderText": "Précommander", "preorderBadge": "Précommande" } }, "preorder": { "use_selling_plan": true, "hide_buy_now_button": true, "required_continue_selling": false, "show_preorder_badge": true, "show_preorder_label": true, "show_payment_option_on_collection": true, "show_messages_on_collection": false }, "coming_soon": { "show_coming_soon_badge": false, "show_messages_on_collection": false } }}3. Response Keys & Fields
Top-level
| Key | Type | Description |
|---|---|---|
success |
boolean | true on success |
data |
object | Store settings object |
data settings object
| Field | Type | Description |
|---|---|---|
timezone |
string | Store IANA timezone, e.g. America/New_York. Offers created through the Shop API use this timezone for start_date / end_date |
date_format |
string | Date display format set in the app, using Moment.js-style tokens, e.g. MMM DD, YYYY, DD/MM/YYYY. Defaults to MMM DD, YYYY |
translation |
object | Storefront texts per locale. See translation below |
preorder |
object | Pre-order settings. Only with read_preorders scope |
coming_soon |
object | Coming soon settings. Only with read_coming_soon scope |
preorder
| Field | Type | Description |
|---|---|---|
use_selling_plan |
boolean | Pre-order model of the store: true = Shopify selling plan model, false = Legacy model |
hide_buy_now_button |
boolean | Hide the “Buy now” button for pre-order products (product page and quick-view window) |
required_continue_selling |
boolean | Only show pre-order when the product has “Continue selling when out of stock” enabled |
show_preorder_badge |
boolean | Show the pre-order badge on product lists. Always false when the current plan does not include the badge |
show_preorder_label |
boolean | Show the pre-order label |
show_payment_option_on_collection |
boolean | Show the payment option(s) (full / partial payment) on collection pages |
show_messages_on_collection |
boolean | Show the promotional message and fulfillment note (messages above / below the button) on collection pages |
coming_soon
| Field | Type | Description |
|---|---|---|
show_coming_soon_badge |
boolean | Show the coming soon badge on product lists |
show_messages_on_collection |
boolean | Show the coming soon messages above / below the button on collection pages |
translation
| Key | Type | Description |
|---|---|---|
default |
object | Texts of the store’s default language. Always present; keys the store never customized are filled with the app defaults |
<locale> |
object | Texts for another language, keyed by locale code (e.g. fr). May contain only the translated keys — fall back to default for missing keys |
Texts may contain HTML and placeholders such as :stock, :max, {{product.title}}, {{variant.title}}, {{ released }}.
Translation keys (more keys may be added over time):
| Group | Keys |
|---|---|
| Pre-order button & messages | preorderText, messageAboveText, messageBellowText, naMessageText, soldoutText, comingSoonText, preorderLimitMessage, outOfStockMessage, preorderLabel |
| Countdown | labelCountdownStart, labelCountdownEnd, labelCountdownComingsoon, labelCountdownDays, labelCountdownHours, labelCountdownMinutes, labelCountdownSeconds |
| Coming soon | comingSoonAddToCartText, messageComingSoonAboveText, messageComingSoonBellowText |
| Badges | preorderBadge, comingSoonPreorderBadge, comingSoonAtcBadge |
| Payment | partialPaymentLabel, partialPaymentOptionFull, partialPaymentOptionPart, preorderPrice, partialPaymentTitle, partialPaymentReleased, partialPaymentSaveLavel |
| Cart | preorderedItemlabel, preorderContactLink, cartWarningTitle, cartWarningContent, cartWarningCheckboxLabel, cartWarningLimitMessage, cartWarningEndLimitMessage, cartWarningAlertMessage |
| Back in stock | bisTextButton, bisTitleForm, bisHeaderContent, bisPlaceHolderEmail, bisSubscribeTextButton, bisFooterContent, bisSubscribeSuccess, bisSubscribeFail, bisSubscribeRegistered, bisSubscribeRequired, bisPhoneRegistered, bisEmailAlertTitle, bisSmsAlertTitle |
| Unsubscribe | unsubscribeTitle, unsubscribeButton, unsubscribeSuccess, unsubscribeProductUnsubscribed |
4. Failed Response
Missing token — 401
{"success": false,"message": "Missing API token"}Invalid or revoked token — 401
{"success": false,"message": "Invalid or revoked API token"}Too many requests — 429
Unexpected server error — HTTP 200
{"success": false,"message": "Something went wrong, please try again"}Was this helpful?
Thanks for your feedback! Tell us what was missing
Report an issue