Skip to main content

Creates a multipart external upload

POST 

/uploads/create-multipart.json

Creates a multipart upload in the external storage provider, storing a temporary reference to the external upload similar to /get-presigned-put.

You must have the correct permissions and CORS settings configured in your external provider. We support AWS S3 as the default. See:

https://meta.discourse.org/t/-/210469#s3-multipart-direct-uploads-4.

An external file store must be set up and enable_direct_s3_uploads must be set to true for this endpoint to function.

Request

Body

    upload_type stringrequired

    Possible values: [avatar, profile_background, card_background, custom_emoji, composer]

    file_name stringrequired
    file_size integerrequired

    File size should be represented in bytes.

    metadata object
    sha1-checksum stringrequired

    The SHA1 checksum of the upload binary blob. Optionally be provided and serves as an additional security check when later processing the file in complete-external-upload endpoint.

Responses

external upload initialized

Schema
    key stringrequired

    The path of the temporary file on the external storage service.

    external_upload_identifier stringrequired

    The identifier of the multipart upload in the external storage provider. This is the multipart upload_id in AWS S3.

    unique_identifier stringrequired

    A unique string that identifies the external upload. This must be stored and then sent in the /complete-multipart and /batch-presign-multipart-parts endpoints.

Loading...