Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/store-operations/translations/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ The API currently supports translations for the following resource types, and mo
* Brands
* [Product Filters](/docs/store-operations/translations/filters)
* [Locations](/docs/store-operations/translations/locations)
* [Shipping Methods](/docs/store-operations/translations/shipping-methods)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [remark-lint] reported by reviewdog 🐶
Link to /docs/store-operations/translations/shipping-methods is dead no-dead-urls remark-lint

* [Tax Rates](/docs/store-operations/translations/tax-rates)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [remark-lint] reported by reviewdog 🐶
Link to /docs/store-operations/translations/tax-rates is dead no-dead-urls remark-lint


Refer to the [Error Handling](/docs/store-operations/translations/errors) guide for understanding and handling errors while managing translations.

Expand Down Expand Up @@ -74,4 +76,6 @@ For more information on OAuth Scopes, see our [Guide to API Accounts](/docs/star
- [Product Listing Page Translations](/docs/store-operations/translations/listings)
- [Product Filter Translations](/docs/store-operations/translations/filters)
- [Inventory Locations Translations](/docs/store-operations/translations/locations)
- [Shipping Methods Translations](/docs/store-operations/translations/shipping-methods)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [remark-lint] reported by reviewdog 🐶
Link to /docs/store-operations/translations/shipping-methods is dead no-dead-urls remark-lint

- [Tax Rates Translations](/docs/store-operations/translations/tax-rates)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [remark-lint] reported by reviewdog 🐶
Link to /docs/store-operations/translations/tax-rates is dead no-dead-urls remark-lint

- [Error Handling Reference](/docs/store-operations/translations/errors)
291 changes: 291 additions & 0 deletions docs/store-operations/translations/shipping-methods.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,291 @@
# Translations for Shipping Methods (Beta)

<Callout type='info'>
The Translations Admin GraphQL API is currently available on Catalyst
storefronts only.
</Callout>

The following entities are translatable for shipping methods:

- Shipping Method Name as `shipping_method_name`

## Resource fields

| Entity Type | `resourceType` | `resourceId` Format |
| ------------------ | ------------------ | ---------------------------------------- |
| Shipping Method | `SHIPPING_METHODS` | `bc/store/shippingMethod/{id}` |

## Examples

Below are examples of GraphQL queries and mutations for retrieving and managing translation settings for shipping methods.

### Query a List of Translations

This query returns shipping method translations for the specified resource type, channel, and locale (up to 50).

<Tabs items={['Request', 'Response']}>
<Tab>

```graphql filename="Example query: Query a list of translations" showLineNumbers copy
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}

query {
store {
translations(filters: {
resourceType: SHIPPING_METHODS,
channelId: "bc/store/channel/{{channel_id}}",
localeId: "bc/store/locale/{{locale_code}}"
}) {
edges {
node {
resourceId
fields {
fieldName
original
translation
}
}
cursor
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
}
}
}
```

</Tab>
<Tab>

```json filename="Example query: Query a list of translations" showLineNumbers copy
{
"data": {
"store": {
"translations": {
"edges": [
{
"node": {
"resourceId": "bc/store/shippingMethod/1",
"fields": [
{
"fieldName": "shipping_method_name",
"original": "Dev Test 1",
"translation": "espanol"
}
]
},
"cursor": ""
}
],
"pageInfo": {
"hasNextPage": false,
"hasPreviousPage": false,
"startCursor": "eyJyZXNvdXJjZUlkIjoxfQ",
"endCursor": "eyJyZXNvdXJjZUlkIjoxfQ"
}
}
}
}
}
```

</Tab>
</Tabs>

### Query a Translation by Resource ID

This query returns a translation by `resourceId`.

<Callout type='info'>
When querying by `resourceId`, provide the full ID in the format `bc/store/shippingMethod/{id}`.
</Callout>

<Tabs items={['Request', 'Response']}>
<Tab>

```graphql filename="Example query: Query a translation by id" showLineNumbers copy
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}

query {
store {
translations(
filters: {
resourceType: SHIPPING_METHODS
channelId: "bc/store/channel/{{channel_id}}"
localeId: "bc/store/locale/{{locale_code}}"
resourceIds: ["bc/store/shippingMethod/1"]
}
) {
edges {
node {
resourceId
fields {
fieldName
original
translation
}
}
cursor
}
}
}
}
```

</Tab>
<Tab>

```json filename="Example query: Query a translation by id" showLineNumbers copy
{
"data": {
"store": {
"translations": {
"edges": [
{
"node": {
"resourceId": "bc/store/shippingMethod/1",
"fields": [
{
"fieldName": "shipping_method_name",
"original": "Dev Test 1",
"translation": "espanol"
}
]
},
"cursor": ""
}
]
}
}
}
}
```

</Tab>
</Tabs>

### Update a Translation

<Tabs items={['Request', 'Response']}>
<Tab>

```graphql filename="Example mutation: Update a translation" showLineNumbers copy
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}

mutation {
translation {
updateTranslations(input: {
resourceType: SHIPPING_METHODS,
channelId: "bc/store/channel/{{channel_id}}",
localeId: "bc/store/locale/{{locale_code}}",
entities: [
{
resourceId: "bc/store/shippingMethod/1",
fields: [
{
fieldName: "shipping_method_name",
value: "Nuevo Nombre de Envío"
}
]
}
]
}) {
errors {
__typename
... on Error {
message
}
... on EntityNotFoundError {
message
}
... on ValidationError {
message
}
}
}
}
}
```

</Tab>
<Tab>

```json filename="Example mutation: Update a translation" showLineNumbers copy
{
"data": {
"translation": {
"updateTranslations": {
"errors": []
}
}
}
}
```

</Tab>
</Tabs>

### Delete a Translation

<Tabs items={['Request', 'Response']}>
<Tab>

```graphql filename="Example mutation: Delete a translation" showLineNumbers copy
GRAPHQL https://api.bigcommerce.com/stores/{{store_hash}}/graphql
X-Auth-Token: {{token}}

mutation {
translation {
deleteTranslations(input: {
resourceType: SHIPPING_METHODS,
channelId: "bc/store/channel/{{channel_id}}",
localeId: "bc/store/locale/{{locale_code}}",
resources: [
{
resourceId: "bc/store/shippingMethod/1",
fields: ["shipping_method_name"]
}
]
}) {
errors {
__typename
... on Error {
message
}
... on EntityNotFoundError {
message
}
... on ValidationError {
message
}
}
}
}
}
```

</Tab>
<Tab>

```json filename="Example mutation: Delete a translation" showLineNumbers copy
{
"data": {
"translation": {
"deleteTranslations": {
"errors": []
}
}
}
}
```

</Tab>
</Tabs>

Loading