---
updatedAt: 2026-08-06T10:19:00.000Z
agentTools:
  projectIndex: https://developers.bazaarvoice.com/v1.0-SocialCommerceAPI/llms.txt
---

# Upload media items

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "Media API",
    "description": "Curalate Media API",
    "version": "V1"
  },
  "servers": [
    {
      "url": "https://edge.curalate.com"
    }
  ],
  "paths": {
    "/v1/upload/{dataSourceId}": {
      "post": {
        "tags": [
          "Upload"
        ],
        "summary": "Upload media items",
        "parameters": [
          {
            "name": "dataSourceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "example": "DKQGLerBTQCDXwNS",
              "x-qualified-classname": "com.curalate.datasourcemanagement.model.api.v1.DataSourceId"
            },
            "x-qualified-classname": "com.curalate.datasourcemanagement.model.api.v1.DataSourceId"
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "mediaItem": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The operation completed successfully and yielded results.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadResponse"
                }
              }
            }
          },
          "400": {
            "description": "The input parameters are not valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorPayload"
                }
              }
            }
          },
          "404": {
            "description": "A requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorPayload"
                }
              }
            }
          },
          "500": {
            "description": "An unhandled exception has occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorPayload"
                }
              }
            }
          },
          "503": {
            "description": "API is temporarily unavailable.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorPayload"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Image": {
        "required": [
          "link"
        ],
        "type": "object",
        "properties": {
          "link": {
            "type": "string"
          }
        }
      },
      "NetworkPhoto": {
        "required": [
          "extraLarge",
          "extraLargeSquare",
          "id",
          "large",
          "largeSquare",
          "medium",
          "mediumSquare",
          "original",
          "small",
          "smallSquare"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "original": {
            "$ref": "#/components/schemas/Image"
          },
          "small": {
            "$ref": "#/components/schemas/Image"
          },
          "medium": {
            "$ref": "#/components/schemas/Image"
          },
          "large": {
            "$ref": "#/components/schemas/Image"
          },
          "extraLarge": {
            "$ref": "#/components/schemas/Image"
          },
          "smallSquare": {
            "$ref": "#/components/schemas/Image"
          },
          "mediumSquare": {
            "$ref": "#/components/schemas/Image"
          },
          "largeSquare": {
            "$ref": "#/components/schemas/Image"
          },
          "extraLargeSquare": {
            "$ref": "#/components/schemas/Image"
          },
          "type": {
            "type": "string"
          }
        }
      },
      "ErrorPayload": {
        "required": [
          "code",
          "errorId"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "enum": [
              "Unknown",
              "MediaApiBadRequest",
              "InvalidInput"
            ]
          },
          "errorId": {
            "type": "string",
            "format": "uuid"
          },
          "msg": {
            "type": "string"
          },
          "data": {
            "type": "object",
            "properties": {}
          }
        }
      },
      "UploadData": {
        "required": [
          "images",
          "videos"
        ],
        "type": "object",
        "properties": {
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkPhoto"
            }
          },
          "videos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadVideoResponse"
            }
          }
        }
      },
      "UploadError": {
        "required": [
          "message",
          "multipartItemName"
        ],
        "type": "object",
        "properties": {
          "multipartItemName": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "message": {
            "type": "string",
            "x-qualified-classname": "com.curalate.mediaapi.model.api.v1.ErrorMessage"
          }
        }
      },
      "UploadResponse": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UploadData"
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadError"
            }
          }
        }
      },
      "UploadVideoResponse": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "x-qualified-classname": "com.curalate.global.model.types.video.VideoId"
          }
        }
      }
    }
  }
}
```