---
title: "Add ELT Destination"
method: POST
path: "/elt_destinations"
tags: ["ELT Destinations"]
---

# Add ELT Destination

`POST /elt_destinations`

## Request

- Base URL: `https://connect.weld.app`
- URL: `https://connect.weld.app/elt_destinations`
- Auth: API key in header `x-api-key`

Beta. Add an ELT Destination on a Connection, so ELT Syncs can load into it next to the data warehouse. A Connection can back several ELT Destinations. Available to accounts with the multi-destination ELT feature.

## Request body

- EltDestinationCreateRequestDto
  - `connection_id` string, required: The ID of a Connection whose integration is an ELT destination. The data warehouse Connection is refused, since every ELT Sync already loads into it.
  - `label` string, required: Names the ELT Destination. Unique among the account's ELT Destinations.
  - `settings` object, required: The ELT Destination's settings, answering the schema from GET /elt_destinations/settings_schema for the Connection. A setting the schema gives a default may be left out and takes that default. An integration whose schema has no properties takes an empty object.
  - `use_for_new_syncs` boolean: Whether ELT Syncs created without `additional_destinations` also load into this ELT Destination. ELT Syncs that already exist are not changed. Refused when another ELT Destination on the same Connection already is.

## Response `201`

- EltDestinationDto
  - `id` string, required: The ID of the ELT Destination.
  - `label` string, required: Names the ELT Destination. Unique among the account's ELT Destinations.
  - `connection_id` string, required: The ID of the Connection the ELT Destination loads into.
  - `integration_id` string, required: The integration of the Connection.
  - `settings` object, required: The ELT Destination's settings, answering the schema from GET /elt_destinations/settings_schema for its Connection. Empty when the integration's schema has no properties, or the destination was added before it had one.
  - `use_for_new_syncs` boolean, required: Whether ELT Syncs created without `additional_destinations` also load into this ELT Destination. ELT Syncs that already exist are not changed.
  - `history_tables_supported` boolean, required: Whether this destination keeps a history table for a stream.
  - `soft_deletes_supported` boolean, required: Whether full syncs into this destination can keep the rows the source no longer returns.
  - `cdc_deletes_supported` boolean, required: Whether this destination applies the deletes a Postgres change data capture run reports.
  - `created_at` string, date-time, required: When the ELT Destination was added.

## Other responses

- `400`: The Connection is the data warehouse or cannot be an ELT Destination, the label is taken, or the settings do not answer its settings schema.
- `403`: The account does not have the multi-destination ELT feature.

## Changes

- **2026-10-26** `1f8c53229872`: 2 breaking, 2 warning, 4 info
  - added the new required request property `label`
  - added the new required request property `settings`
  - removed the request property `default_identifier_casing`
  - removed the optional property `default_identifier_casing` from the response with the `201` status
  - …4 more
- **2026-10-20** `8a78fb25b1ab`: 2 warning
  - removed the request property `landing_database`
  - removed the optional property `landing_database` from the response with the `201` status
- **2026-10-19** `e82543ec5304`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/weld/apis/weld-rest-api/changes/elt_destinations/post.md)

---

[API](https://skmtc.dev/weld/apis/weld-rest-api.md) - [All operations](https://skmtc.dev/weld/apis/weld-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/weld/apis/weld-rest-api/revisions/0e768a2ead18?raw)
