Update File
Updates file metadata (title, type, visibility) and optionally replaces the file content in storage. If the file content is updated, the old file is replaced in Cloudflare R2. Triggers product update events for all items using this file.
/api/v1/{team_slug}/{app_slug}/files/{file_id}- API
- Management
- OpenAPI
- management-api
- Updated
- Apr 26, 2026
management-api:PATCH:/api/v1/{team_slug}/{app_slug}/files/{file_id}
Updates file metadata (title, type, visibility) and optionally replaces the file content in storage. If the file content is updated, the old file is replaced in Cloudflare R2. Triggers product update events for all items using this file.
API ownership
- API family: Management API
- Best for: Trusted back-office workflows that create, update, organize, or delete merchant-owned data.
- Do not use from: Browser-only storefront code or public clients.
- Guide route: /apis/management/latest
The OpenAPI contract defines the method, path, parameters, request body, and responses for this operation.
Operation
- Method:
PATCH - Path:
/api/v1/\{team_slug\}/\{app_slug\}/files/\{file_id\} - Summary: Update File
- Description: Updates file metadata (title, type, visibility) and optionally replaces the file content in storage. If the file content is updated, the old file is replaced in Cloudflare R2. Triggers product update events for all items using this file.
- OpenAPI contract: management-api
- Operation ID: Not documented in the OpenAPI contract.
Operation key uses API family, method, and path because this OpenAPI contract does not publish an operation ID.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| app_slug | path | Yes | string | App slug |
| team_slug | path | Yes | string | Team slug |
| file_id | path | Yes | string | File ID |
Request body
- Required: No
- Description: Not documented in the OpenAPI contract.
- Content: application/x-www-form-urlencoded (object)
Schema
| Property | Type | Required | Details |
|---|---|---|---|
title | string | No | File title |
type | string | No | File type |
file | string (binary) | No | format: binary File file to upload |
Generated example (synthetic):
{
"title": "string",
"type": "string",
"file": "string"
}Responses
| Status | Description | Content |
|---|---|---|
| 200 | File updated successfully | application/json (object) |
| 401 | Unauthorized access | application/json (object) |
| 404 | File not found | application/json (object) |
| 500 | Internal server error | application/json (object) |
200 - object
File Response
| Property | Type | Required | Details |
|---|---|---|---|
data | object | No | - |
details | string[] | No | Additional contextual information about the response. Used to provide supplementary details beyond the main data payload, such as validation warnings or processing notes |
success | boolean | No | - |
File
| Property | Type | Required | Details |
|---|---|---|---|
attributes | object[] | No | - |
created_at | string | No | - |
folder_id | string | No | - |
id | string | No | - |
public | boolean | No | - |
title | string | No | - |
translations | object | No | - |
type | string | No | - |
updated_at | string | No | - |
url | string | No | - |
Attribute
| Property | Type | Required | Details |
|---|---|---|---|
created_at | string | No | - |
description | string | No | - |
filterable | boolean | No | - |
id | string | No | - |
key | string | No | - |
name | string | No | - |
template_key | string | No | - |
template_name | string | No | - |
translatable | boolean | No | - |
translations | object | No | - |
updated_at | string | No | - |
values | object | No | - |
File Translation
| Property | Type | Required | Details |
|---|---|---|---|
title | object[] | No | - |
type | object[] | No | - |
{
"data": {
"attributes": [
{
"created_at": "string",
"description": "string",
"filterable": false,
"id": "string",
"key": "string",
"name": "string",
"template_key": "string",
"template_name": "string",
"translatable": false,
"translations": {
"description": null,
"name": null
},
"updated_at": "string",
"values": {}
}
],
"created_at": "string",
"folder_id": "string",
"id": "string",
"public": false,
"title": "string",
"translations": {
"title": [
{
"id": null,
"locale": null,
"value": null
}
],
"type": [
{
"id": null,
"locale": null,
"value": null
}
]
},
"type": "string",
"updated_at": "string",
"url": "string"
},
"details": [
"string"
],
"success": false
}401 - object
Error Message
| Property | Type | Required | Details |
|---|---|---|---|
details | string[] | No | - |
message | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": [
"string"
],
"message": "string",
"success": false
}404 - object
Error Message
| Property | Type | Required | Details |
|---|---|---|---|
details | string[] | No | - |
message | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": [
"string"
],
"message": "string",
"success": false
}500 - object
Error Message
| Property | Type | Required | Details |
|---|---|---|---|
details | string[] | No | - |
message | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": [
"string"
],
"message": "string",
"success": false
}Contract identity
Use these fields to confirm you are implementing the intended endpoint contract.
- API family: Management API
- Method:
PATCH - Path:
/api/v1/\{team_slug\}/\{app_slug\}/files/\{file_id\} - Operation ID: Not documented in the OpenAPI contract.
- OpenAPI tag: Files
- OpenAPI summary: Update File