openapi: 3.1.0 info: title: Accelsius Pages API version: wp/v2 summary: Public read surface of the static marketing pages of accelsius.com. description: 'The `page` type: the product, technology, services, partner, company, careers, FAQ and legal pages of accelsius.com, including the NeuCool IR150 and MR250 product pages, the Thermal Simulation Rack / Liquid Simulation System page, the multi-GPU page, the two-phase and direct-to-chip technology explainers, and the privacy policy. At time of capture the collection held 30 published pages, 29 of which are listed in the Yoast page sitemap. 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: Pages description: Static marketing, product, company and legal pages of accelsius.com. paths: /wp/v2/pages: get: tags: - Pages operationId: listPages summary: List pages description: 'Returns a paginated collection of published pages. Pages are hierarchical: use `parent` to walk the tree and `menu_order` to order siblings.' 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/Page' '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: author in: query description: Limit result set to posts assigned to specific authors. schema: type: array items: type: integer - name: author_exclude in: query description: Ensure result set excludes posts assigned to specific authors. schema: type: array items: type: integer - 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 x-observed-total: '30' /wp/v2/pages/{id}: get: tags: - Pages operationId: getPage summary: Get one page description: Returns a single published page by its numeric ID, including its rendered HTML body. 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: excerpt_length in: query description: Override the default excerpt length. schema: type: integer - 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/Page' '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 Page: type: object title: Page description: A static page on accelsius.com. 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. excerpt: type: object properties: rendered: type: string protected: type: boolean description: Excerpt for the object, rendered to HTML. author: type: integer description: ID of the author of the object. Resolve against /wp/v2/users/{id}. 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. comment_status: type: string description: Whether comments are open on the object. ping_status: type: string description: Whether the object accepts pingbacks. template: type: string description: Theme file used to display the object. meta: type: object properties: _acf_changed: type: boolean content-type: type: string footnotes: type: string description: Registered meta fields exposed for the object. 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 description: 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 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: {} datePublished: {} dateModified: {} description: {} 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 author: type: array items: type: object properties: embeddable: type: boolean href: type: string format: uri replies: type: array items: type: object properties: embeddable: type: boolean href: type: string format: uri version-history: type: array items: type: object properties: count: type: integer href: type: string format: uri wp:attachment: type: array items: type: object properties: 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