---
title: "Initialise upload"
url: "https://earlyaccess.developers.bynder.com/apis/upload-assets-api-1/versions/df48c638-df62-47a2-917c-b3255c452e8b/operations/initialiseUpload"
---

> Full API specification: https://earlyaccess.developers.bynder.com/apis/upload-assets-api-1/versions/df48c638-df62-47a2-917c-b3255c452e8b.md

# Initialise upload

`POST` `/api/upload/init`

Operation ID: `initialiseUpload`

Initialise an upload.

## Header parameters

- `Content-Type` (string, required)

## Request body

Content types: `application/x-www-form-urlencoded`

## Responses

- `200` - Successful response
- `400` - Invalid input

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Upload Assets API
  version: 1.0.0
servers:
  - url: https://{your-bynder-domain}/
    variables:
      your-bynder-domain:
        default: your-bynder-domainDefaultValue
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://DefaultParameterValue
    variables: {}
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://your-bynder-domainDefaultValue/v6/authentication/oauth2
    variables: {}
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://{your-auth-url}
    variables:
      your-auth-url:
        default: DefaultParameterValue
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://DefaultParameterValue
    variables: {}
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://your-bynder-domainDefaultValue/v6/authentication/oauth2
    variables: {}
  - url: https://your-bynder-domainDefaultValue
    variables: {}
  - url: https://bynder-public-us-east-1.s3.amazonaws.com/
    variables: {}
paths:
  /api/upload/init:
    parameters: []
    post:
      deprecated: false
      description: Initialise an upload.
      operationId: initialiseUpload
      parameters:
        - description: ""
          in: header
          name: Content-Type
          required: true
          schema:
            $ref: "#/components/schemas/Content-Type"
          style: simple
      requestBody:
        content:
          application/x-www-form-urlencoded:
            encoding: {}
            schema:
              contentMediaType: application/x-www-form-urlencoded
              properties:
                filename:
                  examples:
                    - image.jpeg
                  type: string
              type: object
        required: false
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiUploadInitResponse"
          description: Successful response
          headers: {}
        "400":
          content:
            text/plain:
              example:
                filename: "'image' is not a valid filename"
              schema:
                contentMediaType: text/plain
                examples:
                  - filename: "'image' is not a valid filename"
                type: string
          description: Invalid input
          headers: {}
      security:
        - OAuth2:
            - MEDIAUPLOAD
            - MEDIAUPLOADFORAPPROVAL
        - permanentToken:
            - MEDIAUPLOAD
            - MEDIAUPLOADFORAPPROVAL
      summary: Initialise upload
      tags:
        - Step 2 Initialise upload
security:
  - OAuth2:
      - MEDIAUPLOAD
      - MEDIAUPLOADFORAPPROVAL
  - permanentToken:
      - MEDIAUPLOAD
      - MEDIAUPLOADFORAPPROVAL
components:
  schemas:
    Content-Type:
      const: application/x-www-form-urlencoded
      title: Content-Type
      type: string
    ApiUploadInitResponse:
      properties:
        multipart_params:
          $ref: "#/components/schemas/MultipartParams"
        s3_filename:
          examples:
            - pluploads/api/00000000-0000-0000-0000-000000000000/image.jpeg
          type: string
        s3file:
          $ref: "#/components/schemas/S3file"
        target_key:
          examples:
            - pluploads/api/00000000-0000-0000-0000-000000000000/image.jpeg
          type: string
      title: ApiUploadInitResponse
      type: object
    MultipartParams:
      properties:
        Content-Type:
          examples:
            - image/*
          type: string
        Policy:
          examples:
            - AWS_S3_POLICY
          type: string
        X-Amz-Signature:
          examples:
            - AWS_S3_SIGNATURE
          type: string
        acl:
          examples:
            - private
          type: string
        key:
          examples:
            - pluploads/api/00000000-0000-0000-0000-000000000000/image.jpeg
          type: string
        success_action_status:
          examples:
            - "201"
          type: string
        x-amz-algorithm:
          examples:
            - AWS4-HMAC-SHA256
          type: string
        x-amz-credential:
          examples:
            - AWS_S3_AUTH
          type: string
        x-amz-date:
          examples:
            - 20160216T100755Z
          type: string
      title: MultipartParams
      type: object
    S3file:
      properties:
        targetid:
          examples:
            - final/00000000-0000-0000-0000-000000000000/image.jpeg
          type: string
        uploadid:
          examples:
            - UPLOAD_ID
          type: string
      title: S3file
      type: object
  securitySchemes:
    OAuth2:
      flows:
        authorizationCode:
          authorizationUrl: https://your-bynder-domainDefaultValue/
          scopes:
            MEDIAUPLOAD: ""
            MEDIAUPLOADFORAPPROVAL: ""
          tokenUrl: https://your-bynder-domainDefaultValue/token
        clientCredentials:
          scopes:
            MEDIAUPLOAD: ""
            MEDIAUPLOADFORAPPROVAL: ""
          tokenUrl: https://your-bynder-domainDefaultValue/token
      type: oauth2
    permanentToken:
      in: header
      name: Authorization
      type: apiKey
```
