Get inspired at ContentCon Europe. See the agenda and register for free.
Get inspired at ContentCon Europe. See the agenda and register for free.
Contentstack.comAcademyLogin
CS-log-dark.svgCS-log-dark.svg
  • Changelog
  • APIs
  • SDKs

Platform

  • Solution Center
  • Marketplace
  • Changelog
  • Developers & IT
  • Business users
  • Digital leaders
  • Developer Fast Track
  • Plans & Pricing

Solutions

  • Retail
  • Travel and tourism
  • Financial services
  • Technology
  • Manufacturing
  • E-commerce
  • Localization
  • Personalization
  • Portals and knowledge bases

Resources

  • Academy
  • Docs
  • Product updates
  • Contentstack on Contentstack
  • Blog
  • Insights and analyst reports
  • Webinars
  • Podcasts
  • Glossary
  • Content generative library
  • Community
  • Headless CMS
  • Composable AXP
  • Personalization
  • CDP

Customers

  • Case Studies
  • Customer Care
  • Contentstack Experience Awards
  • Customer support

Partners

  • Overview
  • Find a partner
  • Login

Company

  • About us
  • News
  • Customer support portal
  • Contact

Social

  • Facebook
  • LinkedIn
  • Instagram
  • GitHub
  • YouTube
  • Discord
  • X
LegalTermsPrivacyTrust Center

Cookie settings

Copyright © 2026 Contentstack Inc. All rights reserved.
/
  1. Home
  2. APIs
  3. Launch API
  4. File Upload

File Upload

markdownView as Markdown

The File Upload URL APIs provide secure, pre-signed URLs for uploading ZIP files to Launch.

Get a Signed Upload URL for a Project

GEThttps://launch-api.contentstack.com/projects/upload/signed_url

The Get a Signed Upload URL for a Project request fetches the details of the signed URL where you must upload the file while creating a project.

As the next step, Upload Your Deployment Zip File to the Signed URL.

Sample Response
Status|200 OK
123456789
{
  "uploadUrl": "https://test-upload-url.com",
  "expiresIn": 900,
  "uploadUid": "50xxxxa8",
  "method": "POST",
  "fields": [
    {
      "formFieldKey": "bucket",
      "formFieldValue": "

Get a Signed Upload URL for an Environment

GEThttps://launch-api.contentstack.com/projects/{project_uid}/environments/upload/signed_url

The Get a Signed Upload URL for an Environment request fetches the details of the signed URL where you must upload the file when creating an environment.

As the next step, Upload Your Deployment Zip File to the Signed URL.

Sample Response
Status|200 OK
123456789
{
  "uploadUrl": "https://test-upload-url.com",
  "expiresIn": 900,
  "uploadUid": "50xxxxa8",
  "method": "POST",
  "fields": [
    {
      "formFieldKey": "bucket",
      "formFieldValue": "

Get a Signed Upload URL for a Deployment

GEThttps://launch-api.contentstack.com/projects/{project_uid}/environments/{environment_uid}/deployments/upload/signed_url

The Get a Signed Upload URL for a Deployment request retrieves the details of the signed URL where you must upload the file when creating or redeploying a deployment.

As the next step, Upload Your Deployment Zip File to the Signed URL.

Sample Response
Status|200 OK
123456789
{
  "uploadUrl": "https://test-upload-url.com",
  "expiresIn": 900,
  "uploadUid": "50xxxxa8",
  "method": "POST",
  "fields": [
    {
      "formFieldKey": "bucket",
      "formFieldValue": "

Get a Download URL for a Deployment

GEThttps://launch-api.contentstack.com/projects/{project_uid}/environments/{environment_uid}/deployments/{deployment_uid}/download/signed_url

The Get a Download URL for the Uploaded File request returns the signed URL to download the uploaded file from the latest deployment.

Sample Response
Status|200 OK
1234
{
  "downloadUrl": "https://test-download-url.com",
  "expiresIn": 900
}
Hide Parameters

Headers

authorizationoptionalstring

Use a bearer token to authenticate if you're not using the authtoken header. Format: Bearer . If provided, the organization_uid header isn't required.

authtokenoptionalstring

Use an authentication token if the Authorization header isn't provided. **Requires the organization_uid header.** When using authtoken authentication, you must explicitly provide the organization_uid header. The organization_uid cannot be derived from project_uid for Launch REST APIs.

x-cs-api-versionoptionalstring

Enter the API version. Default is 1.0

organization_uidoptionalstring

⚠️ **REQUIRED when using authtoken authentication** - you must explicitly provide this header. Optional with Authorization Bearer token (organization_uid can be derived from the token).

Hide Parameters

URL Parameters

project_uidrequiredstring

Enter the project_uid of the FILEUPLOAD project where the environments belong.

Headers

authorizationoptionalstring

Use a bearer token to authenticate if you're not using the authtoken header. Format: Bearer . If provided, the organization_uid header isn't required.

authtokenoptionalstring

Use an authentication token if the Authorization header isn't provided. **Requires the organization_uid header.** When using authtoken authentication, you must explicitly provide the organization_uid header. The organization_uid cannot be derived from project_uid for Launch REST APIs.

x-cs-api-versionoptionalstring

Enter the API version. Default is 1.0

organization_uidoptionalstring

⚠️ **REQUIRED when using authtoken authentication** - you must explicitly provide this header. Optional with Authorization Bearer token (organization_uid can be derived from the token).

Hide Parameters

URL Parameters

environment_uidrequiredstring

Enter the environment_uid of the environment where you want to create the deployment.

project_uidrequiredstring

Enter the project_uid of the FILEUPLOAD project where the environments belong.

Headers

authorizationoptionalstring

Use a bearer token to authenticate if you're not using the authtoken header. Format: Bearer . If provided, the organization_uid header isn't required.

authtokenoptionalstring

Use an authentication token if the Authorization header isn't provided. **Requires the organization_uid header.** When using authtoken authentication, you must explicitly provide the organization_uid header. The organization_uid cannot be derived from project_uid for Launch REST APIs.

x-cs-api-versionoptionalstring

Enter the API version. Default is 1.0

organization_uidoptionalstring

⚠️ **REQUIRED when using authtoken authentication** - you must explicitly provide this header. Optional with Authorization Bearer token (organization_uid can be derived from the token).

Hide Parameters

URL Parameters

deployment_uidrequiredstring

Deployment unique identifier of the latest deployment of an environment for which you want to fetch the download URL.

environment_uidrequiredstring

Environment unique identifier associated with the deployment.

project_uidrequiredstring

Project unique identifier of the FILEUPLOAD project where the environments belong.

Headers

authorizationoptionalstring

Use a bearer token to authenticate if you're not using the authtoken header. Format: Bearer . If provided, the organization_uid header isn't required.

authtokenoptionalstring

Use an authentication token if the Authorization header isn't provided. **Requires the organization_uid header.** When using authtoken authentication, you must explicitly provide the organization_uid header. The organization_uid cannot be derived from project_uid for Launch REST APIs.

x-cs-api-versionoptionalstring

Enter the API version. Default is 1.0

organization_uidoptionalstring

⚠️ **REQUIRED when using authtoken authentication** - you must explicitly provide this header. Optional with Authorization Bearer token (organization_uid can be derived from the token).