Elastic Path · Schema
Files Introduction
Products are the items or services that you might want to sell in your store. In Product Experience Manager, products can also have associated rich media assets, such as product images or a file containing additional product details. You can do this using the Files API.
CommerceHeadless CommerceComposable CommerceeCommerceB2BProductsCatalogsOrdersPromotionsSubscriptionsPayments
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/elastic-path/main/json-schema/files.json",
"title": "Files Introduction",
"description": "Products are the items or services that you might want to sell in your store. In Product Experience Manager, products can also have associated rich media assets, such as product images or a file containing additional product details. You can do this using the Files API.",
"version": "26.0212.7185155",
"$defs": {
"ErrorResponse": {
"required": [
"errors"
],
"properties": {
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"File": {
"properties": {
"id": {
"description": "The unique identifier for this file.",
"$ref": "#/components/schemas/UUID"
},
"type": {
"description": "The type represents the object being returned.",
"type": "string",
"example": "file"
},
"file_name": {
"description": "The name of the file.",
"type": "string",
"example": "file_name.jpg"
},
"mime_type": {
"description": "The mime type of the file.",
"type": "string",
"example": "image/jpeg"
},
"file_size": {
"description": "The size of the file. Required when uploading files.",
"type": "integer",
"example": 36000
},
"public": {
"description": "DEPRECATED Whether the file public or not. Required when uploading files.",
"type": "boolean",
"example": true
},
"meta": {
"$ref": "#/components/schemas/FileMeta"
},
"links": {
"$ref": "#/components/schemas/Links"
},
"link": {
"$ref": "#/components/schemas/FileLink"
}
}
},
"FileMeta": {
"properties": {
"timestamps": {
"type": "object",
"description": "The date and time the file was created.",
"properties": {
"created_at": {
"description": "The date and time the file was created.",
"type": "string",
"example": "2023-10-11T13:02:25.293Z"
}
}
},
"dimensions": {
"description": "The file dimensions.",
"type": "object",
"properties": {
"width": {
"description": "The width of the file.",
"type": "integer",
"example": 1800
},
"height": {
"description": "The height of the file.",
"type": "integer",
"example": 1000
}
}
}
}
},
"ResultsMeta": {
"properties": {
"page": {
"type": "object",
"description": "Contains the results for the entire collection.",
"properties": {
"limit": {
"description": "The maximum number of records for all pages.",
"type": "integer",
"example": 100
},
"offset": {
"description": "The current offset by number of pages.",
"type": "integer",
"example": 0
},
"current": {
"description": "The current number of pages.",
"type": "integer",
"example": 1
},
"total": {
"description": "The total number of records for the entire collection.",
"type": "integer",
"example": 1
}
}
},
"results": {
"type": "object",
"description": "Contains the results for the entire collection.",
"properties": {
"total": {
"description": "The total number of records for the entire collection.",
"type": "integer",
"example": 1
}
}
}
}
},
"Links": {
"description": "Links are used to allow you to move between requests.",
"type": "object",
"properties": {
"self": {
"description": "Single entities use a self parameter with a link to that specific resource.",
"type": "string",
"example": "https://https://euwest.api.elasticpath.com//v2/files/ddc28c74-a7df-46be-b262-8fa69a6e7d52"
}
}
},
"ResultsLinks": {
"type": "object",
"description": "Links are used to allow you to move between requests.",
"properties": {
"self": {
"description": "Single entities use a self parameter with a link to that specific resource.",
"type": [
"string",
"null"
],
"example": "https://useast.api.elasticpath.com/v2/files?page[offset]=0&page[limit]=100"
},
"first": {
"description": "Always the first page.",
"type": [
"string",
"null"
],
"example": "https://useast.api.elasticpath.com/v2/files?page[offset]=0&page[limit]=100"
},
"last": {
"description": "This is `null` if there is only one page.",
"type": [
"string",
"null"
],
"example": "https://useast.api.elasticpath.com/v2/files?page[offset]=10&page[limit]=100"
}
}
},
"FileLink": {
"type": "object",
"description": "The publicly available URL for this file.",
"properties": {
"href": {
"description": "The publicly available URL for this file.",
"type": "string",
"example": "https://files-eu.epusercontent.com/e8c53cb0-120d-4ea5-8941-ce74dec06038/f8cf26b3-6d38-4275-937a-624a83994702.png"
}
}
},
"UUID": {
"type": "string",
"format": "uuid",
"example": "00000000-0000-0000-0000-000000000000"
},
"Error": {
"required": [
"status",
"title"
],
"properties": {
"status": {
"type": "integer",
"format": "int",
"description": "The HTTP response code of the error.",
"example": 500
},
"title": {
"type": "string",
"description": "A brief summary of the error.",
"example": "Internal server error"
},
"detail": {
"type": "string",
"description": "Optional additional detail about the error.",
"example": "An internal error has occurred."
},
"request_id": {
"type": "string",
"description": "Internal request ID.",
"example": "00000000-0000-0000-0000-000000000000"
},
"meta": {
"type": "object",
"description": "Additional supporting meta data for the error.",
"example": {
"missing_ids": [
"e7d50bd5-1833-43c0-9848-f9d325b08be8"
]
}
}
}
}
}
}