---
title: "Create environment variables"
method: POST
path: "/v1/environments/{environment_id}/variables/bulk"
tags: ["Environment variables"]
---

# Create environment variables

`POST /v1/environments/{environment_id}/variables/bulk`

## Request

- Base URL: `https://api.replicas.dev`
- URL: `https://api.replicas.dev/v1/environments/{environment_id}/variables/bulk`
- Auth: HTTP bearer

Creates up to 200 variables at once, all or none. Counts as one change for the warm pool, so it rebuilds at most once.

## Path parameters

- `environment_id` string, required

## Headers

- `X-Replicas-Api-Version` '2026-10-07'

## Request body

- CreateEnvironmentVariablesRequest
  - `variables` object[], required
    - `key` string, required
    - `value` string, required

## Response `201`

Variables created

- ListEnvironmentVariablesResponse
  - `environment_variables` EnvironmentVariable[], required
    - `id` string, uuid, required
    - `organization_id` string, uuid, required
    - `environment_id` string, uuid, required
    - `key` string, required: Variable name (e.g. `DATABASE_URL`)
    - `value` string, required: Variable value (returned in plaintext)
    - `locked` boolean, required: Whether environments that inherit this variable are blocked from overriding it
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required

## Other responses

- `400`: Bad request - Missing or invalid parameters
- `401`: Unauthorized - Invalid or missing API key
- `409`: Conflict - Resource already exists or operation conflicts with current state
- `500`: Internal server error

---

[API](https://skmtc.dev/replicas/apis/replicas-api.md) - [All operations](https://skmtc.dev/replicas/apis/replicas-api/llms.txt) - [OpenAPI document](https://skmtc.dev/replicas/apis/replicas-api/revisions/2703ac1c9cb7?raw)
