CUTISS Media API

The Media API from CUTISS — the media library of images, press assets and documents attached to pages, posts and newsroom items, with rendered source URLs and size variants. 842 items were readable anonymously at probe time.

OpenAPI Specification

cutiss-media-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: CUTISS Media API
  description: 'Read the CUTISS media library — images, documents and press assets attached to pages,
    posts and newsroom items — as JSON with their rendered source URLs and size variants. 842 items published
    at probe time.


    This is the WordPress REST API that serves cutiss.swiss. CUTISS publishes no product or developer
    API; this content surface is the only machine-readable API on the company''s public host. It is read-only
    without credentials — every write method and every administrative collection returns HTTP 401 `rest_forbidden`.
    Derived by API Evangelist from the live route index at https://cutiss.swiss/wp-json/ and live sample
    responses on 2026-08-11.'
  version: 1.0.0
  contact:
    name: CUTISS AG
    email: info@cutiss.swiss
    url: https://cutiss.swiss/contact/
  license:
    name: Proprietary — content © CUTISS AG
    url: https://cutiss.swiss/impressum-en/
servers:
- url: https://cutiss.swiss/wp-json/wp/v2
  description: CUTISS WordPress REST API (wp/v2 namespace)
tags:
- name: Media
  description: Read the CUTISS media library — images, documents and press assets attached to pages, posts
    and newsroom items — as JSON with their rendered source URLs and size variants. 842 items published
    at probe time.
paths:
  /media:
    get:
      operationId: listMedia
      summary: List media objects
      description: Returns a paginated collection of media objects from cutiss.swiss. Pagination totals
        are returned in the X-WP-Total and X-WP-TotalPages response headers.
      tags:
      - Media
      parameters:
      - name: after
        in: query
        description: Limit response to posts published after a given ISO8601 compliant date.
        schema:
          type: string
      - 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
      - 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: 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: media_type
        in: query
        description: Limit result set to attachments of a particular media type or media types.
        schema:
          type: array
          items:
            type: string
            enum:
            - image
            - video
            - text
            - application
            - audio
          default: null
      - name: mime_type
        in: query
        description: Limit result set to attachments of a particular MIME type or MIME types.
        schema:
          type: array
          items:
            type: string
          default: null
      - name: modified_after
        in: query
        description: Limit response to posts modified after a given ISO8601 compliant date.
        schema:
          type: string
      - name: modified_before
        in: query
        description: Limit response to posts modified before a given ISO8601 compliant date.
        schema:
          type: string
      - 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
          default: date
      - name: page
        in: query
        description: Current page of the collection.
        schema:
          type: integer
          default: 1
      - 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: per_page
        in: query
        description: Maximum number of items to be returned in result set.
        schema:
          type: integer
          default: 10
      - name: search
        in: query
        description: Limit results to those matching a string.
        schema:
          type: string
      - 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: search_semantics
        in: query
        description: How to interpret the search input.
        schema:
          type: string
          enum:
          - exact
      - 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
          items:
            type: string
            enum:
            - inherit
            - private
            - trash
          default: inherit
      responses:
        '200':
          description: Successful response.
          headers:
            X-WP-Total:
              description: Total number of objects in the collection.
              schema:
                type: integer
            X-WP-TotalPages:
              description: Total number of pages available at the requested per_page size.
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MediaItem'
        '400':
          description: Invalid parameter. Returns a WordPress REST error object with code `rest_invalid_param`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Not authorized. Returns `rest_forbidden` — the requested context or resource requires
            authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: No route or object matched. Returns `rest_no_route` or `rest_post_invalid_id`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /media/{id}:
    get:
      operationId: getMediaItem
      summary: Retrieve a single media object by id
      description: Returns one media object from cutiss.swiss by its numeric WordPress id.
      tags:
      - Media
      parameters:
      - name: id
        in: path
        description: Unique identifier for the post.
        schema:
          type: integer
        required: true
      - 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
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MediaItem'
        '400':
          description: Invalid parameter. Returns a WordPress REST error object with code `rest_invalid_param`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Not authorized. Returns `rest_forbidden` — the requested context or resource requires
            authentication.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: No route or object matched. Returns `rest_no_route` or `rest_post_invalid_id`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    MediaItem:
      type: object
      properties:
        id:
          type: integer
        date:
          type: string
        date_gmt:
          type: string
        guid:
          type: object
          properties:
            rendered:
              type: string
        modified:
          type: string
        modified_gmt:
          type: string
        slug:
          type: string
        status:
          type: string
        type:
          type: string
        link:
          type: string
        title:
          type: object
          properties:
            rendered:
              type: string
        author:
          type: integer
        featured_media:
          type: integer
        comment_status:
          type: string
        ping_status:
          type: string
        template:
          type: string
        meta:
          type: object
          properties:
            site-sidebar-layout:
              type: string
            site-content-layout:
              type: string
            ast-site-content-layout:
              type: string
            site-content-style:
              type: string
            site-sidebar-style:
              type: string
            ast-global-header-display:
              type: string
            ast-banner-title-visibility:
              type: string
            ast-main-header-display:
              type: string
            ast-hfb-above-header-display:
              type: string
            ast-hfb-below-header-display:
              type: string
            ast-hfb-mobile-header-display:
              type: string
            site-post-title:
              type: string
            ast-breadcrumbs-content:
              type: string
            ast-featured-img:
              type: string
            footer-sml-layout:
              type: string
            ast-disable-related-posts:
              type: string
            theme-transparent-header-meta:
              type: string
            adv-header-id-meta:
              type: string
            stick-header-meta:
              type: string
            header-above-stick-meta:
              type: string
            header-main-stick-meta:
              type: string
            header-below-stick-meta:
              type: string
            astra-migrate-meta-layouts:
              type: string
            ast-page-background-enabled:
              type: string
            ast-page-background-meta:
              type: object
              properties:
                desktop:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
                tablet:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
                mobile:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
            ast-content-background-meta:
              type: object
              properties:
                desktop:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
                tablet:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
                mobile:
                  type: object
                  properties:
                    background-color:
                      type: string
                    background-image:
                      type: string
                    background-repeat:
                      type: string
                    background-position:
                      type: string
                    background-size:
                      type: string
                    background-attachment:
                      type: string
                    background-type:
                      type: string
                    background-media:
                      type: string
                    overlay-type:
                      type: string
                    overlay-color:
                      type: string
                    overlay-opacity:
                      type: string
                    overlay-gradient:
                      type: string
        class_list:
          type: array
          items: {}
        acf:
          type: array
          items: {}
        description:
          type: object
          properties:
            rendered:
              type: string
        caption:
          type: object
          properties:
            rendered:
              type: string
        alt_text:
          type: string
        media_type:
          type: string
        mime_type:
          type: string
        media_details:
          type: object
          properties:
            width:
              type: integer
            height:
              type: integer
            file:
              type: string
            filesize:
              type: integer
            sizes:
              type: object
              properties:
                medium:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                large:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                thumbnail:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                medium_large:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                1536x1536:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                2048x2048:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    filesize:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
                full:
                  type: object
                  properties:
                    file:
                      type: string
                    width:
                      type: integer
                    height:
                      type: integer
                    mime_type:
                      type: string
                    source_url:
                      type: string
            image_meta:
              type: object
              properties:
                aperture:
                  type: string
                credit:
                  type: string
                camera:
                  type: string
                caption:
                  type: string
                created_timestamp:
                  type: string
                copyright:
                  type: string
                focal_length:
                  type: string
                iso:
                  type: string
                shutter_speed:
                  type: string
                title:
                  type: string
                orientation:
                  type: string
                keywords:
                  type: array
                  items: {}
                alt:
                  type: string
            original_image:
              type: string
        post:
          type: integer
        source_url:
          type: string
        filename:
          type: string
        filesize:
          type: integer
    Error:
      type: object
      description: The WordPress REST API error envelope returned on every 4xx/5xx response.
      properties:
        code:
          type: string
          description: Machine-readable error code, e.g. rest_forbidden.
        message:
          type: string
          description: Human-readable message. Localized — cutiss.swiss returns German text.
        data:
          type: object
          description: Error detail.
          properties:
            status:
              type: integer
              description: HTTP status code.
      required:
      - code
      - message
x-evidence:
  fetched: '2026-08-11'
  route_index: https://cutiss.swiss/wp-json/
  sample_request: https://cutiss.swiss/wp-json/wp/v2/media?per_page=1
  verified_total: 842
  note: Parameters derived verbatim from the live route index args; schema properties derived from a live
    sample response. No properties were invented.