---
updatedAt: 2026-09-04T07:06:48.000Z
agentTools:
  projectIndex: https://documentation.indigitall.com/llms.txt
---

# Upload campaign multimedia

Adds a multimedia to the given campaign's id


# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "version": "2.0.0",
    "title": "INDIGITALL API",
    "x-logo": {
      "url": "https://console.indigitall.com/images/logo_verdeblanco@2x.png",
      "backgroundColor": "#0F3B7A"
    },
    "description": "\n### Introduction:\nThis documentation describes every endpoint of Indigitall's API v2\n\nAPI BASE URL: https://api.indigitall.com/v2\n\n### Authentication:\n\nMost of the endpoints of the API needs an Authorization header.\n\nThere are two Authorization ways:\n\n- If your intention is to manage API calls with a server-side script you have to create a Server key through Indigitall's console.\n\n  You can set the following Authorization Header : 'Authorization: ServerKey {ServerKey}'\n- If your intention is to integrate this API for front-end users POST /auth endpoint authorizes a user and returns an access token.\n\n  You can set the following Authorization Header : 'Authorization: Bearer {Token}'\n"
  },
  "security": [
    {
      "Authorization": []
    }
  ],
  "tags": [
    {
      "name": "es-campaign-multimedia",
      "x-displayName": "Email - Campaign multimedia",
      "description": "Endpoints for manage campign multimedia."
    }
  ],
  "x-tagGroups": [
    {
      "name": "Chat Service",
      "tags": [
        "chat-configuration",
        "chat-channel",
        "chat-contact",
        "chat-integration",
        "chat-task",
        "chat-campaign",
        "chat-send",
        "chat-multimedia",
        "chat-slicing",
        "chat-tag",
        "chat-contact-list",
        "chat-cc-agent",
        "chat-cc-permissions-profile",
        "chat-cc-weekly-schedule",
        "chat-cc-special-days-schedule",
        "chat-cc-conversation",
        "chat-cc-agent-group",
        "chat-cc-contact-comment",
        "chat-cc-form",
        "chat-stats",
        "chat-internal"
      ]
    },
    {
      "name": "Customer Service",
      "tags": [
        "customer-service-adviser",
        "customer-service-customer",
        "customer-service-customer-csv",
        "customer-service-customer-field",
        "customer-service-customer-journey",
        "customer-service-customer-journey-template",
        "customer-service-customer-journey-control",
        "customer-service-customer-send",
        "customer-service-stats",
        "customer-service-webhook-template",
        "customer-service-segment",
        "customer-service-audience",
        "customer-service-application",
        "customer-service-journeywaitqueue",
        "customer-service-task",
        "customer-service-cdpeventtype",
        "customer-service-cdpeventtypetemplate",
        "customer-service-internal"
      ]
    },
    {
      "name": "Email Service",
      "tags": [
        "es-configuration",
        "es-configurationDomain",
        "es-configurationDomainEmail",
        "es-footer",
        "es-audience",
        "es-contact",
        "es-category",
        "es-campaign",
        "es-campaign-block",
        "es-campaign block-column",
        "es-campaign-multimedia",
        "es-shipment",
        "es-attachment",
        "es-statistics",
        "es-webhook",
        "es-tasks"
      ]
    },
    {
      "name": "InApp Service",
      "tags": [
        "inapp-configuration",
        "inapp-campaign",
        "inapp-schema",
        "inapp-topic",
        "inapp-multimedia",
        "inapp-form",
        "inapp-stats",
        "inapp-audience",
        "inapp-task"
      ]
    },
    {
      "name": "SMS Service",
      "tags": [
        "sms-campaign",
        "sms-configuration",
        "sms-contact",
        "sms-send",
        "sms-stats",
        "sms-topic",
        "sms-cost",
        "sms-webhook",
        "sms-private"
      ]
    },
    {
      "name": "Wallet Service",
      "tags": [
        "wallet-project",
        "wallet-images",
        "wallet-tasks",
        "wallet-notifications",
        "wallet-template",
        "wallet-loyalty-pass",
        "wallet-loyalty-template",
        "wallet-offer-pass",
        "wallet-offer-template",
        "wallet-generic-pass",
        "wallet-generic-template"
      ]
    },
    {
      "name": "Stats Service",
      "tags": [
        "stats-service-chat",
        "stats-service-cs",
        "stats-service-report",
        "stats-service-wallet",
        "stats-service-meta"
      ]
    },
    {
      "name": "ChatGen service",
      "tags": [
        "icc-chatgen-gateway-agent",
        "icc-chatgen-gateway-api-tool",
        "icc-chatgen-gateway-configured-custom-tool",
        "icc-chatgen-gateway-conversation",
        "icc-chatgen-gateway-custom-tool",
        "icc-chatgen-gateway-document",
        "icc-chatgen-gateway-file",
        "icc-chatgen-gateway-instance-config",
        "icc-chatgen-gateway-router-agent-tool",
        "icc-chatgen-gateway-router-agent"
      ]
    },
    {
      "name": "AI Assitant service",
      "tags": [
        "ai-generator-campaign"
      ]
    },
    {
      "name": "Meta Service",
      "tags": [
        "meta-cloudapi",
        "meta-configuration",
        "meta-webhook",
        "meta-business",
        "meta-templates",
        "meta-upload"
      ]
    },
    {
      "name": "Push Live Service",
      "tags": [
        "push-live-configuration",
        "push-live-ios-class",
        "push-live-activity",
        "push-live-send"
      ]
    },
    {
      "name": "Pathbot",
      "tags": [
        "pathbot-agents",
        "pathbot-applications",
        "pathbot-documents",
        "pathbot-flows",
        "pathbot-tools",
        "pathbot-nodes",
        "pathbot-ingestion-sources",
        "pathbot-evaluation",
        "pathbot-skills"
      ]
    },
    {
      "name": "Link Service",
      "tags": [
        "link-short-domain"
      ]
    }
  ],
  "servers": [
    {
      "url": "https://api.indigitall.com/v2"
    }
  ],
  "paths": {
    "/email/campaign/{id}/multimedia": {
      "post": {
        "summary": "Upload campaign multimedia",
        "tags": [
          "es-campaign-multimedia"
        ],
        "description": "Adds a multimedia to the given campaign's id\n",
        "x-eov-operation-handler": "campaignMultimediaController",
        "operationId": "emailPostCampaignMultimedia",
        "x-gateway-endpoint": "emailService",
        "x-gateway-check-permission": {
          "account-features": [
            "EMAIL_ENABLED"
          ]
        },
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "description": "Campaign's id",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/ES_CampaignMultimediaRequestBody"
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/ES_CampaignMultimediaResponse"
          },
          "400": {
            "$ref": "#/components/responses/ES_ParameterMissingOrInvalidResponse"
          },
          "403": {
            "$ref": "#/components/responses/ES_ForbiddenErrorResponse"
          },
          "404": {
            "$ref": "#/components/responses/ES_CampaignNotFoundResponse"
          },
          "500": {
            "$ref": "#/components/responses/ES_ServerErrorResponse"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "Authorization": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Authorization for accesing endpoints , must be in one of the following format:\n- **Bearer {token}**\n- **ServerKey {key}**\n"
      }
    },
    "schemas": {
      "ES_ErrorSchema": {
        "required": [
          "message",
          "statusCode"
        ],
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "integer",
            "description": "Response code"
          },
          "errorCode": {
            "type": "string",
            "enum": [
              "ES_ATTACHMENT_NOT_FOUND",
              "ES_SHIPMENT_SCHEDULED",
              "ES_SHIPMENT_HAVE_VARS",
              "ES_CAMPAIGN_NOT_FOUND",
              "ES_CAMPAIGN_NOT_MODIFIABLE",
              "ES_CAMPAIGN_TEMPLATE_NOT_FOUND",
              "ES_CAMPAIGN_SENT",
              "ES_CAMPAIGN_MULTIMEDIA_NOT_FOUND",
              "ES_CAMPAIGN_HTML_NOT_FOUND",
              "ES_CAMPAIGN_BLOCK_NOT_FOUND",
              "ES_CAMPAIGN_BLOCK_COLUMN_NOT_FOUND",
              "ES_CAMPAIGN_BLOCK_COLUMN_TYPE_ERROR",
              "ES_COLUMNS_IN_BLOCK_LIMIT",
              "ES_CONFIGURATION_ALREADY_EXISTS",
              "ES_CONFIGURATION_NOT_FOUND",
              "ES_CONFIGURATION_ERROR_MAILJET",
              "ES_CONFIGURATION_DOMAIN_NOT_FOUND",
              "ES_CONFIGURATION_DOMAIN_IN_USE",
              "ES_CONFIGURATION_DOMAIN_EMAIL_NOT_FOUND",
              "ES_CONFIGURATION_DOMAIN_EMAIL_IN_USE",
              "ES_CONTACT_NOT_FOUND",
              "ES_CATEGORY_NOT_FOUND",
              "ES_CATEGORY_IN_USE",
              "ES_APPLICATION_NOT_FOUND",
              "ES_FOOTER_NOT_FOUND",
              "ES_FOOTER_TITLE_EXISTS",
              "ES_FOOTER_IN_USE",
              "ES_SHIPMENT_NOT_FOUND",
              "ES_CONFLICT",
              "ES_ACCESS_FORBIDDEN",
              "ES_AUDIENCE_CJ_NOT_FOUND"
            ],
            "description": "* `ES_ATTACHMENT_NOT_FOUND` - Attachment not found\n* `ES_SHIPMENT_SCHEDULED` - Shipment has been scheduled\n* `ES_SHIPMENT_HAVE_VARS` - Sending variables is not allowed in massive mailing.\n* `ES_CAMPAIGN_NOT_FOUND` - Campaign not found\n* `ES_CAMPAIGN_NOT_MODIFIABLE` - Campaign cannot be updated as it belongs to an initialized journey\n* `ES_CAMPAIGN_TEMPLATE_NOT_FOUND` - Campaign template not found\n* `ES_CAMPAIGN_SENT` - Campaign has been send\n* `ES_CAMPAIGN_MULTIMEDIA_NOT_FOUND` - Campaign multimedia not found\n* `ES_CAMPAIGN_HTML_NOT_FOUND` - Campaign html not found\n* `ES_CAMPAIGN_BLOCK_NOT_FOUND` - Campaign block not found\n* `ES_CAMPAIGN_BLOCK_COLUMN_NOT_FOUND` - Campaign block column not found * `ES_CAMPAIGN_BLOCK_COLUMN_TYPE_ERROR` - The parameters of the block column are not correct for this type * `ES_COLUMNS_IN_BLOCK_LIMIT` - The column limit for this block has been exceeded\n* `ES_CONFIGURATION_ALREADY_EXISTS` - Configuration already exists for application * `ES_CONFIGURATION_NOT_FOUND` - Configuration not found * `ES_CONFIGURATION_ERROR_MAILJET` - Error Mailjet Api\n* `ES_CONFIGURATION_DOMAIN_NOT_FOUND` - Configuration domain not found\n* `ES_CONFIGURATION_DOMAIN_IN_USE` - Configuration domain in use\n* `ES_CONFIGURATION_DOMAIN_EMAIL_NOT_FOUND` - Configuration domain email not found\n* `ES_CONFIGURATION_DOMAIN_EMAIL_IN_USE` - Configuration domain email in use\n* `ES_CONTACT_NOT_FOUND` - Contact not found\n* `ES_CATEGORY_NOT_FOUND` - Category not found\n* `ES_CATEGORY_IN_USE` - Category in use\n* `ES_APPLICATION_NOT_FOUND` - Application not found\n* `ES_FOOTER_NOT_FOUND` - Footer not found\n* `ES_FOOTER_IN_USE` - Footer in use\n* `ES_FOOTER_TITLE_EXISTS` - Footer title exists\n* `ES_SHIPMENT_NOT_FOUND` - Shipment not found\n* `ES_CONFLICT` - Unique contraint error\n* `ES_ACCESS_FORBIDDEN` - Access forbidden for user\n* `ES_AUDIENCE_CJ_NOT_FOUND` - The referenced Customer Journey (CJ) audience/segment was not found\n"
          },
          "message": {
            "type": "string",
            "description": "Error message"
          }
        }
      },
      "ES_CampaignMultimedia": {
        "required": [
          "id",
          "createdAt",
          "name",
          "cloudName",
          "campaignId",
          "size",
          "mimetype",
          "type",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64",
            "description": "Unique identifier for the multimedia asset.",
            "example": 1001
          },
          "name": {
            "type": "string",
            "description": "Original file name provided by the customer.",
            "example": "promo_video.mp4"
          },
          "cloudName": {
            "type": "string",
            "description": "File name assigned by the system for storage in the cloud.",
            "example": "2025_promo_video.mp4"
          },
          "campaignId": {
            "type": "integer",
            "format": "int64",
            "description": "Identifier of the campaign that the multimedia is associated with.",
            "example": 501
          },
          "size": {
            "type": "integer",
            "format": "int64",
            "description": "Size of the multimedia file in bytes.",
            "example": 10485760
          },
          "mimetype": {
            "type": "string",
            "description": "MIME type of the file, indicating the type of content (e.g., image, video, audio).",
            "example": "video/mp4"
          },
          "type": {
            "type": "string",
            "description": "Delivery method for the multimedia asset",
            "enum": [
              "embedded",
              "external_url"
            ],
            "example": "embedded"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "nullable": true,
            "description": "The full, ready-to-use public URL to access the multimedia resource. This field will be `null` if the multimedia `type` is not 'external_url'.\n"
          }
        }
      },
      "ES_CampaignMultimediaRequestSchema": {
        "required": [
          "multimedia",
          "name"
        ],
        "type": "object",
        "properties": {
          "multimedia": {
            "description": "The multimedia file to upload, represented as binary data.",
            "type": "string",
            "format": "binary"
          },
          "name": {
            "description": "Name of the multimedia asset to be stored.",
            "type": "string",
            "example": "promo_video.mp4"
          },
          "type": {
            "type": "string",
            "description": "Defines how the multimedia will be served",
            "enum": [
              "embedded",
              "external_url"
            ],
            "default": "embedded"
          },
          "crop": {
            "description": "(Optional) If the multimedia is an image, this section defines the coordinates and dimensions\nfor cropping the image.\n",
            "type": "object",
            "properties": {
              "coordinateX": {
                "description": "The X coordinate of the top-left corner for cropping.",
                "type": "integer",
                "example": 50
              },
              "coordinateY": {
                "description": "The Y coordinate of the top-left corner for cropping.",
                "type": "integer",
                "example": 50
              },
              "width": {
                "description": "Width of the cropped image area.",
                "type": "integer",
                "example": 200
              },
              "height": {
                "description": "Height of the cropped image area.",
                "type": "integer",
                "example": 200
              }
            },
            "required": [
              "coordinateX",
              "coordinateY",
              "width",
              "height"
            ]
          }
        }
      }
    },
    "responses": {
      "ES_ServerErrorResponse": {
        "description": "Server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ES_ErrorSchema"
            },
            "example": {
              "statusCode": 500,
              "errorCode": "ES_SERVER_ERROR",
              "message": "Server error"
            }
          }
        }
      },
      "ES_ParameterMissingOrInvalidResponse": {
        "description": "Parameter is missing or invalid",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ES_ErrorSchema"
            },
            "example": {
              "statusCode": 400,
              "errorCode": "ES_PARAMETER_MISSING_OR_INVALID",
              "message": "Parameter is missing or invalid"
            }
          }
        }
      },
      "ES_ForbiddenErrorResponse": {
        "description": "Access Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ES_ErrorSchema"
            },
            "example": {
              "statusCode": 403,
              "errorCode": "ES_ACCESS_FORBIDDEN",
              "message": "Access Forbidden"
            }
          }
        }
      },
      "ES_CampaignNotFoundResponse": {
        "description": "Campaign not found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ES_ErrorSchema"
            },
            "example": {
              "statusCode": 404,
              "errorCode": "ES_CAMPAIGN_NOT_FOUND",
              "message": "Campaign not found"
            }
          }
        }
      },
      "ES_CampaignMultimediaResponse": {
        "description": "OK",
        "content": {
          "application/json": {
            "schema": {
              "required": [
                "statusCode",
                "message",
                "data"
              ],
              "type": "object",
              "properties": {
                "statusCode": {
                  "type": "integer",
                  "description": "Response code",
                  "example": 200
                },
                "message": {
                  "type": "string",
                  "description": "Response message, usually OK",
                  "example": "OK"
                },
                "data": {
                  "$ref": "#/components/schemas/ES_CampaignMultimedia"
                }
              }
            }
          }
        }
      }
    },
    "requestBodies": {
      "ES_CampaignMultimediaRequestBody": {
        "required": true,
        "content": {
          "multipart/form-data": {
            "schema": {
              "$ref": "#/components/schemas/ES_CampaignMultimediaRequestSchema"
            }
          }
        }
      }
    }
  }
}
```