IgGenix Comments API
The WordPress comments collection on iggenix.com. Anonymously readable and currently empty (HTTP 200, []) — comments are not used on this site. 7 operations across 2 paths; the write methods require authentication.
The WordPress comments collection on iggenix.com. Anonymously readable and currently empty (HTTP 200, []) — comments are not used on this site. 7 operations across 2 paths; the write methods require authentication.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/iggenix-comments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: IgGenix Content API (WordPress REST wp/v2) Comments API
version: wp/v2
summary: 'Public read surface of iggenix.com content: press releases, peer-reviewed publications, conference abstracts,
careers postings, pages, media, taxonomies and site search.'
description: 'IgGenix publishes iggenix.com on WordPress (hosted on WP Engine as iggenix.wpengine.com), which
exposes the WordPress REST API at https://iggenix.com/wp-json/. The wp/v2 namespace is anonymously readable
and returns the company''s press releases, peer-reviewed publications, conference abstracts, a careers post
type, pages, media library, taxonomies and a site-wide search endpoint as JSON.
This document was DERIVED mechanically by API Evangelist from the route-discovery document served at https://iggenix.com/wp-json/
on 2026-08-22 — every path, method, parameter, type, enum and default below is taken verbatim from that descriptor,
and each collection was confirmed with an anonymous GET. IgGenix does not publish an OpenAPI definition of its
own, and this is not a product API: it is the content API the CMS exposes. Write operations exist on these routes
but require authentication (WordPress Application Passwords over HTTP Basic); GET /wp/v2/settings and the wp-abilities/v1
registry return 401 rest_forbidden anonymously.
NOTE ON THE SITE ITSELF: on the date of derivation the HTML front end at iggenix.com served another company''s
home page (iECURE, canonical https://iecure.com/) for the site root and for every unmatched path, including
/privacy-policy/ and /the-iggenix-team/. The REST API and the custom-post-type archives (/publications/, /abstracts/,
/pressreleases/) are unambiguously IgGenix''s — the route index reports name "IgGenix" and returns IGNX001 peanut-allergy
content — so this contract is attributed to IgGenix. The HTML routing defect is recorded in review.yml.'
contact:
name: IgGenix
url: https://iggenix.com/
email: info@IgGenix.com
x-derived-by: API Evangelist enrichment pipeline
x-derived-from: https://iggenix.com/wp-json/
x-derived-on: '2026-08-22'
x-provider-published: false
servers:
- url: https://iggenix.com/wp-json
description: Production
tags:
- name: Comments
paths:
/wp/v2/comments:
get:
operationId: getComments
summary: GET /wp/v2/comments
tags:
- Comments
parameters:
- name: after
in: query
required: false
schema:
type: string
format: date-time
description: Limit response to comments published after a given ISO8601 compliant date.
- name: author
in: query
required: false
schema:
type: array
items:
type: integer
description: Limit result set to comments assigned to specific user IDs. Requires authorization.
- name: author_email
in: query
required: false
schema:
type: string
format: email
description: Limit result set to that from a specific author email. Requires authorization.
- name: author_exclude
in: query
required: false
schema:
type: array
items:
type: integer
description: Ensure result set excludes comments assigned to specific user IDs. Requires authorization.
- name: before
in: query
required: false
schema:
type: string
format: date-time
description: Limit response to comments published before a given ISO8601 compliant date.
- name: context
in: query
required: false
schema:
type: string
enum:
- view
- embed
- edit
default: view
description: Scope under which the request is made; determines fields present in response.
- name: exclude
in: query
required: false
schema:
type: array
default: []
items:
type: integer
description: Ensure result set excludes specific IDs.
- name: include
in: query
required: false
schema:
type: array
default: []
items:
type: integer
description: Limit result set to specific IDs.
- name: offset
in: query
required: false
schema:
type: integer
description: Offset the result set by a specific number of items.
- name: order
in: query
required: false
schema:
type: string
enum:
- asc
- desc
default: desc
description: Order sort attribute ascending or descending.
- name: orderby
in: query
required: false
schema:
type: string
enum:
- date
- date_gmt
- id
- include
- post
- parent
- type
default: date_gmt
description: Sort collection by comment attribute.
- name: page
in: query
required: false
schema:
type: integer
default: 1
minimum: 1
description: Current page of the collection.
- name: parent
in: query
required: false
schema:
type: array
default: []
items:
type: integer
description: Limit result set to comments of specific parent IDs.
- name: parent_exclude
in: query
required: false
schema:
type: array
default: []
items:
type: integer
description: Ensure result set excludes specific parent IDs.
- name: password
in: query
required: false
schema:
type: string
description: The password for the post if it is password protected.
- name: per_page
in: query
required: false
schema:
type: integer
default: 10
minimum: 1
maximum: 100
description: Maximum number of items to be returned in result set.
- name: post
in: query
required: false
schema:
type: array
default: []
items:
type: integer
description: Limit result set to comments assigned to specific post IDs.
- name: search
in: query
required: false
schema:
type: string
description: Limit results to those matching a string.
- name: status
in: query
required: false
schema:
type: string
default: approve
description: Limit result set to comments assigned a specific status. Requires authorization.
- name: type
in: query
required: false
schema:
type: string
default: comment
description: Limit result set to comments assigned a specific type. Requires authorization.
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': &id001
$ref: '#/components/responses/BadRequest'
'404': &id002
$ref: '#/components/responses/NotFound'
security:
- {}
- applicationPassword: []
post:
operationId: postComments
summary: POST /wp/v2/comments
tags:
- Comments
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
additionalProperties: true
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.
meta:
type: object
additionalProperties: true
description: Meta fields.
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.
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'401': &id003
$ref: '#/components/responses/Unauthorized'
'403': &id004
$ref: '#/components/responses/Forbidden'
'404': *id002
security:
- applicationPassword: []
/wp/v2/comments/{id}:
get:
operationId: getCommentsId
summary: GET /wp/v2/comments/{id}
tags:
- Comments
parameters:
- name: id
in: path
required: true
schema:
type: integer
x-wp-pattern: '[\d]+'
- name: context
in: query
required: false
schema:
type: string
enum:
- view
- embed
- edit
default: view
description: Scope under which the request is made; determines fields present in response.
- name: id
in: query
required: false
schema:
type: integer
description: Unique identifier for the comment.
- name: password
in: query
required: false
schema:
type: string
description: The password for the parent post of the comment (if the post is password protected).
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'404': *id002
security:
- {}
- applicationPassword: []
post:
operationId: postCommentsId
summary: POST /wp/v2/comments/{id}
tags:
- Comments
parameters:
- name: id
in: path
required: true
schema:
type: integer
x-wp-pattern: '[\d]+'
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
additionalProperties: true
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.
id:
type: integer
description: Unique identifier for the comment.
meta:
type: object
additionalProperties: true
description: Meta fields.
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.
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'401': *id003
'403': *id004
'404': *id002
security:
- applicationPassword: []
put:
operationId: putCommentsId
summary: PUT /wp/v2/comments/{id}
tags:
- Comments
parameters:
- name: id
in: path
required: true
schema:
type: integer
x-wp-pattern: '[\d]+'
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
additionalProperties: true
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.
id:
type: integer
description: Unique identifier for the comment.
meta:
type: object
additionalProperties: true
description: Meta fields.
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.
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'401': *id003
'403': *id004
'404': *id002
security:
- applicationPassword: []
patch:
operationId: patchCommentsId
summary: PATCH /wp/v2/comments/{id}
tags:
- Comments
parameters:
- name: id
in: path
required: true
schema:
type: integer
x-wp-pattern: '[\d]+'
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
additionalProperties: true
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.
id:
type: integer
description: Unique identifier for the comment.
meta:
type: object
additionalProperties: true
description: Meta fields.
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.
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'401': *id003
'403': *id004
'404': *id002
security:
- applicationPassword: []
delete:
operationId: deleteCommentsId
summary: DELETE /wp/v2/comments/{id}
tags:
- Comments
parameters:
- name: id
in: path
required: true
schema:
type: integer
x-wp-pattern: '[\d]+'
- name: force
in: query
required: false
schema:
type: boolean
default: false
description: Whether to bypass Trash and force deletion.
- name: id
in: query
required: false
schema:
type: integer
description: Unique identifier for the comment.
- name: password
in: query
required: false
schema:
type: string
description: The password for the parent post of the comment (if the post is password protected).
responses:
'200':
description: Success. Collection responses also carry X-WP-Total and X-WP-TotalPages headers and an RFC
8288 Link header for pagination.
headers:
X-WP-Total:
description: Total number of items in the unpaginated collection.
schema:
type: integer
X-WP-TotalPages:
description: Total number of pages available at the current per_page.
schema:
type: integer
Link:
description: RFC 8288 next/prev pagination links.
schema:
type: string
content:
application/json:
schema:
type: object
additionalProperties: true
'400': *id001
'401': *id003
'403': *id004
'404': *id002
security:
- applicationPassword: []
components:
securitySchemes:
applicationPassword:
type: http
scheme: basic
description: WordPress Application Passwords over HTTP Basic. Advertised by the site's own route index at
https://iggenix.com/wp-json/ under authentication.application-passwords, with the authorization endpoint
at https://iggenix.com/wp-admin/authorize-application.php. Required only for write operations and for the
authenticated-read routes (/wp/v2/settings, /wp-abilities/v1/*); the content read surface is anonymous.
responses:
BadRequest:
description: Invalid parameter (rest_invalid_param).
content:
application/json:
schema:
$ref: '#/components/schemas/WpError'
Unauthorized:
description: Authentication required or rejected (rest_forbidden / rest_not_logged_in). Observed verbatim
on GET /wp/v2/settings and GET /wp-abilities/v1/abilities.
content:
application/json:
schema:
$ref: '#/components/schemas/WpError'
Forbidden:
description: Authenticated but not permitted (rest_cannot_view / rest_forbidden).
content:
application/json:
schema:
$ref: '#/components/schemas/WpError'
NotFound:
description: No route or resource matched (rest_no_route / rest_post_invalid_id).
content:
application/json:
schema:
$ref: '#/components/schemas/WpError'
schemas:
WpError:
type: object
description: The WordPress REST API error envelope (WP_Error serialized to JSON). Observed verbatim from this
host.
properties:
code:
type: string
description: Machine-readable error slug, e.g. rest_post_invalid_id.
message:
type: string
description: Human-readable message.
data:
type: object
properties:
status:
type: integer
description: HTTP status code, repeated in the body.
params:
type: object
additionalProperties: true
details:
type: object
additionalProperties: true
additionalProperties: true
required:
- code
- message
- data
example:
code: rest_post_invalid_id
message: Invalid post ID.
data:
status: 404
RenderedText:
type: object
description: WordPress renders text fields as an object with a rendered HTML string.
properties:
rendered:
type: string
description: HTML-rendered value.
raw:
type: string
description: Unrendered source; present only for authenticated context=edit.
Links:
type: object
description: HAL-style _links hypermedia block returned on every resource.
additionalProperties: true