Translations for Order Statuses (Beta)

The Translations Admin GraphQL API is currently available on Catalyst storefronts only.

The following entities are translatable for order statuses:

  • Label as label

Order status IDs are predefined and static (0–14). Merchants can only change the status name. See the Order Status REST API for the full list of statuses and their IDs.

Resource fields

Entity TyperesourceTyperesourceId Format
Order StatusORDER_STATUSESbc/store/orderStatus/{status_id}

Examples

Below are examples of GraphQL queries and mutations for retrieving and managing translation settings for order statuses.

Query a List of Translations

This query returns up to 2 order status translations for the specified resource type, channel, and locale.

The request below uses several variables for reusability. Replace {{channel_id}} and {{locale_code}} with the appropriate values for your use case.

Example query: Query a list of translations
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}
query {
store {
translations(
filters: {
resourceType: ORDER_STATUSES
channelId: "bc/store/channel/{{channel_id}}"
localeId: "bc/store/locale/{{locale_code}}"
}
first: 2
) {
edges {
node {
resourceId
fields {
fieldName
original
translation
}
}
cursor
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
}
}
}

Query a Translation by Resource ID

This query returns translation(s) by resourceId.

The request below uses several variables for reusability. Replace {{resourceId}}, {{channel_id}}, and {{locale_code}} with appropriate values for your use case. Make sure resourceId follows the format from the Resource fields table.

Example query: Query a translation by id
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}
query {
store {
translations(
filters: {
resourceType: ORDER_STATUSES
channelId: "bc/store/channel/{{channel_id}}"
localeId: "bc/store/locale/{{locale_code}}"
resourceIds: ["{{resourceId}}"]
}
) {
edges {
node {
resourceId
fields {
fieldName
original
translation
}
}
cursor
}
}
}
}

Update a Translation

This mutation updates translated values for order statuses for a specific channel and locale.

Example mutation: Update a translation
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}
mutation {
translation {
updateTranslations(
input: {
resourceType: ORDER_STATUSES,
channelId: "bc/store/channel/{{channel_id}}",
localeId: "bc/store/locale/{{locale_code}}",
entities: [
{
resourceId: "bc/store/orderStatus/0",
fields: [
{ fieldName: "label", value: "Incomplete (FR)" }
]
},
{
resourceId: "bc/store/orderStatus/1",
fields: [
{ fieldName: "label", value: "Pending (FR)" }
]
}
]
}
) {
__typename
errors {
__typename
... on ValidationError {
message
}
... on EntityNotFoundError {
id
message
}
... on InvalidTranslationEntityFieldsError {
id
message
fields
}
}
}
}
}

Delete a Translation

The following mutation removes translated values for specified order status fields, reverting them to the original values for a specific channel and locale.

Example mutation: Delete a translation
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}
mutation {
translation {
deleteTranslations(
input: {
resourceType: ORDER_STATUSES,
channelId: "bc/store/channel/{{channel_id}}",
localeId: "bc/store/locale/{{locale_code}}",
resources: [
{
resourceId: "bc/store/orderStatus/0",
fields: ["label"]
},
{
resourceId: "bc/store/orderStatus/1",
fields: ["label"]
}
]
}
) {
__typename
errors {
__typename
... on ValidationError {
message
}
... on EntityNotFoundError {
id
message
}
... on InvalidTranslationEntityFieldsError {
id
message
fields
}
}
}
}
}