Stage files for import in a project

⚠️

Beta

This API is still in beta. It is intended specifically for Lokalise Vantage. If you need to work with Lokalise Expert projects, including software localization projects based on keys and translations, use the Lokalise REST API v2 instead.

Vantage endpoints use the /vantage/v1 namespace and have their own resource model and API conventions.

Register one or more files in a project as uploads, each with its own uploadId and a pre-signed upload target. This only stages the files (a pre-import step) and returns a batchId — the uploads are not imported into the project until you call the import endpoint with that batch. Staging a file name again in the same batch, before that upload is imported, replaces the earlier upload, and the new one gets a new uploadId. A file that cannot be staged, for example an unsupported extension or one over the size limit, is returned as its own entry carrying an error code and message, so one rejected file does not fail the rest of the batch. Each upload target expires: start the upload before its expiresAt, or stage the file again to get a new target.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$
Body Params
uuid
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$

Optional id of an existing upload batch to append these uploads to. Omit to start a new batch; the batch id is returned in the response. A batch groups uploads staged together so they can be imported in a single import call.

uploads
array of objects
required
length between 1 and 100

Files to stage, one upload each. At most 100 per request.

uploads*
string
required
length ≥ 1

File name including extension (e.g. "en.json"). It must be unique within the request and is the key used to correlate each response entry (created or rejected) back to the file you sent. GET /uploads returns the same name. Staging a name again in the same batch, before that upload is imported, replaces the earlier upload: it is removed and the new one gets a new uploadId.

string
required
length ≥ 1

MIME type of the file, used as the upload Content-Type (e.g. "application/json"). Advisory: acceptance is by file format and may vary per workspace. Supported formats: JSON, YAML, DOCX, PPTX, XLSX, HTML, Markdown, IDML, PO, XLIFF. Unsupported files are rejected individually with UNSUPPORTED_FILE_EXTENSION.

integer
required
0 to 9007199254740991

File size in bytes. Maximum 52428800 (50 MB); larger files are rejected individually with FILE_EXCEEDED_MAXIMUM_ALLOWED_SIZE.

string
required
length ≥ 1

MD5 digest of the file content, hex-encoded (32 hex characters), for example e893e99354a665b25c6c97eb059c716a. It is converted to the Content-MD5 of the upload target, so an upload whose body does not match it is rejected.

Responses

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json