openapi: 3.2.0 info: title: WordPress.com REST API — wpcom/v2 namespace Gravatar API version: v2 description: Derived by API Evangelist from the WordPress.com REST API route index published at https://public-api.wordpress.com/wpcom/v2/. Paths, HTTP methods, and parameter names/types/descriptions/defaults are taken verbatim from that index. Response schemas are not published in the route index, so successful responses are described but not schematised; the error envelope was observed live on public-api.wordpress.com. contact: name: Automattic url: https://developer.wordpress.com/docs/api/ x-derived-from: https://public-api.wordpress.com/wpcom/v2/ x-derived-by: API Evangelist enrichment pipeline servers: - url: https://public-api.wordpress.com security: - bearerAuth: [] tags: - name: gravatar paths: /wpcom/v2/gravatar/custom-domains/add-email-forward: post: operationId: postWpcomV2GravatarCustomDomainsAddEmailForward summary: POST /wpcom/v2/gravatar/custom-domains/add-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string required: - user_id - domain - mailbox - destination /wpcom/v2/gravatar/custom-domains/delete-email-forward: delete: operationId: deleteWpcomV2GravatarCustomDomainsDeleteEmailForward summary: DELETE /wpcom/v2/gravatar/custom-domains/delete-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: user_id in: query required: true schema: type: integer - name: domain in: query required: true schema: type: string - name: mailbox in: query required: true schema: type: string - name: destination in: query required: true schema: type: string /wpcom/v2/gravatar/custom-domains/email-forwards: get: operationId: getWpcomV2GravatarCustomDomainsEmailForwards summary: GET /wpcom/v2/gravatar/custom-domains/email-forwards tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: user_id in: query required: true schema: type: integer - name: domain in: query required: true schema: type: string /wpcom/v2/gravatar/custom-domains/purchase: get: operationId: getWpcomV2GravatarCustomDomainsPurchase summary: GET /wpcom/v2/gravatar/custom-domains/purchase tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: domain in: query required: true schema: type: string - name: user_id in: query required: true schema: type: integer /wpcom/v2/gravatar/custom-domains/set-auto-renew: post: operationId: postWpcomV2GravatarCustomDomainsSetAutoRenew summary: POST /wpcom/v2/gravatar/custom-domains/set-auto-renew tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: domain: type: string type: type: string user_id: type: integer subscription_id: type: integer required: - domain - type - user_id - subscription_id put: operationId: putWpcomV2GravatarCustomDomainsSetAutoRenew summary: PUT /wpcom/v2/gravatar/custom-domains/set-auto-renew tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: domain: type: string type: type: string user_id: type: integer subscription_id: type: integer required: - domain - type - user_id - subscription_id patch: operationId: patchWpcomV2GravatarCustomDomainsSetAutoRenew summary: PATCH /wpcom/v2/gravatar/custom-domains/set-auto-renew tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: domain: type: string type: type: string user_id: type: integer subscription_id: type: integer required: - domain - type - user_id - subscription_id /wpcom/v2/gravatar/custom-domains/set-email-forward: post: operationId: postWpcomV2GravatarCustomDomainsSetEmailForward summary: POST /wpcom/v2/gravatar/custom-domains/set-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string type: type: string required: - user_id - domain - mailbox - destination - type put: operationId: putWpcomV2GravatarCustomDomainsSetEmailForward summary: PUT /wpcom/v2/gravatar/custom-domains/set-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string type: type: string required: - user_id - domain - mailbox - destination - type patch: operationId: patchWpcomV2GravatarCustomDomainsSetEmailForward summary: PATCH /wpcom/v2/gravatar/custom-domains/set-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string type: type: string required: - user_id - domain - mailbox - destination - type /wpcom/v2/gravatar/custom-domains/update-email-forward: post: operationId: postWpcomV2GravatarCustomDomainsUpdateEmailForward summary: POST /wpcom/v2/gravatar/custom-domains/update-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string new_destination: type: string is_active: type: boolean required: - user_id - domain - mailbox - destination - new_destination - is_active put: operationId: putWpcomV2GravatarCustomDomainsUpdateEmailForward summary: PUT /wpcom/v2/gravatar/custom-domains/update-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string new_destination: type: string is_active: type: boolean required: - user_id - domain - mailbox - destination - new_destination - is_active patch: operationId: patchWpcomV2GravatarCustomDomainsUpdateEmailForward summary: PATCH /wpcom/v2/gravatar/custom-domains/update-email-forward tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer domain: type: string mailbox: type: string destination: type: string new_destination: type: string is_active: type: boolean required: - user_id - domain - mailbox - destination - new_destination - is_active /wpcom/v2/gravatar/developers/applications: post: operationId: postWpcomV2GravatarDevelopersApplications summary: POST /wpcom/v2/gravatar/developers/applications tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' requestBody: content: application/json: schema: type: object properties: user_id: type: integer title: type: string description: type: string organization_name: type: string organization_website: type: string required: - user_id - title - description - organization_name - organization_website get: operationId: getWpcomV2GravatarDevelopersApplications summary: GET /wpcom/v2/gravatar/developers/applications tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: user_id in: query required: true schema: type: integer /wpcom/v2/gravatar/developers/applications/count: get: operationId: getWpcomV2GravatarDevelopersApplicationsCount summary: GET /wpcom/v2/gravatar/developers/applications/count tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' /wpcom/v2/gravatar/developers/applications/{app_id}: delete: operationId: deleteWpcomV2GravatarDevelopersApplicationsbyAppId summary: DELETE /wpcom/v2/gravatar/developers/applications/{app_id} tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string - name: user_id in: query required: true schema: type: integer get: operationId: getWpcomV2GravatarDevelopersApplicationsbyAppId summary: GET /wpcom/v2/gravatar/developers/applications/{app_id} tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string post: operationId: postWpcomV2GravatarDevelopersApplicationsbyAppId summary: POST /wpcom/v2/gravatar/developers/applications/{app_id} tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: title: type: string description: type: string organization_name: type: string organization_website: type: string redirect_urls: type: array items: {} javascript_origins: type: array items: {} type: type: string user_id: type: integer icon: type: string put: operationId: putWpcomV2GravatarDevelopersApplicationsbyAppId summary: PUT /wpcom/v2/gravatar/developers/applications/{app_id} tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: title: type: string description: type: string organization_name: type: string organization_website: type: string redirect_urls: type: array items: {} javascript_origins: type: array items: {} type: type: string user_id: type: integer icon: type: string patch: operationId: patchWpcomV2GravatarDevelopersApplicationsbyAppId summary: PATCH /wpcom/v2/gravatar/developers/applications/{app_id} tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: title: type: string description: type: string organization_name: type: string organization_website: type: string redirect_urls: type: array items: {} javascript_origins: type: array items: {} type: type: string user_id: type: integer icon: type: string /wpcom/v2/gravatar/developers/applications/{app_id}/reset-secret: post: operationId: postWpcomV2GravatarDevelopersApplicationsbyAppIdResetSecret summary: POST /wpcom/v2/gravatar/developers/applications/{app_id}/reset-secret tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: user_id: type: integer required: - user_id put: operationId: putWpcomV2GravatarDevelopersApplicationsbyAppIdResetSecret summary: PUT /wpcom/v2/gravatar/developers/applications/{app_id}/reset-secret tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: user_id: type: integer required: - user_id patch: operationId: patchWpcomV2GravatarDevelopersApplicationsbyAppIdResetSecret summary: PATCH /wpcom/v2/gravatar/developers/applications/{app_id}/reset-secret tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: app_id in: path required: true schema: type: string requestBody: content: application/json: schema: type: object properties: user_id: type: integer required: - user_id /wpcom/v2/gravatar/emails-blocklist: get: operationId: getWpcomV2GravatarEmailsBlocklist summary: GET /wpcom/v2/gravatar/emails-blocklist tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: emails in: query required: true schema: type: array items: type: string description: List of emails delete: operationId: deleteWpcomV2GravatarEmailsBlocklist summary: DELETE /wpcom/v2/gravatar/emails-blocklist tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: emails in: query required: true schema: type: array items: type: string description: List of emails /wpcom/v2/gravatar/stats/recently-visited-profiles: get: operationId: getWpcomV2GravatarStatsRecentlyVisitedProfiles summary: GET /wpcom/v2/gravatar/stats/recently-visited-profiles tags: - gravatar responses: '200': description: OK '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/WPRestError' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/WPRestError' parameters: - name: limit in: query required: false schema: type: integer default: 1000 - name: minutes_back in: query required: false schema: type: integer default: 60 components: schemas: WPRestError: type: object description: WordPress REST API error envelope (observed on public-api.wordpress.com). properties: code: type: string example: rest_unauthorized message: type: string example: Authentication required. data: type: object properties: status: type: integer example: 401 securitySchemes: oauth2: type: oauth2 description: WordPress.com OAuth 2.1, per https://public-api.wordpress.com/.well-known/openid-configuration flows: authorizationCode: authorizationUrl: https://public-api.wordpress.com/oauth2-1/authorize tokenUrl: https://public-api.wordpress.com/oauth2-1/token refreshUrl: https://public-api.wordpress.com/oauth2-1/token scopes: global: '' auth: '' openid: '' profile: '' email: '' users: '' sites: '' posts: '' comments: '' taxonomy: '' follow: '' sharing: '' freshly-pressed: '' notifications: '' insights: '' read: '' stats: '' media: '' menus: '' batch: '' videos: '' bearerAuth: type: http scheme: bearer