Skip to main content
POST
/
bridge
/
api
/
v1
/
workspaces
/
{workspaceId}
/
files
Create presigned uploads for files
curl --request POST \
  --url https://api-connect-us.bridge.new/bridge/api/v1/workspaces/{workspaceId}/files \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <x-api-key>' \
  --data '
[
  {
    "name": "prueba.jpg",
    "fileType": "IMAGE",
    "checksumBase64": "OaZ+I0yqf3u3u5w8h0Y2v4e7W9vHh3zbn2mA2m1yPVo=",
    "contentType": "image/jpeg"
  }
]
'
[
  {
    "mediaId": "<string>",
    "presignUrl": {
      "url": "<string>",
      "method": "PUT",
      "headers": {}
    }
  }
]

Headers

x-api-key
string
required

Copy the API key as provided by the Bridge Console.

Path Parameters

workspaceId
string<uuid>
required

Unique identifier of the workspace (UUID v4).

Body

application/json
name
string
required

Original file name including extension

Example:

"prueba.jpg"

fileType
enum<string>
required

Logical file type category

Available options:
IMAGE,
VIDEO,
AUDIO,
DOCUMENT,
STICKER
Example:

"IMAGE"

checksumBase64
string
required

Base64-encoded SHA-256 digest of the entire file. This value will be used to sign the presigned PUT and must be sent back in the header x-amz-checksum-sha256 during upload.

Example:

"OaZ+I0yqf3u3u5w8h0Y2v4e7W9vHh3zbn2mA2m1yPVo="

contentType
string | null

MIME type of the file (e.g., image/jpeg)

Example:

"image/jpeg"

Response

Successful Response

mediaId
string
required

Unique media identifier

presignUrl
object
required

Presigned PUT data to upload the media (url, method and headers)