# Aegis Marine Shipmanagement Media API # generated: '2026-09-09' # method: derived # source: https://aegisships.com/wp-json/ (live WordPress REST route index, fetched 2026-09-09) openapi: 3.1.0 info: title: Aegis Marine Shipmanagement Media API description: Anonymous read access to the media library behind aegisships.com — vessel and corporate photography, logos and page imagery, with their generated size variants and MIME metadata. 121 attachments existed at capture, the newest dated 2019. version: wp-v2 (WordPress core REST API, as observed 2026-09-09) contact: name: Aegis Marine Shipmanagement email: info@aegisships.com url: https://aegisships.com/contact/ x-generated-by: API Evangelist enrichment pipeline (local-v3) x-generated-from: live route index + observed responses at https://aegisships.com/wp-json/ x-provenance: generated: '2026-09-09' method: derived source: https://aegisships.com/wp-json/ (live WordPress REST route index, fetched 2026-09-09) note: Derived from the site's own self-describing WordPress route index and from responses actually fetched anonymously. No operation, parameter or schema here was invented; the surface is WordPress core, not a product API authored by Aegis Marine Shipmanagement. servers: - url: https://aegisships.com/wp-json description: WordPress REST API root for aegisships.com tags: - name: Media paths: /wp/v2/media: get: operationId: getMediaItems tags: - Media summary: List media description: Returns a paginated collection of media attachments. `X-WP-Total` read 121 when captured. parameters: - &id001 description: Scope of the returned content. schema: type: string enum: - view - embed default: view in: query name: context required: false - name: page in: query required: false description: Current page of the collection. schema: type: integer minimum: 1 default: 1 - name: per_page in: query required: false description: Maximum number of items returned per page. The API rejects values above 100 with HTTP 400 `rest_invalid_param`. schema: type: integer minimum: 1 maximum: 100 default: 10 - name: search in: query required: false description: Limit results to those matching a search string. schema: type: string - name: order in: query required: false description: Sort order. schema: type: string enum: - asc - desc - name: media_type in: query required: false description: Limit results to a coarse asset type. schema: type: string enum: - image - video - audio - application - file - name: mime_type in: query required: false description: Limit results to a specific MIME type. schema: type: string - name: parent in: query required: false description: Limit results to attachments attached to specific object ids. schema: type: array items: type: integer - name: _fields in: query required: false description: Comma-separated list of fields to return. schema: type: string responses: '200': description: A page of results. Total counts are returned in the `X-WP-Total` and `X-WP-TotalPages` response headers. headers: X-WP-Total: description: Total number of matching objects. schema: type: integer X-WP-TotalPages: description: Total number of pages available. schema: type: integer Link: description: RFC 8288 `next`/`prev` pagination links. schema: type: string content: application/json: schema: type: array items: $ref: '#/components/schemas/MediaItem' example: - &id002 id: 767 date: '2019-05-20T07:54:15' slug: preeminent-shipping-2 type: attachment link: https://aegisships.com/homepage/preeminent-shipping-2/ title: rendered: Preeminent-Shipping author: 1 alt_text: '' media_type: image mime_type: image/jpeg source_url: https://aegisships.com/wp-content/uploads/2019/05/Preeminent-Shipping.jpg '400': description: '`rest_invalid_param` — a query parameter failed validation (observed on `per_page=200`).' content: application/json: schema: $ref: '#/components/schemas/Error' example: code: rest_invalid_param message: 'Invalid parameter(s): per_page' data: status: 400 params: per_page: per_page must be between 1 (inclusive) and 100 (inclusive) /wp/v2/media/{id}: get: operationId: getMediaItem tags: - Media summary: Retrieve a media item description: Returns a single media attachment by numeric id. parameters: - name: id in: path required: true description: Unique numeric identifier for the object. schema: type: integer - *id001 responses: '200': description: The requested object. content: application/json: schema: $ref: '#/components/schemas/MediaItem' example: *id002 '404': description: '`rest_post_invalid_id` / `rest_no_route` — the object or route does not exist.' content: application/json: schema: $ref: '#/components/schemas/Error' example: code: rest_post_invalid_id message: Invalid post ID. data: status: 404 components: schemas: MediaItem: type: object description: A media library attachment. 121 exist at capture. properties: id: type: integer description: Unique identifier for the attachment. date: type: - string - 'null' format: date-time description: Upload date. slug: type: string description: Alphanumeric identifier unique to the attachment. type: type: string const: attachment description: Object type. link: type: string format: uri description: Attachment page URL. title: type: object properties: &id003 rendered: type: string description: HTML-rendered value. description: Attachment title. author: type: integer description: Identifier of the uploading user. Not anonymously resolvable — the Users collection returns HTTP 401. alt_text: type: string description: Alternative text for the asset. caption: type: object properties: *id003 description: Attachment caption. media_type: type: string description: Coarse asset type. enum: - image - file mime_type: type: string description: MIME type of the asset, e.g. `image/jpeg`. source_url: type: string format: uri description: Direct URL to the original uploaded file. media_details: type: object description: Width, height, file metadata and the generated size variants. additionalProperties: true post: type: - integer - 'null' description: Identifier of the object this attachment is attached to. References `Page.id`. _links: type: object description: HAL-style `_links` relations emitted by the WordPress REST API. additionalProperties: true Error: type: object description: WordPress REST API error envelope. Not RFC 9457 problem+json — it is served as `application/json` with a `code`/`message`/`data` shape. required: - code - message - data properties: code: type: string description: Machine-readable error code, e.g. `rest_post_invalid_id`. message: type: string description: Human-readable error message. data: type: object properties: status: type: integer description: HTTP status code, repeated in the body. params: type: object additionalProperties: type: string description: Per-parameter validation messages, present on 400.