# wp-api/wp-api

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/wp-api-wp-api).**

3,927 stars · 642 forks · PHP · GPL-2.0 · archived

## Links

- GitHub: https://github.com/WP-API/WP-API
- Homepage: https://developer.wordpress.org/rest-api/
- awesome-repositories: https://awesome-repositories.com/repository/wp-api-wp-api.md

## Description

The WordPress REST API is a web interface and JSON-based content API that allows for the retrieval and modification of site content, users, and metadata using standard HTTP methods. It functions as a headless CMS interface, decoupling content management from the frontend by exposing site data through a programmable RESTful controller.

The system is distinguished by its hypermedia-driven discovery and JSON-schema-based validation, which allow clients to programmatically locate resources and ensure predictable data exchange. It utilizes namespace-based endpoint registration to organize routes and supports a flexible authentication layer including application passwords, session cookies, and third-party identity standards.

The API covers a broad range of resource management capabilities, including the handling of posts, pages, media, and block-based content. It provides comprehensive utilities for response management, such as resource embedding, pagination, and field filtering, alongside tools for managing content revisions and site administration.

Support is provided for language-specific SDKs to abstract network requests into high-level programmatic interfaces.

## Tags

### Content Management & Publishing

- [Headless CMS](https://awesome-repositories.com/f/content-management-publishing/headless-visual-cms/headless-cms.md) — Provides a headless CMS interface that decouples content management from the frontend via a programmable API.
- [Custom Content Type Definitions](https://awesome-repositories.com/f/content-management-publishing/content-management-systems/content-architecture-modeling/document-models/document-sectioning/document-content-structuring/content-schema-definitions/modular-content-block-definitions/custom-block-type-definitions/custom-content-type-definitions.md) — Allows the definition of custom content types and taxonomies that are exposed as programmable API resources. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/))
- [Headless CMS Integrations](https://awesome-repositories.com/f/content-management-publishing/headless-cms-integrations.md) — Enables a decoupled workflow by bridging the CMS backend to external frontends via API resources and data embedding.
- [Headless WordPress Development](https://awesome-repositories.com/f/content-management-publishing/headless-wordpress-development.md) — Provides a headless architecture where WordPress acts as a backend API for decoupled frontend applications.
- [Page Content Retrievals](https://awesome-repositories.com/f/content-management-publishing/page-content-retrievals.md) — Provides programmatic fetching of specific site pages using unique identifiers and query filtering. ([source](https://developer.wordpress.org/rest-api/reference/pages/))
- [Site Content Management](https://awesome-repositories.com/f/content-management-publishing/site-content-management.md) — Provides JSON-based retrieval and updating of posts, pages, categories, tags, and media. ([source](https://developer.wordpress.org/rest-api/reference/))
- [WordPress REST APIs](https://awesome-repositories.com/f/content-management-publishing/wordpress-rest-apis.md) — Acts as the primary web interface for interacting with WordPress content and settings using standard HTTP methods.
- [Template Part Management](https://awesome-repositories.com/f/content-management-publishing/document-part-management/template-part-management.md) — Allows retrieving, creating, or deleting template part records to synchronize layout components. ([source](https://developer.wordpress.org/rest-api/reference/wp_template_parts/))
- [Media Resource Retrievals](https://awesome-repositories.com/f/content-management-publishing/media-resource-retrievals.md) — Fetches collections of media records and metadata using query parameters for filtered retrieval. ([source](https://developer.wordpress.org/rest-api/reference/media/))
- [Site Content Search](https://awesome-repositories.com/f/content-management-publishing/site-content-search.md) — Retrieves collections of matching results across the site based on search queries and filters. ([source](https://developer.wordpress.org/rest-api/reference/search-results/))
- [Template Retrievals](https://awesome-repositories.com/f/content-management-publishing/template-retrievals.md) — Fetches lists of all site templates or specific template records using unique identifiers. ([source](https://developer.wordpress.org/rest-api/reference/wp_templates/))

### Software Engineering & Architecture

- [API Resource Management](https://awesome-repositories.com/f/software-engineering-architecture/api-resource-management.md) — Implements standardized CRUD operations for managing the lifecycle of site data entities via JSON. ([source](https://developer.wordpress.org/rest-api/glossary/))
- [Data Schema Definitions](https://awesome-repositories.com/f/software-engineering-architecture/data-schema-definitions.md) — Defines the structure of input parameters and output properties to ensure predictable data exchange. ([source](https://developer.wordpress.org/rest-api/key-concepts/))
- [JSON Schema Validation](https://awesome-repositories.com/f/software-engineering-architecture/json-schema-validation.md) — Uses predefined JSON schemas to automatically validate, sanitize, and type-check incoming request parameters.
- [Object Schema Definitions](https://awesome-repositories.com/f/software-engineering-architecture/object-schema-definitions.md) — Describes the structure of API objects using JSON Schema for client-side discovery and validation. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/schema/))
- [Request Validation](https://awesome-repositories.com/f/software-engineering-architecture/request-validation.md) — Defines required fields, default values, and sanitization callbacks for incoming request data. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/))
- [API Response Filtering](https://awesome-repositories.com/f/software-engineering-architecture/api-response-filtering.md) — Accepts query or body parameters through validation callbacks to modify data returned by an endpoint. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/routes-and-endpoints/))
- [Hypermedia Link Generation](https://awesome-repositories.com/f/software-engineering-architecture/api-schema-discovery/hypermedia-link-generation.md) — Provides automated creation of navigational links within API responses to facilitate resource discovery. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/modifying-responses/))
- [Hypermedia Resource Discovery](https://awesome-repositories.com/f/software-engineering-architecture/api-schema-discovery/hypermedia-link-generation/hypermedia-resource-discovery.md) — Adds hypermedia discovery links to responses to help clients find related resources via query variables. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/))
- [Field Filtering](https://awesome-repositories.com/f/software-engineering-architecture/field-filtering.md) — Restricts returned data to a specific subset of properties to reduce payload size. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/global-parameters/))
- [Endpoint Namespace Grouping](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/third-party-plugins/plugin-integrations/third-party-library-integrations/namespace-extension-identification/endpoint-namespace-grouping.md) — Implements namespace-based endpoint registration to prevent routing collisions between core and third-party extensions.
- [Response Lifecycle Hooks](https://awesome-repositories.com/f/software-engineering-architecture/lifecycle-event-hooks/response-lifecycle-hooks.md) — Processes incoming headers and parameters via lifecycle hooks to generate structured response objects with custom status codes. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/controller-classes/))

### Web Development

- [REST API Content Exposure](https://awesome-repositories.com/f/web-development/rest-api-content-exposure.md) — Maps URIs and methods to endpoints that expose site content and metadata as JSON for decoupled applications. ([source](https://developer.wordpress.org/rest-api/key-concepts/))
- [REST API Implementations](https://awesome-repositories.com/f/web-development/rest-api-implementations.md) — Allows for the definition of unique endpoints and data schemas to expose custom business logic via a RESTful interface.
- [API Endpoint Definitions](https://awesome-repositories.com/f/web-development/api-endpoint-definitions.md) — Provides the ability to define unique routes and callback functions to handle custom API requests. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/))
- [API Request Handling](https://awesome-repositories.com/f/web-development/api-management-tools/api-request-handling.md) — Implements logic for intercepting and processing incoming network requests to dispatch them to the correct API endpoint callbacks. ([source](https://developer.wordpress.org/rest-api/requests/))
- [Class-Based Resource Mapping](https://awesome-repositories.com/f/web-development/class-based-resource-mapping.md) — Organizes CRUD logic into standardized classes that map HTTP methods to specific data model operations.
- [Response Schema Definitions](https://awesome-repositories.com/f/web-development/client-side-input-validators/schema-based-response-validation/response-schema-definitions.md) — Specifies data format, field types, and descriptions for responses to ensure clients understand the structure. ([source](https://developer.wordpress.org/rest-api/glossary/))
- [Custom API Endpoints](https://awesome-repositories.com/f/web-development/custom-api-endpoints.md) — Enables the registration of unique URLs to custom logic for exposing data through a standardized REST interface. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/))
- [JSON APIs](https://awesome-repositories.com/f/web-development/json-apis.md) — Implements a JSON API for retrieving and modifying site content, users, and metadata.
- [Request Schema Validators](https://awesome-repositories.com/f/web-development/request-schema-validators.md) — Uses JSON Schema to automatically check and sanitize incoming request parameters for security. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/schema/))
- [Resource Schema Definitions](https://awesome-repositories.com/f/web-development/request-schema-validators/resource-schema-definitions.md) — Specifies expected data types and arguments for resources to ensure consistent request validation. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/))
- [Controller Patterns](https://awesome-repositories.com/f/web-development/api-management-tools/api-development-management/api-client-implementations/advanced-implementation-patterns/controller-patterns.md) — Organizes complex API logic into standardized controller classes to manage resource lifecycles. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/))
- [Endpoint Discovery](https://awesome-repositories.com/f/web-development/api-management-tools/api-development-management/web-apis/administrative-api-endpoints/endpoint-discovery.md) — Allows clients to query the system to identify supported resources and their specific API locations. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/))
- [CRUD API Implementations](https://awesome-repositories.com/f/web-development/crud-api-implementations.md) — Implements consistent CRUD patterns and response shaping through inheritance from base resource controllers. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/controller-classes/))
- [Dynamic API Routing](https://awesome-repositories.com/f/web-development/dynamic-api-routing.md) — Uses regular expression path variables to capture URL inputs, allowing a single endpoint to handle multiple resources. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/routes-and-endpoints/))
- [Response Field Mappings](https://awesome-repositories.com/f/web-development/dynamic-response-renderers/response-field-mappings.md) — Injects custom data fields into response objects to provide additional context to the client. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/))
- [Custom Response Fields](https://awesome-repositories.com/f/web-development/dynamic-response-renderers/response-field-mappings/custom-response-fields.md) — Injects arbitrary data or whitelist metadata into responses using custom callbacks or schema definitions. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/modifying-responses/))
- [Post Type Definition Retrievals](https://awesome-repositories.com/f/web-development/graphql-apis/type-definitions/post-type-definition-retrievals.md) — Fetches records of available content types including schemas, labels, and associated taxonomies. ([source](https://developer.wordpress.org/rest-api/reference/post-types/))
- [Referenced Resource Embedding](https://awesome-repositories.com/f/web-development/referenced-resource-embedding.md) — Includes full data of related resources within a single API response to reduce total request volume. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/linking-and-embedding/))
- [Response Mutation Callbacks](https://awesome-repositories.com/f/web-development/response-mutation-callbacks.md) — Uses registered hooks and callbacks to inject custom fields or modify outgoing data.

### Data & Databases

- [Data Resource Management](https://awesome-repositories.com/f/data-databases/data-resource-management.md) — Implements standard CRUD operations for managing site resources through model synchronization. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/backbone-javascript-client/))
- [WordPress Post Fetchers](https://awesome-repositories.com/f/data-databases/relational-data-models/related-object-retrievers/wordpress-post-fetchers.md) — Provides comprehensive endpoints for fetching post collections or individual records using filtered queries. ([source](https://developer.wordpress.org/rest-api/reference/posts/))
- [Collection Pagination](https://awesome-repositories.com/f/data-databases/collection-pagination.md) — Retrieves large data collections in smaller chunks using page numbers or offsets. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/pagination/))
- [Permission Callbacks](https://awesome-repositories.com/f/data-databases/data-feeds/public-access-controls/public-endpoint-access/permission-callbacks.md) — Checks user permissions via internal callbacks before executing endpoints to ensure data privacy. ([source](https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/))
- [Resource Collection Querying](https://awesome-repositories.com/f/data-databases/query-sorting/query-filters/collection-based-filtering/resource-collection-querying.md) — Allows retrieval of resource lists with support for custom ordering, filtering, and automatic pagination. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/backbone-javascript-client/))
- [Result Sorting](https://awesome-repositories.com/f/data-databases/result-sorting.md) — Organizes returned data in ascending or descending order based on specific resource fields. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/pagination/))

### Development Tools & Productivity

- [Server-Side RESTful Controllers](https://awesome-repositories.com/f/development-tools-productivity/rest-apis/server-side-restful-controllers.md) — Provides a framework for defining custom resource controllers and endpoints to manage site data.
- [Server Capability Discovery](https://awesome-repositories.com/f/development-tools-productivity/api-discovery-tools/server-capability-discovery.md) — Exposes self-documentation and endpoint details via an index endpoint for machine-discovery of API capabilities. ([source](https://developer.wordpress.org/rest-api/reference/))
- [API Root Discovery](https://awesome-repositories.com/f/development-tools-productivity/api-discovery-tools/server-discovery-apis/api-root-discovery.md) — Enables clients to locate the API entry point using link headers or HTML elements for automated integration. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/discovery/))
- [Regex-Based Route Matching](https://awesome-repositories.com/f/development-tools-productivity/regular-expressions/route-pattern-matching/regex-based-route-matching.md) — Uses regular expressions in request paths to capture variables and route them to specific endpoint handlers.

### Security & Cryptography

- [Application Passwords](https://awesome-repositories.com/f/security-cryptography/application-passwords.md) — Provides a system for creating, retrieving, and deleting unique application passwords for external service access. ([source](https://developer.wordpress.org/rest-api/reference/application-passwords/))
- [API Request Authentication](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/machine-and-protocol-identity/api-machine-authentication/api-request-authentication.md) — Implements a security layer that validates API requests using a variety of authentication methods including cookies and passwords.
- [Basic Authentication](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/user-facing-login-methods/standard-web-authentication-schemes/basic-authentication.md) — Validates requests from external scripts using unique, user-generated passwords via standard HTTP Basic Authentication. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/))
- [Session Cookie Authentications](https://awesome-repositories.com/f/security-cryptography/session-cookie-handlers/cookie-based-authentication-bridges/session-cookie-authentications.md) — Uses browser cookies and unique tokens to verify user identity and prevent cross-site request forgery. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/))
- [Hybrid Token-Cookie Authentications](https://awesome-repositories.com/f/security-cryptography/session-cookie-handlers/cookie-based-authentication-bridges/session-cookie-authentications/hybrid-token-cookie-authentications.md) — Verifies identity through a combination of session cookies and application-specific passwords for secure remote API access.
- [Web Request Authorizations](https://awesome-repositories.com/f/security-cryptography/web-request-authorizations.md) — Verifies that incoming HTTP requests meet required privilege levels before allowing data modification. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/))
- [Authentication Discovery](https://awesome-repositories.com/f/security-cryptography/authentication-discovery.md) — Allows clients to programmatically query the root directory for supported authentication methods and configurations. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/discovery/))
- [Third-Party Identity Integrations](https://awesome-repositories.com/f/security-cryptography/session-authentication/third-party-identity-integrations.md) — Integrates third-party identity standards such as OAuth and tokens to verify remote applications. ([source](https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/))

### System Administration & Monitoring

- [User Detail Retrievers](https://awesome-repositories.com/f/system-administration-monitoring/administrative-operations/user-administration/user-detail-retrievers.md) — Fetches individual user records or filtered collections to return membership and identity details. ([source](https://developer.wordpress.org/rest-api/reference/users/))

### DevOps & Infrastructure

- [Administrative Site Settings](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/server-and-site-configuration/site-configuration-management/administrative-site-settings.md) — Exposes site-wide configuration and global settings through a programmatic JSON response. ([source](https://developer.wordpress.org/rest-api/reference/settings/))
- [Programmatic Site Administration](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/server-and-site-configuration/site-configuration-management/administrative-site-settings/programmatic-site-administration.md) — Allows remote management of site settings, plugins, themes, and user accounts through a programmatic interface.

### User Interface & Experience

- [Content Block HTML Rendering](https://awesome-repositories.com/f/user-interface-experience/output-renderers/server-side/content-block-html-rendering.md) — Converts block markup into final HTML using a server-side rendering engine. ([source](https://developer.wordpress.org/rest-api/reference/rendered-blocks/))
