REST APIGET

Espaços de trabalho

Liste os espaços de trabalho em que uma chave de API ou um login OAuth pode agir, com o papel e as possibilidades em cada um, e escolha um por requisição com o cabeçalho X-Workspace-Id.

GEThttps://post.adaptlypost.com/post/api/v1/workspaces

Lista os espaços de trabalho em que a chave ou o login OAuth que chama pode agir, com o seu papel e o que você pode fazer em cada um. Qualquer chave válida pode chamá-lo, seja qual for o papel.

Chave API (Bearer token)
Permissão:qualquer chave válidaPapéis e permissões

Quando chamar

Chame quando uma integração iniciar, antes de ler ou gravar qualquer coisa. Uma conexão OAuth, como o conector do Claude ou do ChatGPT, alcança todos os espaços de trabalho de que o membro faz parte, em todas as organizações. Uma chave de API alcança apenas o próprio espaço de trabalho, então a lista tem uma entrada.

Se você é um agente: quando a lista tiver mais de um espaço de trabalho e o usuário não tiver indicado nenhum, pergunte qual usar. Depois envie o id dele em X-Workspace-Id em toda chamada, e leia o can dele antes de oferecer agendar ou publicar.

Campos da resposta

CampoDescrição
idO ID do espaço de trabalho. Envie no cabeçalho X-Workspace-Id para agir neste espaço de trabalho.
nameO nome do espaço de trabalho.
organizationA organização dona do espaço de trabalho, com id e name.
roleO seu papel neste espaço de trabalho: key é admin, editor, contributor ou viewer; name é o rótulo no seu idioma. Para uma chave de API, o papel da chave.
isDefaultTrue para o espaço de trabalho em que cai uma chamada sem o cabeçalho X-Workspace-Id.
currentTrue para o espaço de trabalho em que esta chamada caiu.
canTrês booleanos, draft, schedule e publish, para o que o seu papel permite fazer com publicações neste espaço de trabalho.

Escolher um espaço de trabalho com X-Workspace-Id

Todo endpoint aceita o cabeçalho opcional X-Workspace-Id. Defina-o com um id desta lista e a chamada roda nesse espaço de trabalho, com o seu papel nele. Sem ele, a chamada cai no espaço de trabalho padrão.

Cabeçalho da requisição
X-Workspace-Id: ag_02k7m

Um espaço de trabalho que quem chama não alcança responde 403 com code workspace_access_denied e o workspaceId recusado. Uma chave de API pertence a um único espaço de trabalho, então recebe o mesmo 403 com o id de qualquer outro: envie o id do próprio espaço de trabalho da chave ou omita o cabeçalho.

403 Proibido: acesso ao espaço de trabalho negado
{
  "statusCode": 403,
  "error": "Forbidden",
  "code": "workspace_access_denied",
  "workspaceId": "ag_03p4r",
  "message": "You have no access to workspace ag_03p4r. Call GET /workspaces to list the workspaces you can use, and send one of those ids in the X-Workspace-Id header."
}
Listar seus espaços de trabalho
curl --request GET \
  --url https://post.adaptlypost.com/post/api/v1/workspaces \
  --header 'Authorization: Bearer <api-key>'
Agir em outro espaço de trabalho
curl --request GET \
  --url https://post.adaptlypost.com/post/api/v1/social-accounts \
  --header 'Authorization: Bearer <oauth-token>' \
  --header 'X-Workspace-Id: ag_02k7m'
200
{
  "workspaces": [
    {
      "id": "ag_01j9x",
      "name": "Acme",
      "organization": { "id": "org_01hzq", "name": "Acme Agency" },
      "role": { "key": "editor", "name": "Editor" },
      "isDefault": true,
      "current": true,
      "can": { "draft": true, "schedule": true, "publish": true }
    },
    {
      "id": "ag_02k7m",
      "name": "Client B",
      "organization": { "id": "org_02abc", "name": "Client B Inc" },
      "role": { "key": "contributor", "name": "Contributor" },
      "isDefault": false,
      "current": false,
      "can": { "draft": true, "schedule": false, "publish": false }
    }
  ]
}