Allotex Taxonomy API

Categories and tags.

OpenAPI Specification

allotex-taxonomy-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Allotex Content Taxonomy API
  version: wp/v2
  summary: The anonymously readable WordPress REST content API behind us.allotex.com.
  description: 'Allotex Inc. is an ophthalmic biologics and device company; it runs no developer program and publishes no product API, no developer portal, no API reference and no SDKs. The only machine-readable, credential-free surface it exposes is the WordPress REST API that backs its corporate website at us.allotex.com, catalogued here.


    This document is DERIVED by the API Evangelist enrichment pipeline from the route index Allotex publishes at https://us.allotex.com/wp-json/ — 270 routes across 20 namespaces — and every operation below was fetched live and confirmed to return data anonymously on 2026-08-06. Routes that returned 401/403 without credentials (/wp/v2/settings, /wp/v2/menu-items, /wp/v2/themes, /wp/v2/plugins, /wp/v2/block-patterns/patterns, /wp-abilities/v1/*, /mcp/mcp-adapter-default-server, /contact-form-7/v1/contact-forms) are deliberately NOT modelled.


    Two things a consumer should know. First, unlike many Elementor-built sites, content.rendered IS populated on this site, so the full prose of all 16 corporate pages — About Us, Science, History, Conditions We Treat, Procedure, Refractive Surgeons, Medical Advisory Board, Our Team, Careers, Press, Conferences and Contact — is retrievable. Second, the posts collection is registered but empty: the Press page directs readers to Allotex''s LinkedIn page for news, so there is no on-site article feed to consume.


    This is not a product Allotex markets. It is the site''s own content surface, and it carries no published SLA, versioning policy, deprecation policy, rate limits or support channel. The wp/v2 contract itself is defined upstream by WordPress.'
  contact:
    name: Allotex Inc.
    url: https://us.allotex.com/for-europe/contact/
  license:
    name: GPL-2.0-or-later
    identifier: GPL-2.0-or-later
  x-provenance:
    method: derived
    source: https://us.allotex.com/wp-json/
    derived_by: API Evangelist enrichment pipeline
    verified: '2026-08-06'
    note: Operation set restricted to routes verified to return 200 anonymously. Schemas are modelled from live response bodies and the upstream WordPress REST API handbook; no field is invented.
servers:
- url: https://us.allotex.com/wp-json
  description: Allotex US corporate site (16 pages, 218 media items)
- url: https://allotex.com/wp-json
  description: Allotex global splash site (1 page; posts are unmodified theme demo content)
security: []
tags:
- name: taxonomy
  description: Categories and tags.
paths:
  /wp/v2/categories:
    get:
      operationId: listCategories
      summary: List categories
      description: 'Lists the category taxonomy. Verified 2026-08-06: 6 terms.'
      tags:
      - taxonomy
      parameters:
      - name: context
        in: query
        required: false
        description: Scope under which the request is made; determines fields present in the 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
          minimum: 1
      - name: per_page
        in: query
        required: false
        description: Maximum number of items to be returned in the result set.
        schema:
          type: integer
          default: 10
          minimum: 1
          maximum: 100
      - name: search
        in: query
        required: false
        description: Limit results to those matching a string.
        schema:
          type: string
      - name: order
        in: query
        required: false
        description: Order sort attribute ascending or descending.
        schema:
          type: string
          enum:
          - asc
          - desc
      - name: _fields
        in: query
        required: false
        description: Comma-separated list of fields to limit the response to.
        schema:
          type: string
      - name: _embed
        in: query
        required: false
        description: Embed linked resources (author, featured media, terms) into the response.
        schema:
          type: boolean
      - name: parent
        in: query
        required: false
        schema:
          type: integer
      - name: hide_empty
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: A category collection.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Term'
        '400':
          $ref: '#/components/responses/Error'
  /wp/v2/categories/{id}:
    get:
      operationId: getCategory
      summary: Get a category
      description: Retrieves a single category term. Verified against term 1 (Uncategorized).
      tags:
      - taxonomy
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier for the object.
        schema:
          type: integer
      responses:
        '200':
          description: A category term.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Term'
        '404':
          $ref: '#/components/responses/TermNotFound'
  /wp/v2/tags:
    get:
      operationId: listTags
      summary: List tags
      description: 'Lists the post_tag taxonomy. Verified 2026-08-06: 7 terms.'
      tags:
      - taxonomy
      parameters:
      - name: context
        in: query
        required: false
        description: Scope under which the request is made; determines fields present in the 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
          minimum: 1
      - name: per_page
        in: query
        required: false
        description: Maximum number of items to be returned in the result set.
        schema:
          type: integer
          default: 10
          minimum: 1
          maximum: 100
      - name: search
        in: query
        required: false
        description: Limit results to those matching a string.
        schema:
          type: string
      - name: order
        in: query
        required: false
        description: Order sort attribute ascending or descending.
        schema:
          type: string
          enum:
          - asc
          - desc
      - name: _fields
        in: query
        required: false
        description: Comma-separated list of fields to limit the response to.
        schema:
          type: string
      - name: _embed
        in: query
        required: false
        description: Embed linked resources (author, featured media, terms) into the response.
        schema:
          type: boolean
      responses:
        '200':
          description: A tag collection.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Term'
        '400':
          $ref: '#/components/responses/Error'
  /wp/v2/tags/{id}:
    get:
      operationId: getTag
      summary: Get a tag
      description: Retrieves a single tag term.
      tags:
      - taxonomy
      parameters:
      - name: id
        in: path
        required: true
        description: Unique identifier for the object.
        schema:
          type: integer
      responses:
        '200':
          description: A tag term.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Term'
        '404':
          $ref: '#/components/responses/TermNotFound'
components:
  schemas:
    RestError:
      type: object
      description: The WordPress REST error envelope. NOT RFC 9457 — the media type is application/json, not application/problem+json, and the field names are code/message/data.status rather than type/title/status/detail.
      required:
      - code
      - message
      - data
      properties:
        code:
          type: string
          example: rest_post_invalid_id
        message:
          type: string
          example: Invalid post ID.
        data:
          type: object
          properties:
            status:
              type: integer
              example: 404
            params:
              type: object
            details:
              type: object
    Term:
      type: object
      description: A taxonomy term (category or tag).
      properties:
        id:
          type: integer
        count:
          type: integer
        description:
          type: string
        link:
          type: string
          format: uri
        name:
          type: string
        slug:
          type: string
        taxonomy:
          type: string
        parent:
          type: integer
        _links:
          type: object
  responses:
    Error:
      description: A WordPress REST error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RestError'
    TermNotFound:
      description: The taxonomy term does not exist.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RestError'
          examples:
            term:
              value:
                code: rest_term_invalid
                message: Term does not exist.
                data:
                  status: 404
  securitySchemes:
    applicationPassword:
      type: http
      scheme: basic
      description: 'WordPress application passwords, the only authentication method the route index advertises (authorization endpoint: https://us.allotex.com/wp-admin/authorize-application.php). Credentials are issued only to WordPress user accounts on the site; Allotex offers no public signup, so this scheme is NOT obtainable by a third party. Every operation in this document is reachable anonymously and none of them requires it.'
externalDocs:
  description: The upstream WordPress REST API handbook that defines the wp/v2 contract. Allotex publishes no documentation of its own for this surface.
  url: https://developer.wordpress.org/rest-api/