Calcula opções de frete para o carrinho com base no CEP de destino.
CalculateShoppingCartTotalShippingMutationInput!
| Campo | Tipo | Descrição |
|---|---|---|
| hostname | String! | Hostname da loja. |
| zipCode | String! | CEP de destino (8 dígitos, ex: "01234567"). |
| Campo | Tipo | Descrição |
|---|---|---|
| shoppingCart | ShoppingCart | Carrinho com as opções de frete calculadas. |
mutation CalcShipping($input: CalculateShoppingCartTotalShippingMutationInput!) {
calculateShoppingCartTotalShipping(input: $input) {
shoppingCart {
totalShipping
shippingOptions {
type
name
price
deadline
}
}
}
} {
"input": {
"hostname": "minha-loja",
"zipCode": "01234567"
}
} {
"data": {
"calculateShoppingCartTotalShipping": {
"shoppingCart": {
"totalShipping": 1500,
"shippingOptions": [
{
"type": "SEDEX",
"name": "Sedex",
"price": 1500,
"deadline": 3
},
{
"type": "PAC",
"name": "PAC",
"price": 900,
"deadline": 7
}
]
}
}
}
} const response = await fetch('/graphql', {
method: 'POST',
credentials: 'include',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
query: `mutation($input: CalculateShippingInput!) {
calculateShipping(input: $input) {
shoppingCart { shippingOptions { type name price deadline } }
}
}`,
variables: { input: { hostname: "minha-loja", zipCode: "01001000" } }
})
}); curl -X POST https://minha-loja.com/graphql \
-H "Content-Type: application/json" \
-b "authJwtClient=YOUR_SESSION_COOKIE" \
-d '{"query":"mutation { calculateShipping(input: { hostname: \"minha-loja\", zipCode: \"01001000\" }) { shoppingCart { shippingOptions { name price deadline } } } }"}'