WorkOS Authorization API

Authorization and access control.

Business capability
Identity & Access Management BC-620.20

Operations 34

POST /authorization/organization_memberships/{organization_membership_id}/check Check Authorization #
GET /authorization/organization_memberships/{organization_membership_id}/resources List Resources for Organization Membership #
GET /authorization/organization_memberships/{organization_membership_id}/resources/{resource_id}/permissions List Effective Permissions for an Organization Membership on a Resource #
GET /authorization/organization_memberships/{organization_membership_id}/resources/{resource_type_slug}/{external_id}/permissions List Effective Permissions for an Organization Membership on a Resource by… #
GET /authorization/organization_memberships/{organization_membership_id}/role_assignments List Role Assignments #
POST /authorization/organization_memberships/{organization_membership_id}/role_assignments Assign a Role #
DELETE /authorization/organization_memberships/{organization_membership_id}/role_assignments Remove a Role Assignment #
DELETE /authorization/organization_memberships/{organization_membership_id}/role_assignments/{role_assignment_id} Remove a Role Assignment by ID #
POST /authorization/organizations/{organizationId}/roles Create a Custom Role #
GET /authorization/organizations/{organizationId}/roles List Custom Roles #
GET /authorization/organizations/{organizationId}/roles/{slug} Get a Custom Role #
PATCH /authorization/organizations/{organizationId}/roles/{slug} Update a Custom Role #
DELETE /authorization/organizations/{organizationId}/roles/{slug} Delete a Custom Role #
PUT /authorization/organizations/{organizationId}/roles/{slug}/permissions Set Permissions for a Custom Role #
POST /authorization/organizations/{organizationId}/roles/{slug}/permissions Add a Permission to a Custom Role #
DELETE /authorization/organizations/{organizationId}/roles/{slug}/permissions/{permissionSlug} Remove a Permission from a Custom Role #
GET /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id} Get a Resource by External ID #
PATCH /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id} Update a Resource by External ID #
DELETE /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id} Delete an Authorization Resource by External ID #
GET /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id}/organization_memberships List Memberships for a Resource by External ID #
GET /authorization/organizations/{organization_id}/resources/{resource_type_slug}/{external_id}/role_assignments List Role Assignments for a Resource by External ID #
GET /authorization/resources List Resources #
POST /authorization/resources Create an Authorization Resource #
GET /authorization/resources/{resource_id} Get a Resource #
PATCH /authorization/resources/{resource_id} Update a Resource #
DELETE /authorization/resources/{resource_id} Delete an Authorization Resource #
GET /authorization/resources/{resource_id}/organization_memberships List Organization Memberships for Resource #
GET /authorization/resources/{resource_id}/role_assignments List Role Assignments for a Resource #
POST /authorization/roles Create an Environment Role #
GET /authorization/roles List Environment Roles #
GET /authorization/roles/{slug} Get an Environment Role #
PATCH /authorization/roles/{slug} Update an Environment Role #
PUT /authorization/roles/{slug}/permissions Set Permissions for an Environment Role #
POST /authorization/roles/{slug}/permissions Add a Permission to an Environment Role #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/workos-authorization-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

workos-authorization-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: WorkOS Authorization API
  description: WorkOS REST API
  version: '1.0'
  contact:
    name: WorkOS
    url: https://workos.com
    email: support@workos.com
  license:
    name: MIT
    url: https://opensource.org/license/MIT
servers:
- url: https://api.workos.com
  description: Production
- url: https://api.workos-test.com
  description: Staging
security:
- bearer: []
tags:


# --- truncated at 32 KB (174 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/workos/refs/heads/main/openapi/workos-authorization-api-openapi.yml