REST APIGET

Workspaces

Listen Sie die Workspaces auf, in denen ein API-Schlüssel oder eine OAuth-Anmeldung handeln kann, mit Rolle und Möglichkeiten in jedem, und wählen Sie pro Anfrage einen mit dem Header X-Workspace-Id.

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

Listet die Workspaces auf, in denen der aufrufende Schlüssel oder die OAuth-Anmeldung handeln kann, mit Ihrer Rolle und dem, was Sie in jedem tun können. Jeder gültige Schlüssel kann ihn aufrufen, unabhängig von seiner Rolle.

API-Schlüssel (Bearer-Token)
Berechtigung:jeder gültige SchlüsselRollen und Berechtigungen

Wann aufrufen

Rufen Sie ihn auf, wenn eine Integration startet, bevor sie etwas liest oder schreibt. Eine OAuth-Verbindung, etwa der Claude- oder ChatGPT-Connector, erreicht jeden Workspace, zu dem ihr Mitglied gehört, auch über Organisationen hinweg. Ein API-Schlüssel erreicht nur seinen eigenen Workspace, daher hat die Liste einen Eintrag.

Wenn Sie ein Agent sind: Enthält die Liste mehr als einen Workspace und hat der Nutzer keinen genannt, fragen Sie, welcher gemeint ist. Senden Sie dann dessen id bei jedem Aufruf in X-Workspace-Id und lesen Sie dessen can, bevor Sie anbieten zu planen oder zu veröffentlichen.

Antwortfelder

FeldBeschreibung
idDie ID des Workspace. Senden Sie sie im Header X-Workspace-Id, um in diesem Workspace zu handeln.
nameDer Name des Workspace.
organizationDie Organisation, der der Workspace gehört, mit id und name.
roleIhre Rolle in diesem Workspace: key ist admin, editor, contributor oder viewer; name ist die Bezeichnung in Ihrer Sprache. Bei einem API-Schlüssel die Rolle des Schlüssels.
isDefaultTrue für den Workspace, in dem ein Aufruf ohne Header X-Workspace-Id landet.
currentTrue für den Workspace, in dem dieser Aufruf gelandet ist.
canDrei Booleans, draft, schedule und publish, für das, was Ihre Rolle in diesem Workspace mit Beiträgen erlaubt.

Workspace mit X-Workspace-Id wählen

Jeder Endpunkt akzeptiert den optionalen Header X-Workspace-Id. Setzen Sie ihn auf eine id aus dieser Liste, dann läuft der Aufruf in diesem Workspace, mit Ihrer Rolle dort. Ohne ihn landet der Aufruf im Standard-Workspace.

Request-Header
X-Workspace-Id: ag_02k7m

Ein Workspace, den der Aufrufer nicht erreicht, antwortet mit 403, code workspace_access_denied und der abgelehnten workspaceId. Ein API-Schlüssel gehört zu einem Workspace, daher erhält er denselben 403 für die id jedes anderen Workspace: Senden Sie die id seines eigenen Workspace oder lassen Sie den Header weg.

403 Verboten: Workspace-Zugriff verweigert
{
  "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."
}
Ihre Workspaces auflisten
curl --request GET \
  --url https://post.adaptlypost.com/post/api/v1/workspaces \
  --header 'Authorization: Bearer <api-key>'
In einem anderen Workspace handeln
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 }
    }
  ]
}