Ankorstore Media API
Operations for documents linked to fulfillment requests
Operations for documents linked to fulfillment requests
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/ankorstore-media-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 1.1.0
title: Fulfillment service Media API
summary: API specification for the fulfillment service
description: Operations for documents linked to fulfillment requests
servers:
- url: http://www.ankorlocal.com:8000
description: Local Development Server
- url: https://www.preprod.ankorstore.com
description: Staging Environment
- url: https://www.ankorstore.com
description: Prod Environment
tags:
- name: Media
description: Operations for documents linked to fulfillment requests
paths:
/api/fulfillment/v1/media:
delete:
summary: Delete every media linked to a masterOrderUUID
description: 'Delete one or more PDF documents linked to a fulfillment order (`masterOrderUuid`).
'
operationId: deleteMediaByMasterOrder
parameters:
- name: masterOrderUuid
in: query
required: true
schema:
type: string
format: uuid
description: UUID of the master order whose media will be deleted
responses:
'200':
description: Media document successfully deleted
'404':
description: Master order not found
tags:
- Media
get:
summary: List media documents
description: 'Retrieve all media documents linked to a fulfillment order (`masterOrderUuid`).
'
operationId: listMedia
parameters:
- in: query
name: filter[masterOrderUuid]
schema:
type: string
format: uuid
required: true
description: UUID of the master order to filter documents by.
- in: query
name: fields[media]
schema:
type: string
required: false
description: 'JSON:API sparse fieldsets parameter. When specified, only the requested fields are returned in the response. If omitted, default fields are returned (`masterOrderUuid`, `originalFilename`, `type`, `createdAt`).
'
responses:
'200':
description: Successfully retrieved media documents.
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/MediaList'
jsonapi:
$ref: '#/components/schemas/JsonApiObject'
'400':
description: Missing or invalid query parameter.
content:
application/vnd.api+json:
schema:
type: object
properties:
errors:
$ref: '#/components/schemas/ErrorList'
jsonapi:
$ref: '#/components/schemas/JsonApiObject'
'500':
description: Internal server error while fetching documents.
content:
application/vnd.api+json:
schema:
type: object
properties:
errors:
$ref: '#/components/schemas/ErrorList'
jsonapi:
$ref: '#/components/schemas/JsonApiObject'
tags:
- Media
/api/fulfillment/v1/media/{mediaUuid}:
delete:
summary: Delete a specific media document
description: Delete a specific document by its UUID
operationId: deleteMediaByUuid
parameters:
- name: mediaUuid
in: path
required: true
schema:
type: string
format: uuid
description: UUID of the media document to delete
responses:
'200':
description: Media document successfully deleted
'404':
description: Media document not found
tags:
- Media
/api/fulfillment/v1/media/upload:
post:
summary: Upload PDF documents
description: 'Upload one or more PDF documents linked to a fulfillment order (`masterOrderUuid`). Each document may include its own UUID, or the backend can generate one if not provided.
'
operationId: uploadMedia
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- masterOrderUuid
- documents
properties:
masterOrderUuid:
type: string
format: uuid
description: UUID of the master order to which the documents will be linked.
documents:
type: array
description: List of documents to upload.
items:
type: object
properties:
file:
type: string
format: binary
description: PDF file to upload.
uuid:
type: string
format: uuid
description: Optional UUID for the document. If omitted, the server generates one.
type:
type: string
enum:
- invoice
- attachment
default: attachment
description: Type of the document. Defaults to 'attachment' if not specified.
encoding:
documents:
style: form
explode: true
responses:
'201':
description: Documents successfully uploaded.
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/MediaList'
jsonapi:
$ref: '#/components/schemas/JsonApiObject'
'422':
description: Validation error during upload.
content:
application/vnd.api+json:
schema:
type: object
properties:
errors:
$ref: '#/components/schemas/ErrorList'
jsonapi:
$ref: '#/components/schemas/JsonApiObject'
tags:
- Media
components:
schemas:
JsonApiObject:
type: object
description: JSON:API version information.
properties:
version:
type: string
example: '1.0'
description: JSON:API specification version.
additionalProperties: false
ErrorMeta:
type: object
description: Additional metadata for an error.
properties:
filename:
type: string
description: Name of the file related to the error.
additionalProperties: true
ErrorList:
type: array
description: List of errors.
items:
$ref: '#/components/schemas/Error'
MediaList:
type: array
description: List of media resources.
items:
$ref: '#/components/schemas/Media'
MediaAttributes:
type: object
description: Attributes describing an uploaded document.
properties:
masterOrderUuid:
type: string
format: uuid
description: UUID of the master order associated with the document.
originalFilename:
type: string
description: Original file name.
createdAt:
type: string
format: date-time
description: Date and time when the document was created.
type:
type: string
enum:
- invoice
- attachment
default: attachment
description: Type of the document. Defaults to 'attachment' if not specified.
content:
type: string
description: 'Document content. Only present when explicitly requested.
'
encoding:
type: string
description: 'Encoding format used for the content field. Only present when explicitly requested.
'
Error:
type: object
description: A single error item.
properties:
status:
type: string
example: '422'
description: HTTP status code.
code:
type: string
enum:
- invalid_file_extension
- file_too_large
- max_files_reached
- cannot_download_document
description: "Error code:\n * `invalid_file_extension`: at least one submitted file has an invalid extension.\n * `file_too_large`: at least one file exceeds the maximum allowed size.\n * `max_files_reached`: the maximum number of files for the master order has been reached.\n * `cannot_download_document`: failed to download document from storage.\n"
description:
type: string
description: Human-readable description of the error.
meta:
$ref: '#/components/schemas/ErrorMeta'
Media:
type: object
description: Representation of a media resource.
properties:
id:
type: string
format: uuid
description: Unique identifier of the uploaded document.
type:
type: string
example: media
description: Resource type (always `media`).
attributes:
$ref: '#/components/schemas/MediaAttributes'