Delivery Access Token

Última atualização: 22 de junho de 2026

O DeliveryAccessToken é um token de leitura usado para ler conteúdo publicado a partir da CDA (entrega pública). Quando o navegador de um site ou aplicativo busca conteúdo publicado, ele chama a CDA com esse token. No momento da emissão, o token é vinculado a um único SpaceRole, e esse papel define o escopo de leitura do token (quais Content Type podem ser lidos).

Na CMA, o DeliveryAccessToken é um recurso subordinado ao Space, e seu caminho tem como base /spaces/{spaceId}/delivery-access-tokens. Como esse token opera exposto ao navegador (cliente), o papel vinculado deve ser definido com o menor privilégio possível (least-privilege), lendo apenas os Content Type necessários (consulte Segurança: vínculo de menor privilégio abaixo).

Estrutura do recurso

A seguir está a resposta obtida ao criar um DeliveryAccessToken. O sys (propriedades do sistema) contém o valor e o escopo do token, e o corpo contém name e description.

{
  "sys": {
    "id": "3trmXRM3RqbgSnifyg7PUFQuOAqWOc",
    "type": "DeliveryAccessToken",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "createdBy": { "sys": { "id": "3trmXRM3RqbgSnifyg7PUFQsSPi0nt", "type": "Refer", "targetType": "User" } },
    "createdAt": "2026-06-18T09:24:23.156Z",
    "updatedBy": { "sys": { "id": "3trmXRM3RqbgSnifyg7PUFQsSPi0nt", "type": "Refer", "targetType": "User" } },
    "updatedAt": "2026-06-18T09:24:23.156Z",
    "accessToken": "DVRATbQ8mX2vK9pLs7Rf1Zt0Nc4Wd6Hg5Ua2Ee9Ck3PoYx8Bj6Hg5Ua2Ee9Ck3Po…",
    "scopes": ["DELIVERY"]
  },
  "description": "Token de entrega somente leitura para o site público da loja de roupas",
  "name": "Entrega pública do site"
}

Chaves principais:

  • sys.id: identificador único do DeliveryAccessToken. Entra em {deliveryAccessTokenId} nos caminhos de consulta, atualização e exclusão individuais.
  • sys.accessToken: valor secreto do token usado nas chamadas à CDA. Como o mesmo valor aparece também nas consultas após a emissão, é preciso ter cuidado com a exposição (consulte a seção de segurança abaixo).
  • sys.scopes: escopo de permissões do token. O DeliveryAccessToken é sempre ["DELIVERY"] no momento da emissão.
  • name: nome do token definido na criação (por exemplo, Entrega pública do site).
  • description: descrição do token (opcional).

O accessToken do exemplo acima foi substituído por uma string de exemplo por ser um valor secreto. Na prática é uma string longa e opaca, e o mesmo valor aparece mesmo quando o token é consultado novamente após a emissão.

Propriedades do sistema (sys)

Todo DeliveryAccessToken mantém as propriedades comuns do sistema e as propriedades próprias do token no objeto sys. space, createdBy e updatedBy entram no formato Refer ({ "sys": { "id", "type": "Refer", "targetType" } }).

PropriedadeTipoDescrição
idstringIdentificador único do recurso.
typestringTipo do recurso. Para o DeliveryAccessToken é sempre "DeliveryAccessToken".
spaceRefer<Space>O Space ao qual este token pertence.
createdByRefer<User>Usuário que criou o recurso.
createdAtstring (date-time)Data e hora da criação.
updatedByRefer<User>Usuário que fez a última atualização.
updatedAtstring (date-time)Data e hora da última atualização.
accessTokenstringValor secreto do token usado nas chamadas à CDA. Como aparece igual também nas consultas após a emissão, deve ser tratado de modo a não ser exposto externamente.
scopesstring arrayEscopo de permissões do token. Para o DeliveryAccessToken é sempre ["DELIVERY"].

Propriedades do corpo:

PropriedadeTipoDescrição
namestring (1~64)Nome do token. Definido na criação.
descriptionstring (≤128)Descrição do token. Opcional.

Segurança: vínculo de menor privilégio

O DeliveryAccessToken é um token que chama a CDA exposto ao navegador e aos visitantes. Por isso, o SpaceRole ao qual ele é vinculado se torna o limite de segurança deste token.

  • No campo role da requisição de criação, coloque o sys.id de um SpaceRole de menor privilégio que leia apenas os Content Type necessários. Para a entrega pública, recomenda-se um papel somente de leitura.
  • Nunca vincule o papel Administrator. Como este token é exposto ao cliente, vincular um papel com permissões administrativas faz com que essas permissões vazem diretamente para fora. Além disso, não use por descuido o primeiro item da lista de SpaceRole; especifique explicitamente o sys.id do papel de menor privilégio pretendido.
  • O accessToken é um valor secreto que continua sendo consultado com o mesmo valor após a emissão. Injete-o com segurança no build do cliente, mas não o exponha diretamente para fora.

(Fonte: skill e regra weegloo-delivery-access-token.)

API

A URL base de todos os endpoints abaixo é https://cma.weegloo.com/v1, e o cabeçalho Authorization precisa de um token Bearer que autentique na CMA. A atualização e a atualização parcial do DeliveryAccessToken não exigem o cabeçalho X-Weegloo-Version.