How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Automattic Hosting API

The hosting API from Automattic — 23 operation(s) for hosting.

Automattic Hosting API is one of 385 APIs that Automattic publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Hosting. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a getting-started guide.

This API exposes 35 operations across 23 paths, and defines 1 schema. It is described by OpenAPI 3.2.0, at version v2.

Requests are made against a single base URL, https://public-api.wordpress.com.

35 operations 23 paths 1 schemas 3 DELETE18 GET2 PATCH10 POST2 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
v2
Base URL
https://public-api.wordpress.com/rest/v1.1
Authentication
OAuth 2.0, HTTP Bearer
Contact
Resource Areas
1

Authentication & Security 2

Automattic Hosting API declares 2 security schemes for authenticating requests. It supports OAuth 2.0 (oauth2) using the authorizationCode flow, exposing 21 scopes. It accepts HTTP bearer tokens (bearerAuth). By default, every request must be authenticated.

  • oauth2 — WordPress.com OAuth 2.1, per https://public-api.wordpress.com/.well-known/openid-configuration

Paths & Operations 35

Across 23 paths, the API surfaces 35 operations — 3 DELETE, 18 GET, 2 PATCH, 10 POST, 2 PUT. Each is listed below with its method, path, parameters, and response codes.

hosting 35
POST
/wpcom/v2/hosting/github/accounts
POST /wpcom/v2/hosting/github/accounts
postWpcomV2HostingGithubAccounts body → 200401404
GET
/wpcom/v2/hosting/github/app-authorize
GET /wpcom/v2/hosting/github/app-authorize
getWpcomV2HostingGithubAppAuthorize 3 params → 200401404
GET
/wpcom/v2/hosting/github/app-callback
GET /wpcom/v2/hosting/github/app-callback
getWpcomV2HostingGithubAppCallback 7 params → 200401404
GET
/wpcom/v2/hosting/github/app-install
GET /wpcom/v2/hosting/github/app-install
getWpcomV2HostingGithubAppInstall → 200401404
POST
/wpcom/v2/hosting/github/app-webhook
POST /wpcom/v2/hosting/github/app-webhook
postWpcomV2HostingGithubAppWebhook → 200401404
GET
/wpcom/v2/hosting/github/installations
GET /wpcom/v2/hosting/github/installations
getWpcomV2HostingGithubInstallations → 200401404
GET
/wpcom/v2/hosting/github/repositories
GET /wpcom/v2/hosting/github/repositories
getWpcomV2HostingGithubRepositories 1 param → 200401404
GET
/wpcom/v2/hosting/github/repository/branches
GET /wpcom/v2/hosting/github/repository/branches
getWpcomV2HostingGithubRepositoryBranches 3 params → 200401404
GET
/wpcom/v2/hosting/github/repository/pre-connect-checks
GET /wpcom/v2/hosting/github/repository/pre-connect-checks
getWpcomV2HostingGithubRepositoryPreConnectChecks 4 params → 200401404
GET
/wpcom/v2/hosting/github/workflow-templates
GET /wpcom/v2/hosting/github/workflow-templates
getWpcomV2HostingGithubWorkflowTemplates 2 params → 200401404
GET
/wpcom/v2/hosting/github/workflows
GET /wpcom/v2/hosting/github/workflows
getWpcomV2HostingGithubWorkflows 3 params → 200401404
POST
/wpcom/v2/hosting/github/workflows
POST /wpcom/v2/hosting/github/workflows
postWpcomV2HostingGithubWorkflows body → 200401404
GET
/wpcom/v2/hosting/github/workflows/checks
GET /wpcom/v2/hosting/github/workflows/checks
getWpcomV2HostingGithubWorkflowsChecks 4 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments
getWpcomV2SitesbyWpcomSiteHostingCodeDeployments 2 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments
postWpcomV2SitesbyWpcomSiteHostingCodeDeployments 1 param body → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentId 2 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}
postWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentId 2 params body → 200401404
PUT
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}
PUT /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}
putWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentId 2 params body → 200401404
PATCH
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}
PATCH /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}
patchWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentId 2 params body → 200401404
DELETE
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}
DELETE /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}
deleteWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentId 3 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/runs
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/runs
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdRuns 2 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/runs
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/runs
postWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdRuns 2 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/runs/{deployment_run_id}/logs
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/runs/{deploymentrunid}/logs
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdRunsbyDeploymentRunIdLogs 3 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/runs/{deployment_run_id}/logs/{command_identifier}
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/runs/{deploymentrunid}/logs/{commandidentifier}
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdRunsbyDeploymentRunIdLogsbyCommandIdentifier 4 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks
postWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooks 2 params body → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooks 2 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}
postWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookId 3 params body → 200401404
PUT
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}
PUT /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}
putWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookId 3 params body → 200401404
PATCH
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}
PATCH /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}
patchWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookId 3 params body → 200401404
DELETE
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}
DELETE /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}
deleteWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookId 3 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}/deliveries
GET /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}/deliveries
getWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookIdDeliveries 3 params → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/code-deployments/{deployment_id}/webhooks/{webhook_id}/test
POST /wpcom/v2/sites/{wpcomsite}/hosting/code-deployments/{deploymentid}/webhooks/{webhookid}/test
postWpcomV2SitesbyWpcomSiteHostingCodeDeploymentsbyDeploymentIdWebhooksbyWebhookIdTest 3 params → 200401404
GET
/wpcom/v2/sites/{wpcom_site}/hosting/ssh-keys
GET /wpcom/v2/sites/{wpcomsite}/hosting/ssh-keys
getWpcomV2SitesbyWpcomSiteHostingSshKeys 1 param → 200401404
POST
/wpcom/v2/sites/{wpcom_site}/hosting/ssh-keys
POST /wpcom/v2/sites/{wpcomsite}/hosting/ssh-keys
postWpcomV2SitesbyWpcomSiteHostingSshKeys 1 param body → 200401404
DELETE
/wpcom/v2/sites/{wpcom_site}/hosting/ssh-keys/{user_name}/{name}
DELETE /wpcom/v2/sites/{wpcomsite}/hosting/ssh-keys/{username}/{name}
deleteWpcomV2SitesbyWpcomSiteHostingSshKeysbyUserNamebyName 3 params → 200401404

Schemas 1

The contract defines 1 schema that model the data the API accepts and returns. The most detailed is WPRestError (3 properties). Each schema is shown below with its type and property counts.

WPRestError
object
WordPress REST API error envelope (observed on public-api.wordpress.com).
3 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

automattic-hosting-api-openapi.yml Raw ↑

Other APIs Automattic publishes across the network.

WordPress.com MCP Server
WordPress VIP Platform API
Automattic A8c Lore API
Automattic A8cmentorship API
Automattic Abilities API
Automattic Activity API
Automattic Activity Log Events API
Automattic Activitypub API
Automattic Adflow API
Automattic Admin Bar API
Automattic Admin Color API
Automattic Admin Menu API
Where this information came from

This is an independent, third-party profile of Automattic Hosting API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.