documentLink

A mutation DocumentLink vincula um document existente a um carrinho aberto ou a um produto do carrinho. Quando o pedido é finalizado, o vínculo passa para o pedido ou para o produto do pedido.

Vincular um document que já está vinculado não muda nada e não conta para o limite de documents vinculados. Veja as regras completas em Vínculo com carrinho e pedido.

Parâmetros

ArgumentoTipoObrigatórioDescrição
idString!SimIdentificador do document, em hash, como retornado por documentCreate, document ou documents
checkoutIdUuid!SimCarrinho aberto ao qual vincular o document
productVariantIdLongNãoProduto do carrinho ao qual vincular o document. Sem ele, o vínculo é com o carrinho
customerAccessTokenStringNãoToken de acesso do cliente, como nas demais mutations de carrinho. Os campos do carrinho retornado que dependem do cliente usam esse token
recaptchaTokenStringNãoToken do Google reCAPTCHA. Obrigatório quando a loja exige reCAPTCHA para esta mutation

Campos de retorno

A mutation retorna o carrinho (Checkout) já atualizado. Os documents vinculados aparecem em documentIds, no carrinho e em cada produto. Os demais campos são os da query Checkout.

CampoTipoDescrição
checkoutIdUuidIdentificador do carrinho
documentIds[String!]!Ids (hash) dos documents vinculados ao carrinho
products.productVariantIdLongProduto do carrinho
products.documentIds[String!]!Ids (hash) dos documents vinculados ao produto

Exemplo

O document já vinculado ao produto 354891 passa a ser vinculado também ao produto 354968:

mutation {
  documentLink(
    id: "eyJFbnRpdHkiOiJEb2N1bWVudFZhbHVlIiwiSWQiOjQ1MDF9"
    checkoutId: "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    productVariantId: 354968
  ) {
    checkoutId
    documentIds
    products {
      productVariantId
      documentIds
    }
  }
}
Mostrar resposta
{
  "data": {
    "documentLink": {
      "checkoutId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "documentIds": [],
      "products": [
        {
          "productVariantId": 354891,
          "documentIds": ["eyJFbnRpdHkiOiJEb2N1bWVudFZhbHVlIiwiSWQiOjQ1MDF9"]
        },
        {
          "productVariantId": 354968,
          "documentIds": ["eyJFbnRpdHkiOiJEb2N1bWVudFZhbHVlIiwiSWQiOjQ1MDF9"]
        }
      ]
    }
  }
}
📘

O documentLink aceita documents de entidades sem READ público: ele apenas confirma que o document existe e não devolve o conteúdo. Também é o caminho para refazer o vínculo quando o documentCreate retorna WDC113.

🚧

O vínculo só pode ser feito com o carrinho aberto. Não é possível vincular documents a um pedido já finalizado — para anexar um arquivo depois da compra, crie o document vinculado antes de finalizar o pedido e atualize-o com documentUpdate.

Códigos de erro

CódigoMensagemDescrição
WDC104Documento ou entidade não encontradoO document informado não existe
WDC110Não é possível vincular ou desvincular documentos de um carrinho finalizadoO carrinho já virou pedido
WDC111O produto não está no carrinhoO productVariantId informado não está no carrinho
WDC114Limite de documentos vinculados atingidoO carrinho, ou o produto, já tem 5 documents vinculados
WDC115O id do documento não é suportado pelo vínculoO id do document não pode ser usado no vínculo
REC104Token recaptcha é obrigatórioA loja exige reCAPTCHA para esta mutation e o recaptchaToken não foi informado