Strapi website screenshot

Strapi

Strapi is an open-source, headless CMS built with Node.js that gives developers full control over their content API. It provides a customizable admin panel for content management, automatically generates REST and GraphQL APIs for every content-type, and supports flexible database options including SQLite, PostgreSQL, MySQL, and MongoDB. Strapi v5 introduces a Document Service API with flattened response format, improved TypeScript support, and an enhanced content delivery API for building fast, decoupled frontends.

Strapi publishes 15 APIs on the APIs.io network, including Webhooks, Admin Authentication API, Admin Roles API, and 12 more. Tagged areas include CMS, Content Management, Headless CMS, Node.js, and Open Source.

The Strapi catalog on APIs.io includes 1 event-driven AsyncAPI specification, 1 JSON-LD context, and 3 Spectral governance rulesets.

Strapi’s developer surface includes authentication, documentation, GitHub presence, engineering blog, changelog, pricing, and 15 more developer resources.

53.6/100 developing ▬ flat Agent 36/100 agent ready Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreemiumSelf serve⚡ Free to try
15 APIs
CMSContent ManagementHeadless CMSNode.jsOpen Source

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 53.6/100 · developing
Contract Quality 17.9 / 25
Developer Ergonomics 4.3 / 20
Commercial Clarity 11.6 / 20
Operational Transparency 7.5 / 13
Governance 5.7 / 12
Discoverability 6.5 / 10
Agent readiness — 36/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 6 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/strapi: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 15

Individual APIs this provider publishes, each with its own machine-readable definition.

Strapi Webhooks

Strapi includes a built-in webhook system that notifies external services whenever content entries or media assets are created, updated, deleted, published, or unpublished. Webh...

Strapi Admin Authentication API

Authentication endpoints for administrator accounts used to access the Strapi admin panel.

Strapi Admin Roles API

Endpoints for managing administrator roles (Super Admin, Editor, Author) and their associated permissions.

Strapi Admin Users API

Endpoints for managing administrator user accounts that have access to the Strapi admin panel.

Strapi API Tokens API

Endpoints for managing API tokens used to authenticate REST and GraphQL API requests.

Strapi Authentication API

Endpoints for user authentication including login, registration, and password management using JWT tokens.

Strapi Content Entries API

CRUD operations on content-type entries. Strapi auto-generates these endpoints for each content-type defined in the application.

Strapi Content Manager API

Endpoints for managing content entries through the admin panel Content Manager interface.

Strapi Content Types API

Endpoints for managing content-type definitions through the Content-Type Builder.

Strapi Permissions API

Endpoints for viewing and configuring permissions assigned to roles.

Strapi Roles API

Endpoints for managing user roles and their associated permissions.

Strapi Transfer Tokens API

Endpoints for managing transfer tokens used for data transfer operations between Strapi instances.

Strapi Upload API

File upload and media library management endpoints powered by the Upload plugin.

Strapi Users API

Endpoints for managing end-user accounts and profiles.

Strapi Webhooks API

Endpoints for managing webhook configurations from the admin panel.

Scroll for all 15

Open Collections 3

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Strapi Admin Panel API

OPEN COLLECTION

Strapi REST API

OPEN COLLECTION

GraphQL 1

GraphQL schemas published by this provider.

Pricing Plans 1

Published pricing tiers and plan structures.

Strapi Plans Pricing

3 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Strapi Rate Limits

5 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Strapi Webhooks

Strapi includes a built-in webhook system that notifies external services whenever certain events occur in the CMS. Rather than polling the Strapi API for changes, you can confi...

ASYNCAPI

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Strapi Context

0 classes · 8 properties

JSON-LD

Spectral Rules 3

Spectral governance rulesets for linting and validating these APIs.

Strapi API Rules

5 rules · 1 errors 3 warnings 1 info

SPECTRAL

Strapi API Rules

6 rules · 4 warnings 2 info

SPECTRAL

Strapi API Rules

10 rules · 1 errors 5 warnings 4 info

SPECTRAL

JSON Schema 1

Standalone JSON Schema definitions for this provider's data models.

Strapi Content Entry

7 properties

JSON SCHEMA

JSON Structure 1

JSON Structure definitions describing this provider's data shapes.

Strapi Content Entry Structure

0 properties

JSON STRUCTURE

Examples 4

Example request and response payloads for these APIs.

Security Posture 3

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Strapi Authentication

apiKey/http · 2 schemes

SECURITY

Strapi Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Strapi Trust Center

SOC 2, GDPR

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Strapi Agentic Access

58 operations · 34 acting · 4 human-in-the-loop

58 operations · 34 acting

AGENTIC

Resources

Documentation 6

Reference material describing how the API behaves

Agent Surfaces 2

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 1

Pagination, idempotency, versioning, errors, and events

Build 1

SDKs, sample code, and the tooling you integrate with

Access & Security 3

Authentication, authorization, and security posture

Operate 4

Status, limits, changes, and where to get help

Commercial 1

Pricing, plans, and the legal terms of use

Company 3

The organization behind the API

Source (apis.yml)

apis.yml Raw ↑
aid: strapi
name: Strapi
description: Strapi is an open-source, headless CMS built with Node.js that gives developers full control over their content
  API. It provides a customizable admin panel for content management, automatically generates REST and GraphQL APIs for every
  content-type, and supports flexible database options including SQLite, PostgreSQL, MySQL, and MongoDB. Strapi v5 introduces
  a Document Service API with flattened response format, improved TypeScript support, and an enhanced content delivery API
  for building fast, decoupled frontends.
url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/apis.yml
accessModel:
  pricing: freemium
  onboarding: self-serve
  trial: false
  try_now: true
  public: false
  label: Freemium · Self-serve signup
  confidence: high
  source:
  - plans
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://strapi.io/assets/strapi-logo-dark.svg
tags:
- CMS
- Content Management
- Headless CMS
- Node.js
- Open Source
type: Index
access: 3rd-Party
position: Consumer
created: '2025-01-01'
modified: '2026-05-19'
specificationVersion: '0.19'
apis:
- aid: strapi:strapi-webhooks
  name: Strapi Webhooks
  description: Strapi includes a built-in webhook system that notifies external services whenever content entries or media
    assets are created, updated, deleted, published, or unpublished. Webhooks are configured through the admin panel and include
    a custom X-Strapi-Event header identifying the event type.
  humanURL: https://docs.strapi.io/cms/backend-customization/webhooks
  tags:
  - CMS
  - Events
  - Webhooks
  properties:
  - type: AsyncAPI
    url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/asyncapi/strapi-webhooks-asyncapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/backend-customization/webhooks
- aid: strapi:strapi-admin-authentication-api
  name: Strapi Admin Authentication API
  description: Authentication endpoints for administrator accounts used to access the Strapi admin panel.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Admin Authentication
  properties:
  - type: OpenAPI
    url: openapi/strapi-admin-authentication-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-admin-roles-api
  name: Strapi Admin Roles API
  description: Endpoints for managing administrator roles (Super Admin, Editor, Author) and their associated permissions.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Admin Roles
  properties:
  - type: OpenAPI
    url: openapi/strapi-admin-roles-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-admin-users-api
  name: Strapi Admin Users API
  description: Endpoints for managing administrator user accounts that have access to the Strapi admin panel.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Admin Users
  properties:
  - type: OpenAPI
    url: openapi/strapi-admin-users-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-api-tokens-api
  name: Strapi API Tokens API
  description: Endpoints for managing API tokens used to authenticate REST and GraphQL API requests.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - API Tokens
  properties:
  - type: OpenAPI
    url: openapi/strapi-api-tokens-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-authentication-api
  name: Strapi Authentication API
  description: Endpoints for user authentication including login, registration, and password management using JWT tokens.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Authentication
  properties:
  - type: OpenAPI
    url: openapi/strapi-authentication-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-content-entries-api
  name: Strapi Content Entries API
  description: CRUD operations on content-type entries. Strapi auto-generates these endpoints for each content-type defined
    in the application.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Content Entries
  properties:
  - type: OpenAPI
    url: openapi/strapi-content-entries-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-content-manager-api
  name: Strapi Content Manager API
  description: Endpoints for managing content entries through the admin panel Content Manager interface.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Content Manager
  properties:
  - type: OpenAPI
    url: openapi/strapi-content-manager-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-content-types-api
  name: Strapi Content Types API
  description: Endpoints for managing content-type definitions through the Content-Type Builder.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Content Types
  properties:
  - type: OpenAPI
    url: openapi/strapi-content-types-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-permissions-api
  name: Strapi Permissions API
  description: Endpoints for viewing and configuring permissions assigned to roles.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Permissions
  properties:
  - type: OpenAPI
    url: openapi/strapi-permissions-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-roles-api
  name: Strapi Roles API
  description: Endpoints for managing user roles and their associated permissions.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Roles
  properties:
  - type: OpenAPI
    url: openapi/strapi-roles-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-transfer-tokens-api
  name: Strapi Transfer Tokens API
  description: Endpoints for managing transfer tokens used for data transfer operations between Strapi instances.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Transfer Tokens
  properties:
  - type: OpenAPI
    url: openapi/strapi-transfer-tokens-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-upload-api
  name: Strapi Upload API
  description: File upload and media library management endpoints powered by the Upload plugin.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Upload
  properties:
  - type: OpenAPI
    url: openapi/strapi-upload-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-users-api
  name: Strapi Users API
  description: Endpoints for managing end-user accounts and profiles.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Users
  properties:
  - type: OpenAPI
    url: openapi/strapi-users-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
- aid: strapi:strapi-webhooks-api
  name: Strapi Webhooks API
  description: Endpoints for managing webhook configurations from the admin panel.
  humanURL: https://docs.strapi.io/cms/api/rest
  baseURL: https://{host}
  tags:
  - Webhooks
  properties:
  - type: OpenAPI
    url: openapi/strapi-webhooks-api-openapi.yml
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest
  - type: Documentation
    url: https://docs.strapi.io/cms/api/rest/parameters
  - type: GraphQL
    url: graphql/strapi-graphql.md
  - type: Documentation
    url: https://docs.strapi.io/cms/features/admin-panel
  - type: Documentation
    url: https://docs.strapi.io/cms/features/rbac
  - type: Documentation
    url: https://docs.strapi.io/cms/features/users-permissions
common:
- type: AgenticAccess
  url: agentic-access/strapi-agentic-access.yml
- type: TrustCenter
  url: security/strapi-trust-center.yml
- type: DomainSecurity
  url: security/strapi-domain-security.yml
- type: Authentication
  url: authentication/strapi-authentication.yml
- type: LinkedIn
  url: https://www.linkedin.com/company/strapi
- type: Website
  url: https://strapi.io
- type: Documentation
  url: https://docs.strapi.io
- type: GitHub
  url: https://github.com/strapi/strapi
- type: Blog
  url: https://strapi.io/blog
- type: Forums
  url: https://forum.strapi.io
- type: Discord
  url: https://discord.strapi.io
- type: RoadMap
  url: https://feedback.strapi.io
- type: ChangeLog
  url: https://github.com/strapi/strapi/releases
- type: Pricing
  url: https://strapi.io/pricing-cloud
- type: OpenAPI
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/openapi/strapi-rest-api-openapi.yml
- type: OpenAPI
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/openapi/strapi-admin-panel-api-openapi.yml
- type: OpenAPI
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/openapi/strapi-users-and-permissions-api-openapi.yml
- type: AsyncAPI
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/asyncapi/strapi-webhooks-asyncapi.yml
- type: JSONSchema
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/json-schema/strapi-content-entry-schema.json
- type: JSONLDContext
  url: https://raw.githubusercontent.com/api-evangelist/strapi/refs/heads/main/json-ld/strapi-context.jsonld
- type: Integrations
  url: https://strapi.io/integrations
- type: LlmsText
  url: https://docs.strapi.io/llms.txt
integrations:
- name: React CMS
- name: Next.js CMS
- name: Tanstack CMS
- name: Vue.js CMS
- name: Nuxt.js CMS
- name: Astro CMS
- name: Flutter CMS
- name: Svelte CMS
- name: React Native CMS
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com