Workspaces

How workspaces and organizations scope your API access

Overview

EziBreezy organizes resources in a hierarchy:

Organization
  └── Workspace
        ├── Integrations (connected social accounts)
        ├── Posts
        └── Media

An organization is your top-level account. It contains one or more workspaces, each with their own integrations, posts, and media library.

Discovering workspaces

The workspaces endpoint is the starting point for API usage. It does not require the x-workspace-id header:

curl https://api.ezibreezy.com/v1/workspaces \
  -H "Authorization: Bearer ezb_live_..."
{
  "data": [
    {
      "id": "ws-uuid",
      "name": "Main Workspace",
      "slug": "main-workspace",
      "organizationId": "org-uuid",
      "role": "admin"
    }
  ],
  "meta": null
}

Workspace scoping

Once you have a workspace ID, pass it in the x-workspace-id header for all other requests:

curl https://api.ezibreezy.com/v1/posts \
  -H "Authorization: Bearer ezb_live_..." \
  -H "x-workspace-id: ws-uuid"

API key organization scoping

When using an API key, the workspaces endpoint automatically filters results to only show workspaces within the key's organization. You cannot access workspaces outside of it.

Roles

Your role within a workspace determines what you can do:

RolePosts (read)Posts (write)Media (write)API keys
adminYesYesYesYes
editorYesYesYesNo
viewerYesNoNoNo