openapi: 3.1.0 info: title: Accelsius News API version: wp/v2 summary: Public read surface of the `news` custom post type behind accelsius.com/in-the-news/. description: 'A WordPress custom post type Accelsius registered for third-party press coverage, served in the same wp/v2 namespace as core content and sharing the category and post_tag taxonomies. It is distinct from the press releases the company issues itself, which live in the `press-release` category of the resource-library `post` type. At time of capture the collection held 8 published items. Accelsius publishes accelsius.com on WordPress (WP Engine origin, Cloudflare edge, MalCare firewall) with the WordPress core REST API enabled and anonymously readable. This is NOT a product API that Accelsius offers to customers — Accelsius manufactures two-phase direct-to-chip liquid-cooling hardware and ships no developer program, SDK or product API. It is the content API behind the company marketing site, captured for discovery purposes. Anonymous access is read-only: the `Allow` response header on every collection is `GET`, and write operations require WordPress cookie authentication with an X-WP-Nonce header or an Application Password, returning HTTP 401 to anonymous callers.' contact: name: Accelsius url: https://accelsius.com/contact/ email: info@accelsius.com license: name: Site content - all rights reserved url: https://accelsius.com/privacy-policy/ x-apis-io-provenance: method: derived source: https://accelsius.com/wp-json/ derived_on: '2026-08-06' note: Parameters are transcribed verbatim from the `args` the site publishes for each route in its live WordPress route-discovery document at https://accelsius.com/wp-json/ (387 routes across 16 namespaces). Response schemas are derived from the field names and JSON types observed in live anonymous GET responses on 2026-08-06. Every collection operation documented here was probed anonymously and returned HTTP 200; routes that returned 401 without credentials (settings, menus, menu-items, templates, template-parts, themes, plugins, widgets, block-types, users/me) are deliberately omitted. No operation, parameter or field was invented, and no live response value is reproduced here as an example. x-provider-published: false servers: - url: https://accelsius.com/wp-json description: Production tags: - name: News description: Third-party press coverage of Accelsius, curated on accelsius.com/in-the-news/. paths: /wp/v2/news: get: tags: - News operationId: listNews summary: List news items description: Returns a paginated collection of published news items. security: [] responses: '200': description: A page of results. headers: X-WP-Total: $ref: '#/components/headers/XWPTotal' X-WP-TotalPages: $ref: '#/components/headers/XWPTotalPages' Link: $ref: '#/components/headers/LinkPagination' content: application/json: schema: type: array items: $ref: '#/components/schemas/NewsItem' '400': description: Invalid parameter (rest_invalid_param), e.g. per_page outside 1-100. content: application/json: schema: $ref: '#/components/schemas/WPError' parameters: - name: context in: query 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 description: Current page of the collection. schema: type: integer minimum: 1 default: 1 - name: per_page in: query description: Maximum number of items to be returned in result set. schema: type: integer minimum: 1 maximum: 100 default: 10 - name: search in: query description: Limit results to those matching a string. schema: type: string - name: after in: query description: Limit response to posts published after a given ISO8601 compliant date. schema: type: string format: date-time - name: modified_after in: query description: Limit response to posts modified after a given ISO8601 compliant date. schema: type: string format: date-time - name: before in: query description: Limit response to posts published before a given ISO8601 compliant date. schema: type: string format: date-time - name: modified_before in: query description: Limit response to posts modified before a given ISO8601 compliant date. schema: type: string format: date-time - name: exclude in: query description: Ensure result set excludes specific IDs. schema: type: array items: type: integer - name: include in: query description: Limit result set to specific IDs. schema: type: array items: type: integer - name: menu_order in: query description: Limit result set to posts with a specific menu_order value. schema: type: integer - name: search_semantics in: query description: How to interpret the search input. schema: type: string enum: - exact - name: offset in: query description: Offset the result set by a specific number of items. schema: type: integer - name: order in: query description: Order sort attribute ascending or descending. schema: type: string enum: - asc - desc default: desc - name: orderby in: query description: Sort collection by post attribute. schema: type: string enum: - author - date - id - include - modified - parent - relevance - slug - include_slugs - title - menu_order default: date - name: parent in: query description: Limit result set to items with particular parent IDs. schema: type: array items: type: integer - name: parent_exclude in: query description: Limit result set to all items except those of a particular parent ID. schema: type: array items: type: integer - name: search_columns in: query description: Array of column names to be searched. schema: type: array items: type: string enum: - post_title - post_content - post_excerpt - name: slug in: query description: Limit result set to posts with one or more specific slugs. schema: type: array items: type: string - name: status in: query description: Limit result set to posts assigned one or more statuses. schema: type: array default: publish items: type: string enum: - publish - future - draft - pending - private - trash - auto-draft - inherit - request-pending - request-confirmed - request-failed - request-completed - acf-disabled - dp-rewrite-republish - any - name: tax_relation in: query description: Limit result set based on relationship between multiple taxonomies. schema: type: string enum: - AND - OR - name: categories in: query description: Limit result set to items with specific terms assigned in the categories taxonomy. schema: type: object - name: categories_exclude in: query description: Limit result set to items except those with specific terms assigned in the categories taxonomy. schema: type: object - name: tags in: query description: Limit result set to items with specific terms assigned in the tags taxonomy. schema: type: object - name: tags_exclude in: query description: Limit result set to items except those with specific terms assigned in the tags taxonomy. schema: type: object - name: recent-news in: query description: Limit result set to items with specific terms assigned in the recent-news taxonomy. schema: type: object - name: recent-news_exclude in: query description: Limit result set to items except those with specific terms assigned in the recent-news taxonomy. schema: type: object x-observed-total: '8' /wp/v2/news/{id}: get: tags: - News operationId: getNewsItem summary: Get one news item description: Returns a single published news item by its numeric ID. security: [] parameters: - name: id in: path description: Unique identifier for the post. required: true schema: type: integer - name: context in: query 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 description: The password for the post if it is password protected. schema: type: string responses: '200': description: The requested object. content: application/json: schema: $ref: '#/components/schemas/NewsItem' '400': description: Invalid parameter (rest_invalid_param). content: application/json: schema: $ref: '#/components/schemas/WPError' '404': description: No object exists with that identifier (rest_post_invalid_id / rest_term_invalid). content: application/json: schema: $ref: '#/components/schemas/WPError' components: securitySchemes: applicationPassword: type: http scheme: basic description: WordPress Application Passwords over HTTP Basic. Advertised by the site at https://accelsius.com/wp-json/ under `authentication.application-passwords`. Every operation documented in this file is anonymous and takes no credential; this scheme is declared because it is the only credential the host accepts, and it governs the write and edit-context operations that are deliberately NOT documented here. schemas: WPError: type: object title: WPError description: The WordPress REST error envelope. It is NOT RFC 9457 problem+json — the media type is application/json and the shape is a flat object carrying a machine-readable `code` slug, a human `message`, and a `data` object repeating the HTTP status. properties: code: type: string description: Machine-readable error slug, e.g. rest_post_invalid_id. message: type: string description: Human-readable error message. data: type: object properties: status: type: integer description: HTTP status repeated in the body. required: - code - message NewsItem: type: object title: NewsItem description: A curated press-coverage item. properties: id: type: integer description: Unique numeric identifier for the object. date: type: string format: date-time description: Publication date in the site timezone (America/Chicago, GMT-5). date_gmt: type: string format: date-time description: Publication date as GMT. guid: type: object properties: rendered: type: string format: uri description: The globally unique identifier WordPress assigns the object. modified: type: string format: date-time description: Date the object was last modified, in the site timezone. modified_gmt: type: string format: date-time description: Date the object was last modified, as GMT. slug: type: string description: Alphanumeric identifier for the object, unique within its type. status: type: string description: Named publication status. Anonymous reads only ever return "publish". type: type: string description: Post type of the object. link: type: string format: uri description: Canonical URL of the object on accelsius.com. title: type: object properties: rendered: type: string description: Title of the object, rendered to HTML. content: type: object properties: rendered: type: string protected: type: boolean description: Body of the object, rendered to HTML. featured_media: type: integer description: ID of the featured attachment. Resolve against /wp/v2/media/{id}. parent: type: integer description: ID of the parent object, or 0 when there is none. menu_order: type: integer description: Ordering value used when displaying the object in a menu. template: type: string description: Theme file used to display the object. categories: type: array items: {} description: IDs of the terms assigned to the object in the category taxonomy. tags: type: array items: {} description: IDs of the terms assigned to the object in the post_tag taxonomy. recent-news: type: array items: {} class_list: type: array items: type: string description: CSS class names WordPress generates for the object. acf: type: array items: {} description: Advanced Custom Fields values registered on this post type by the site. yoast_head: type: string description: Yoast SEO head markup for the object, as an HTML string. yoast_head_json: type: object properties: title: type: string robots: type: object properties: index: type: string follow: type: string max-snippet: type: string max-image-preview: type: string max-video-preview: type: string canonical: type: string format: uri og_locale: type: string og_type: type: string og_title: type: string og_description: type: string og_url: type: string format: uri og_site_name: type: string article_modified_time: type: string format: date-time og_image: type: array items: type: object properties: width: type: integer height: type: integer url: type: string format: uri type: type: string twitter_card: type: string twitter_misc: type: object properties: Est. reading time: type: string schema: type: object properties: '@context': type: string format: uri '@graph': type: array items: type: object properties: '@type': {} '@id': {} url: {} name: {} isPartOf: {} primaryImageOfPage: {} image: {} thumbnailUrl: {} datePublished: {} dateModified: {} breadcrumb: {} inLanguage: {} potentialAction: {} description: Yoast SEO head metadata for the object, as structured JSON. _links: type: object properties: self: type: array items: type: object properties: href: type: string format: uri targetHints: type: object properties: allow: {} collection: type: array items: type: object properties: href: type: string format: uri about: type: array items: type: object properties: href: type: string format: uri wp:featuredmedia: type: array items: type: object properties: embeddable: type: boolean href: type: string format: uri wp:attachment: type: array items: type: object properties: href: type: string format: uri wp:term: type: array items: type: object properties: taxonomy: type: string embeddable: type: boolean href: type: string format: uri curies: type: array items: type: object properties: name: type: string href: type: string format: uri templated: type: boolean description: HAL-style link relations (self, collection, author, wp:term, wp:featuredmedia). required: - id - link - slug headers: XWPTotal: description: Total number of items in the unpaginated collection. schema: type: integer XWPTotalPages: description: Total number of pages at the requested per_page size. schema: type: integer LinkPagination: description: RFC 8288 Link header carrying rel="next" and rel="prev" for the collection. schema: type: string