openapi: 3.2.0 info: title: Arbor Biotechnologies Content API (WordPress REST) Metadata API version: 1.0.0 summary: Read-only, anonymously accessible content API served by the Arbor Biotechnologies corporate site. description: 'Arbor Biotechnologies publishes no product or developer API. This document was DERIVED by API Evangelist from the live WordPress REST route index at https://arbor.bio/wp-json (18 namespaces, 341 declared routes) on 2026-07-31, and reduced to only those operations that were individually probed WITHOUT credentials and observed returning HTTP 200. It is an incidental content-management surface, not a supported API product: Arbor issues no keys, publishes no developer documentation, offers no support channel for it, and its terms of use do not mention API access. Every write, administrative and site-configuration route declared in the route index is excluded here because anonymous callers receive 401 (`rest_forbidden`, `rest_cannot_view_plugins`, `rest_cannot_view_themes`, `rest_user_cannot_view`) or 403 (`rest_comment_disabled`). Observed collection sizes on 2026-07-31: 59 posts (press releases, 2018-2026), 11 pages, 11 categories, 0 tags, 394 media items reported by X-WP-Total of which 4 are returned to anonymous callers, 60 searchable objects, 1 contact form.' contact: name: Arbor Biotechnologies url: https://arbor.bio/get-in-touch/ license: name: Proprietary — see Arbor Biotechnologies Terms of Use url: https://arbor.bio/terms-of-use/ x-derived-by: API Evangelist enrichment pipeline x-derived-from: https://arbor.bio/wp-json x-derived-on: '2026-07-31' x-provider-published: false x-api-posture: incidental-cms-surface servers: - url: https://arbor.bio/wp-json description: Production WordPress REST API on the Arbor Biotechnologies corporate site. security: [] tags: - name: metadata description: Registered post types, taxonomies and statuses. paths: /wp/v2/types: get: operationId: listTypes summary: List registered post types description: The registered post types and their REST base paths. 15 observed, of which only `post`, `page`, `attachment` and `wpcf7_contact_form` are anonymously readable. tags: - metadata responses: '200': description: A map of post type name to definition. content: application/json: schema: type: object additionalProperties: $ref: '#/components/schemas/PostType' /wp/v2/types/{type}: get: operationId: getType summary: Get one registered post type tags: - metadata parameters: - name: type in: path required: true description: The post type slug, e.g. `post` or `page`. schema: type: string responses: '200': description: The post type definition. content: application/json: schema: $ref: '#/components/schemas/PostType' '404': $ref: '#/components/responses/NotFound' /wp/v2/taxonomies: get: operationId: listTaxonomies summary: List registered taxonomies description: The registered taxonomies and the post types they apply to. tags: - metadata responses: '200': description: A map of taxonomy name to definition. content: application/json: schema: type: object additionalProperties: $ref: '#/components/schemas/Taxonomy' /wp/v2/taxonomies/{taxonomy}: get: operationId: getTaxonomy summary: Get one registered taxonomy tags: - metadata parameters: - name: taxonomy in: path required: true description: The taxonomy slug, e.g. `category` or `post_tag`. schema: type: string responses: '200': description: The taxonomy definition. content: application/json: schema: $ref: '#/components/schemas/Taxonomy' '404': $ref: '#/components/responses/NotFound' /wp/v2/statuses: get: operationId: listStatuses summary: List registered post statuses tags: - metadata responses: '200': description: A map of status name to definition. Only `publish` is exposed anonymously. content: application/json: schema: type: object additionalProperties: $ref: '#/components/schemas/Status' /wp/v2/statuses/{status}: get: operationId: getStatus summary: Get one registered post status tags: - metadata parameters: - name: status in: path required: true description: The status slug, e.g. `publish`. schema: type: string responses: '200': description: The status definition. content: application/json: schema: $ref: '#/components/schemas/Status' '404': $ref: '#/components/responses/NotFound' components: schemas: Error: type: object description: The WordPress REST error envelope. This is NOT RFC 9457 Problem Details — the media type is application/json, there is no `type` URI, and the HTTP status is repeated inside `data.status`. required: - code - message - data properties: code: type: string description: Machine-readable error code e.g. rest_post_invalid_id.: null message: type: string description: Human-readable message. data: type: object properties: status: type: integer params: type: object details: type: object Links: type: object description: HAL-style relation map (self, collection, about, author, wp:featuredmedia, wp:attachment, wp:term, replies). Appending `_embed` inlines these under `_embedded`. additionalProperties: type: array items: type: object properties: href: type: string format: uri embeddable: type: boolean templated: type: boolean PostType: type: object properties: name: type: string slug: type: string description: type: string hierarchical: type: boolean has_archive: type: - boolean - string rest_base: type: string rest_namespace: type: string taxonomies: type: array items: type: string _links: $ref: '#/components/schemas/Links' Status: type: object properties: name: type: string slug: type: string public: type: boolean queryable: type: boolean date_floating: type: boolean _links: $ref: '#/components/schemas/Links' Taxonomy: type: object properties: name: type: string slug: type: string description: type: string types: type: array items: type: string hierarchical: type: boolean rest_base: type: string rest_namespace: type: string _links: $ref: '#/components/schemas/Links' responses: NotFound: description: No route or resource matched. content: application/json: schema: $ref: '#/components/schemas/Error' example: code: rest_no_route message: No route was found matching the URL and request method. data: status: 404 securitySchemes: applicationPassword: type: http scheme: basic description: WordPress application passwords (HTTP Basic per RFC 7617), advertised by the site's own route index. Required only for the write and administrative routes, none of which appear in this document. Arbor Biotechnologies issues no public credentials, so this scheme is declared by the platform but unreachable for third parties. externalDocs: description: WordPress REST API handbook — the upstream reference for these routes and parameters. url: https://developer.wordpress.org/rest-api/reference/