Arcade website screenshot

Arcade

Arcade.dev is the MCP runtime for production AI agent deployments. The Arcade Engine — a hosted or self-hostable API surface — handles OAuth user authorization, manages user tokens, and exposes 7,000+ pre-built integrations as Model Context Protocol tools that agent frameworks like LangChain, OpenAI Agents, CrewAI, AG2, Google ADK, Vercel AI, Mastra, and TanStack AI can call. This profile catalogs the public Arcade Engine API (39 endpoints across Admin, Authorization, Tools, LLM, Operations, Hooks, Gateways, and Plugins), the ArcadeAI GitHub org's SDKs, the arcade-mcp framework, and the public schemas repo.

4 APIs 11 Features
AgentsMCPAI AgentsAuthorizationOAuthTool CallingAgent InfrastructureLLMIntegrations

APIs

Arcade Engine API

The Arcade Engine HTTP API — the control plane for tool catalogs, user authorization flows, tool execution, scheduled tools, MCP gateways, workers, hooks, plugins, and admin ope...

Arcade Public Schemas

The ArcadeAI/schemas repo on GitHub publishes versioned JSON Schemas for the Arcade engine configuration (1.0 and 2.0) and the worker HTTP contracts (1.0) — tool_definition, exe...

Arcade MCP Framework

The arcade-mcp open-source Python framework — "MCP Server Framework and Tool Development library for building custom capabilities into agents." Provides the `arcade` CLI (login,...

Arcade Integration Catalog

The Arcade integration catalog — 145 MCP servers across Arcade Optimized, Arcade Unoptimized, Verified, Community, and Auth Provider designations, with 37 additional "Coming Soo...

Collections

Arcade API

OPEN

Pricing Plans

Arcade Plans Pricing

4 plans

PLANS

Rate Limits

Arcade Rate Limits

0 limits

RATE LIMITS

FinOps

Arcade Finops

FINOPS

Features

MCP Runtime

Hosted and self-hostable Model Context Protocol runtime that turns tool definitions into multi-user, authorized invocations for agents.

Managed OAuth Authorization

Built-in OAuth and identity-provider flows across 30+ named auth providers plus a generic OAuth 2.0 provider; per-user tokens managed without service-account workarounds.

Tool Catalog

145 MCP servers across Arcade Optimized, Unoptimized, Verified, Community, and Auth Provider designations, with 37 more 'Coming Soon'.

Agent-Framework Integrations

First-class adapters for LangChain, OpenAI Agents, CrewAI, AG2, Google ADK, Vercel AI, Mastra, and TanStack AI.

Evaluations

`arcade evals` CLI runs scripted tool-calling evals to gate releases on behavior, not just compile-time checks.

Observability

Per-execution logs across the Engine plus dashboards; audit logs and compliance reporting are part of the Enterprise tier.

Hooks and Plugins

Pre- and post-call hooks plus pluggable verifiers and policy modules under /v1/hooks and /v1/plugins.

Custom User Verifiers

Customer-owned verification flows (e.g. Stytch, Supabase) gating tool execution via /v1/auth/validate_custom_verifier.

Scheduled Tools

Tools can be registered to fire on a schedule via /v1/scheduled_tools instead of synchronously from an agent.

Deployment Flexibility

Cloud, VPC, on-premises, or air-gapped — explicitly called out on the homepage.

Arcade Registry (beta)

Marketplace for publishing and monetizing agent-ready tools.

Use Cases

Multi-User AI Assistant

Agents that act on behalf of distinct end users — Gmail/Calendar/Slack/Salesforce assistants — without shared service credentials.

Production Agent Deployment

Moving agents from prototype to production with governed OAuth, evals, and observability per the May 2026 CISO governance post.

Enterprise MCP Gateway

An ingress in front of one or more workers within a project applying routing, headers, and policies.

Agent SRE

On-call reliability and runbook automation per Arcade's 'AI SRE with Claude Code' blog series.

Sales and Productivity Automation

Multi-step workflows across Salesforce, HubSpot, Attio, Slack, Linear, Jira, Asana, ClickUp, Notion, Google Workspace, and Microsoft Office.

Voice and Chat Assistants

WhatsApp / Telegram / Slack assistants powered by the toolkits and the Arcade Engine.

Integrations

LangChain

First-class LangChain integration; partnership extended via LangSmith Fleet announcement on 2026-04-07.

OpenAI Agents

Python adapter via openai-agents-arcade for using Arcade tools inside the OpenAI Agents SDK.

CrewAI

Documented framework integration in docs.arcade.dev.

AG2

Framework support added in the 2026-04-10 changelog.

Google ADK

Adapter via google-adk-arcade Python library.

Vercel AI

arcade-vercel-ai-template demonstrating Arcade tools inside Vercel AI SDK chatbots.

Mastra

Documented framework integration.

TanStack AI

Documented framework integration.

Anthropic Claude Code

Multiple Claude Code routines and on-call workflows shipped from the Arcade blog through April–May 2026.

Auth Providers

Asana, Atlassian, Discord, Dropbox, GitHub, Google, HubSpot, Linear, LinkedIn, Microsoft, Notion, Reddit, Slack, Spotify, Twitch, X, Zoom, Airtable, Attio, Calendly, ClickUp, Figma, Mailchimp, Miro, PagerDuty, Salesforce, Square, TickTick, Zendesk, Zoho, plus a generic OAuth 2.0 provider.

Solutions

Cloud Deployment

Arcade-hosted MCP servers, metered on the Growth plan at $0.05 per server-hour.

VPC Deployment

Deploy the Engine inside the customer's VPC — called out on the homepage as a supported topology.

On-Premises Deployment

Self-hosted Engine and workers for regulated environments.

Air-Gapped Deployment

Disconnected deployments for the highest-control environments.

Startup Program

Custom pricing for companies under 100 employees, nonprofits, and educational institutions via contact@arcade.dev.

Semantic Vocabularies

Arcade Context

30 classes · 12 properties

JSON-LD

API Governance Rules

Arcade API Rules

8 rules · 3 errors 4 warnings 1 info

SPECTRAL

JSON Structure

Arcade Engine Execute Tool Request Structure

6 properties

JSON STRUCTURE

Arcade Engine Execute Tool Response Structure

9 properties

JSON STRUCTURE

Arcade Engine Gateway Response Structure

14 properties

JSON STRUCTURE

Arcade Engine Hook Response Structure

14 properties

JSON STRUCTURE

Arcade Engine Plugin Response Structure

14 properties

JSON STRUCTURE

Arcade Engine Secret Response Structure

4 properties

JSON STRUCTURE

Arcade Engine Tool Execution Detail Structure

14 properties

JSON STRUCTURE

Arcade Engine Tool Response Structure

10 properties

JSON STRUCTURE

Arcade Engine Worker Response Structure

8 properties

JSON STRUCTURE

Example Payloads

Resources

🌐
Portal
Portal
🌐
DeveloperPortal
DeveloperPortal
📝
Signup
Signup
🌐
Console
Console
💰
Pricing
Pricing
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
📰
Blog
Blog
🟢
StatusPage
StatusPage
📄
ChangeLog
ChangeLog
👥
GitHubOrganization
GitHubOrganization
💬
Support
Support
🔗
Vocabulary
Vocabulary
🔗
JSONLD
JSONLD
🔗
SpectralRules
SpectralRules
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Arcade API
  version: 0.1.0
items:
- info:
    name: Admin
    type: folder
  items:
  - info:
      name: List Auth Providers
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/admin/auth_providers
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: List a page of auth providers that are available to the caller
  - info:
      name: Create an Auth Provider
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/admin/auth_providers
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Create a new auth provider
  - info:
      name: Get an Auth Provider
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/admin/auth_providers/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ID of the auth provider to get
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Get the details of a specific auth provider
  - info:
      name: Patch an Auth Provider
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/admin/auth_providers/:id
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Patch an existing auth provider
  - info:
      name: Delete an Auth Provider
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/admin/auth_providers/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ID of the auth provider to delete
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Delete a specific auth provider
  - info:
      name: List Secrets
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/admin/secrets
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: List all secrets that are visible to the caller
  - info:
      name: Delete Secret
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/admin/secrets/:secret_id
      params:
      - name: secret_id
        value: ''
        type: path
        description: The ID of the secret to delete
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Delete a secret by its ID
  - info:
      name: Upsert Secret
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/admin/secrets/:secret_key
      params:
      - name: secret_key
        value: ''
        type: path
        description: The key of the secret to upsert
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Create or update a secret
  - info:
      name: Get Session Verification Settings
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/admin/settings/session_verification
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Get the current session verification settings for the caller
  - info:
      name: Update Session Verification Settings
      type: http
    http:
      method: PUT
      url: https://api.arcade.dev/v1/admin/settings/session_verification
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Update session verification settings for the caller
  - info:
      name: List Auth Connections
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/admin/user_connections
      params:
      - name: provider_id
        value: ''
        type: query
        description: Provider ID
      - name: user_id
        value: ''
        type: query
        description: User ID
      - name: limit
        value: ''
        type: query
        description: Page size
      - name: offset
        value: ''
        type: query
        description: Page offset
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: List all auth connections
  - info:
      name: Delete Auth Connection
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/admin/user_connections/:id
      params:
      - name: id
        value: ''
        type: path
        description: Connection ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Delete a user/auth provider connection
  - info:
      name: List All Workers
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/workers
      params:
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: List all workers with their definitions
  - info:
      name: Create a Worker
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/workers
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Create a worker
  - info:
      name: Test a Worker Connection
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/workers/test
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Test a worker connection before adding it to the system
  - info:
      name: Get a Worker by ID
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/workers/:id
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Get a worker by ID
  - info:
      name: Update a Worker
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/workers/:id
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Update a worker
  - info:
      name: Delete a Worker
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/workers/:id
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Delete a worker
  - info:
      name: Authorize a Worker
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/workers/:id/authorize
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Authorize a worker
  - info:
      name: Get the Health of a Worker
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/workers/:id/health
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Get the health of a worker
  - info:
      name: List Tools
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/workers/:id/tools
      params:
      - name: id
        value: ''
        type: path
        description: Worker ID
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a page of tools
- info:
    name: Authorization
    type: folder
  items:
  - info:
      name: Initiate Authorization
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/auth/authorize
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Starts the authorization process for given authorization requirements
  - info:
      name: Confirm User Authorization
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/auth/confirm_user
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Confirms a user's details during an authorization flow
  - info:
      name: Check Authorization Status
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/auth/status
      params:
      - name: id
        value: ''
        type: query
        description: Authorization ID
      - name: wait
        value: ''
        type: query
        description: Timeout in seconds (max 59)
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: 'Checks the status of an ongoing authorization process for a specific tool.

      If ''wait'' param is present, does not respond until either the auth status becomes completed or the timeout is reached.'
  - info:
      name: Test Authorization Flow
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/auth/validate_custom_verifier
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Starts a test authorization flow
- info:
    name: LLM
    type: folder
  items:
  - info:
      name: Language Model Chat
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/chat/completions
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Interact with language models via OpenAI's chat completions API
- info:
    name: Operations
    type: folder
  items:
  - info:
      name: Get Engine Config
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/config
    docs: Get the Engine configuration
  - info:
      name: Engine Health Check
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/health
    docs: Check if Arcade Engine is healthy
  - info:
      name: Get Openapi Specification
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/swagger
    docs: Get the OpenAPI 3.0 specification in JSON format
- info:
    name: Tools
    type: folder
  items:
  - info:
      name: List Formatted Static Tools
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/formatted_tools
      params:
      - name: toolkit
        value: ''
        type: query
        description: Toolkit name
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      - name: format
        value: ''
        type: query
        description: Provider format
      - name: user_id
        value: ''
        type: query
        description: User ID
      - name: include_all_versions
        value: ''
        type: query
        description: Include all versions of each tool
      - name: filter
        value: ''
        type: query
        description: 'JSON metadata filter. Array fields (service_domains, operations): shorthand array or object with any_of/all_of/none_of
          operators (case-insensitive). Boolean fields: read_only, destructive, idempotent, open_world. Extras: case-sensitive
          key-value subset match.'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a page of tools from the engine configuration, optionally filtered by toolkit, formatted for a specific
      provider
  - info:
      name: Get Formatted Tool Specification
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/formatted_tools/:name
      params:
      - name: name
        value: ''
        type: path
        description: Tool name
      - name: format
        value: ''
        type: query
        description: Provider format
      - name: user_id
        value: ''
        type: query
        description: User ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns the formatted tool specification for a specific tool, given a provider
  - info:
      name: List Scheduled Tool Executions
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/scheduled_tools
      params:
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a page of scheduled tool executions
  - info:
      name: Get Scheduled Tool Execution Details
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/scheduled_tools/:id
      params:
      - name: id
        value: ''
        type: path
        description: Scheduled execution ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns the details for a specific scheduled tool execution
  - info:
      name: List Static Tools
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/tools
      params:
      - name: toolkit
        value: ''
        type: query
        description: Toolkit name
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      - name: include_format
        value: ''
        type: query
        description: Comma separated tool formats that will be included in the response.
      - name: user_id
        value: ''
        type: query
        description: User ID
      - name: include_all_versions
        value: ''
        type: query
        description: Include all versions of each tool
      - name: filter
        value: ''
        type: query
        description: 'JSON metadata filter. Array fields (service_domains, operations): shorthand array or object with any_of/all_of/none_of
          operators (case-insensitive). Boolean fields: read_only, destructive, idempotent, open_world. Extras: case-sensitive
          key-value subset match.'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a page of tools from the engine configuration, optionally filtered by toolkit and/or metadata
  - info:
      name: Authorize Tool
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/tools/authorize
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Authorizes a user for a specific tool by name
  - info:
      name: Execute Tool
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/tools/execute
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Executes a tool by name and arguments
  - info:
      name: Check Tool Requirements
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/tools/requirements
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Checks authorization and secret requirements for multiple tools. Optionally starts OAuth flows for unmet auth requirements.
  - info:
      name: Get Arcade Tool Specification
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/tools/:name
      params:
      - name: name
        value: ''
        type: path
        description: Tool name
      - name: include_format
        value: ''
        type: query
        description: Comma separated tool formats that will be included in the response.
      - name: user_id
        value: ''
        type: query
        description: User ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns the arcade tool specification for a specific tool
- info:
    name: Hooks
    type: folder
  items:
  - info:
      name: List Hooks
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/hooks
      params:
      - name: limit
        value: ''
        type: query
        description: Limit
      - name: offset
        value: ''
        type: query
        description: Offset
      - name: hook_point
        value: ''
        type: query
        description: Filter by hook point
      - name: plugin_id
        value: ''
        type: query
        description: Filter by plugin ID
      - name: status
        value: ''
        type: query
        description: Filter by status
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns all hooks for the current binding with optional filtering
  - info:
      name: Create a Hook
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/hooks
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Creates a new hook configuration
  - info:
      name: Bulk Upsert Hooks
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/hooks/bulk
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Creates or updates multiple hooks at once. The operation is transactional.
  - info:
      name: Get a Hook
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/hooks/:hook_id
      params:
      - name: hook_id
        value: ''
        type: path
        description: Hook ID
      - name: binding_type
        value: ''
        type: query
        description: Filter by binding type (tenant or project)
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a single hook by ID
  - info:
      name: Update a Hook
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/hooks/:hook_id
      params:
      - name: hook_id
        value: ''
        type: path
        description: Hook ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Updates an existing hook configuration
  - info:
      name: Delete a Hook
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/hooks/:hook_id
      params:
      - name: hook_id
        value: ''
        type: path
        description: Hook ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Deletes a hook by ID
- info:
    name: Gateways
    type: folder
  items:
  - info:
      name: List Gateways
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      - name: limit
        value: ''
        type: query
        description: 'Number of items to return (default: 25, max: 100)'
      - name: offset
        value: ''
        type: query
        description: 'Offset from the start of the list (default: 0)'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a paginated list of gateways for the current project
  - info:
      name: Create a Gateway
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Creates a new gateway in the current project
  - info:
      name: Check Gateway Slug Availability
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways/slug
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Checks whether a gateway slug is available for use
  - info:
      name: Get a Gateway
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways/:gateway_id
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      - name: gateway_id
        value: ''
        type: path
        description: Gateway ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a single gateway by ID
  - info:
      name: Update a Gateway
      type: http
    http:
      method: PUT
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways/:gateway_id
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      - name: gateway_id
        value: ''
        type: path
        description: Gateway ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Replaces the full configuration of an existing gateway
  - info:
      name: Patch a Gateway
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways/:gateway_id
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      - name: gateway_id
        value: ''
        type: path
        description: Gateway ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Partially updates an existing gateway configuration
  - info:
      name: Delete a Gateway
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/orgs/:org_id/projects/:project_id/gateways/:gateway_id
      params:
      - name: org_id
        value: ''
        type: path
        description: Organization ID
      - name: project_id
        value: ''
        type: path
        description: Project ID
      - name: gateway_id
        value: ''
        type: path
        description: Gateway ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Deletes a gateway by ID
- info:
    name: Plugins
    type: folder
  items:
  - info:
      name: List Plugins
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/plugins
      params:
      - name: limit
        value: ''
        type: query
        description: Limit
      - name: offset
        value: ''
        type: query
        description: Offset
      - name: binding_type
        value: ''
        type: query
        description: Binding type filter (e.g., 'tenant')
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns all plugins for the current binding
  - info:
      name: Create a Plugin
      type: http
    http:
      method: POST
      url: https://api.arcade.dev/v1/plugins
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Creates a new plugin with optional inline hooks
  - info:
      name: Get a Plugin
      type: http
    http:
      method: GET
      url: https://api.arcade.dev/v1/plugins/:plugin_id
      params:
      - name: plugin_id
        value: ''
        type: path
        description: Plugin ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Returns a single plugin by ID
  - info:
      name: Update a Plugin
      type: http
    http:
      method: PATCH
      url: https://api.arcade.dev/v1/plugins/:plugin_id
      params:
      - name: plugin_id
        value: ''
        type: path
        description: Plugin ID
      body:
        type: json
        data: '{}'
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Updates an existing plugin configuration
  - info:
      name: Delete a Plugin
      type: http
    http:
      method: DELETE
      url: https://api.arcade.dev/v1/plugins/:plugin_id
      params:
      - name: plugin_id
        value: ''
        type: path
        description: Plugin ID
      auth:
        type: apikey
        key: Authorization
        value: '{{Authorization}}'
        placement: header
    docs: Deletes a plugin by ID
bundled: true