Leapcure comments API
The comments API from Leapcure — 2 operation(s) for comments.
The comments API from Leapcure — 2 operation(s) for comments.
openapi: 3.1.0
info:
title: Leapcure Blog Content API (WordPress REST API) categories comments API
version: wp/v2
description: Public content API for the Leapcure blog (blog.leapcure.com), served by the WordPress REST API `wp/v2` namespace. Read operations on posts, pages, categories, tags, users, media, comments, search, taxonomies, types and statuses were verified to respond anonymously on 2026-07-19; write operations require authentication via WordPress application passwords. This document was derived by the API Evangelist enrichment pipeline from the route metadata the server itself publishes at https://blog.leapcure.com/wp-json/wp/v2 — no operations, parameters or schemas were invented.
contact:
name: Leapcure
email: info@leapcure.com
url: https://leapcure.com/
servers:
- url: https://blog.leapcure.com/wp-json
description: Leapcure blog WordPress REST API
security: []
tags:
- name: comments
paths:
/wp/v2/comments:
get:
operationId: listWpV2Comments
summary: GET /wp/v2/comments
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
- name: page
in: query
required: false
description: Current page of the collection.
schema:
type: integer
default: 1
- name: per_page
in: query
required: false
description: Maximum number of items to be returned in result set.
schema:
type: integer
default: 10
- name: search
in: query
required: false
description: Limit results to those matching a string.
schema:
type: string
- name: after
in: query
required: false
description: Limit response to comments published after a given ISO8601 compliant date.
schema:
type: string
format: date-time
- name: author
in: query
required: false
description: Limit result set to comments assigned to specific user IDs. Requires authorization.
schema:
type: array
items:
type: integer
- name: author_exclude
in: query
required: false
description: Ensure result set excludes comments assigned to specific user IDs. Requires authorization.
schema:
type: array
items:
type: integer
- name: author_email
in: query
required: false
description: Limit result set to that from a specific author email. Requires authorization.
schema:
type: string
format: email
- name: before
in: query
required: false
description: Limit response to comments published before a given ISO8601 compliant date.
schema:
type: string
format: date-time
- name: exclude
in: query
required: false
description: Ensure result set excludes specific IDs.
schema:
type: array
default: []
items:
type: integer
- name: include
in: query
required: false
description: Limit result set to specific IDs.
schema:
type: array
default: []
items:
type: integer
- name: offset
in: query
required: false
description: Offset the result set by a specific number of items.
schema:
type: integer
- name: order
in: query
required: false
description: Order sort attribute ascending or descending.
schema:
type: string
enum:
- asc
- desc
default: desc
- name: orderby
in: query
required: false
description: Sort collection by comment attribute.
schema:
type: string
enum:
- date
- date_gmt
- id
- include
- post
- parent
- type
default: date_gmt
- name: parent
in: query
required: false
description: Limit result set to comments of specific parent IDs.
schema:
type: array
default: []
items:
type: integer
- name: parent_exclude
in: query
required: false
description: Ensure result set excludes specific parent IDs.
schema:
type: array
default: []
items:
type: integer
- name: post
in: query
required: false
description: Limit result set to comments assigned to specific post IDs.
schema:
type: array
default: []
items:
type: integer
- name: status
in: query
required: false
description: Limit result set to comments assigned a specific status. Requires authorization.
schema:
type: string
default: approve
- name: type
in: query
required: false
description: Limit result set to comments assigned a specific type. Requires authorization.
schema:
type: string
default: comment
- name: password
in: query
required: false
description: The password for the post if it is password protected.
schema:
type: string
post:
operationId: createWpV2Comments
summary: POST /wp/v2/comments
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
author:
type: integer
description: The ID of the user object, if author was a user.
author_email:
type: string
format: email
description: Email address for the comment author.
author_ip:
type: string
format: ip
description: IP address for the comment author.
author_name:
type: string
description: Display name for the comment author.
author_url:
type: string
format: uri
description: URL for the comment author.
author_user_agent:
type: string
description: User agent for the comment author.
content:
type: object
description: The content for the comment.
date:
type: string
format: date-time
description: The date the comment was published, in the site's timezone.
date_gmt:
type: string
format: date-time
description: The date the comment was published, as GMT.
parent:
type: integer
default: 0
description: The ID for the parent of the comment.
post:
type: integer
default: 0
description: The ID of the associated post object.
status:
type: string
description: State of the comment.
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
/wp/v2/comments/{id}:
get:
operationId: getWpV2CommentsById
summary: GET /wp/v2/comments/{id}
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: id
in: path
required: true
schema:
type: integer
- name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in response.
schema:
type: string
enum:
- view
- embed
- edit
default: view
- name: password
in: query
required: false
description: The password for the parent post of the comment (if the post is password protected).
schema:
type: string
post:
operationId: createWpV2CommentsById
summary: POST /wp/v2/comments/{id}
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: id
in: path
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
author:
type: integer
description: The ID of the user object, if author was a user.
author_email:
type: string
format: email
description: Email address for the comment author.
author_ip:
type: string
format: ip
description: IP address for the comment author.
author_name:
type: string
description: Display name for the comment author.
author_url:
type: string
format: uri
description: URL for the comment author.
author_user_agent:
type: string
description: User agent for the comment author.
content:
type: object
description: The content for the comment.
date:
type: string
format: date-time
description: The date the comment was published, in the site's timezone.
date_gmt:
type: string
format: date-time
description: The date the comment was published, as GMT.
parent:
type: integer
description: The ID for the parent of the comment.
post:
type: integer
description: The ID of the associated post object.
status:
type: string
description: State of the comment.
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
put:
operationId: replaceWpV2CommentsById
summary: PUT /wp/v2/comments/{id}
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: id
in: path
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
author:
type: integer
description: The ID of the user object, if author was a user.
author_email:
type: string
format: email
description: Email address for the comment author.
author_ip:
type: string
format: ip
description: IP address for the comment author.
author_name:
type: string
description: Display name for the comment author.
author_url:
type: string
format: uri
description: URL for the comment author.
author_user_agent:
type: string
description: User agent for the comment author.
content:
type: object
description: The content for the comment.
date:
type: string
format: date-time
description: The date the comment was published, in the site's timezone.
date_gmt:
type: string
format: date-time
description: The date the comment was published, as GMT.
parent:
type: integer
description: The ID for the parent of the comment.
post:
type: integer
description: The ID of the associated post object.
status:
type: string
description: State of the comment.
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
patch:
operationId: updateWpV2CommentsById
summary: PATCH /wp/v2/comments/{id}
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: id
in: path
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
author:
type: integer
description: The ID of the user object, if author was a user.
author_email:
type: string
format: email
description: Email address for the comment author.
author_ip:
type: string
format: ip
description: IP address for the comment author.
author_name:
type: string
description: Display name for the comment author.
author_url:
type: string
format: uri
description: URL for the comment author.
author_user_agent:
type: string
description: User agent for the comment author.
content:
type: object
description: The content for the comment.
date:
type: string
format: date-time
description: The date the comment was published, in the site's timezone.
date_gmt:
type: string
format: date-time
description: The date the comment was published, as GMT.
parent:
type: integer
description: The ID for the parent of the comment.
post:
type: integer
description: The ID of the associated post object.
status:
type: string
description: State of the comment.
meta:
type: object
description: Meta fields.
security:
- applicationPassword: []
delete:
operationId: deleteWpV2CommentsById
summary: DELETE /wp/v2/comments/{id}
tags:
- comments
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
- name: id
in: path
required: true
schema:
type: integer
- name: force
in: query
required: false
description: Whether to bypass Trash and force deletion.
schema:
type: boolean
default: false
- name: password
in: query
required: false
description: The password for the parent post of the comment (if the post is password protected).
schema:
type: string
security:
- applicationPassword: []
components:
schemas:
Error:
type: object
description: WordPress REST API error envelope.
properties:
code:
type: string
description: Machine-readable error code, e.g. rest_forbidden.
message:
type: string
description: Human-readable error message.
data:
type: object
properties:
status:
type: integer
securitySchemes:
applicationPassword:
type: http
scheme: basic
description: WordPress application passwords. Authorize at https://blog.leapcure.com/wp-admin/authorize-application.php (advertised in the /wp-json/ discovery document).