API Configuration
You can manage your Linear connector programmatically using the Weld REST API. This page covers the key operations specific to Linear.
Authentication
All API requests require an API key passed via the x-api-key header. You can create API keys in Settings → API Keys inside the Weld app.
curl https://connect.weld.app/connections \
--header 'x-api-key: YOUR_API_KEY'
Integration ID
When creating connections or syncs for Linear, use the following integration ID:
| Parameter | Value |
|---|---|
integration_id | linear |
Create a Connection
To connect Linear via the API, create a connection bridge session:
curl https://connect.weld.app/connection_bridges \
--request POST \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"integration_id": "linear",
"label": "linear-production",
"redirect_uri": "https://yourapp.com/callback"
}'
The user will be redirected to Linear's OAuth flow to authorize access. Once complete, the connection is available for creating syncs.
Create an ELT Sync
Once a connection exists, create a sync to start loading Linear data:
curl https://connect.weld.app/elt_syncs \
--request POST \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"connection_id": "YOUR_CONNECTION_ID",
"destination_schema_name": "linear",
"sync_interval": "0 */6 * * *"
}'
Available Streams
After creating the sync, list the available streams to see which Linear objects can be synced:
curl https://connect.weld.app/elt_syncs/YOUR_SYNC_ID/available_source_streams \
--header 'x-api-key: YOUR_API_KEY'
Then add the streams you want:
curl https://connect.weld.app/elt_syncs/YOUR_SYNC_ID/source_streams \
--request POST \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"source_streams": [
{ "name": "issues" },
{ "name": "comments" },
{ "name": "teams" },
{ "name": "users" }
]
}'
Manage Syncs
| Operation | Method | Endpoint |
|---|---|---|
| List syncs | GET | /elt_syncs |
| Get sync details | GET | /elt_syncs/{id} |
| Update sync | POST | /elt_syncs/{id} |
| Enable sync | POST | /elt_syncs/{id}/enable |
| Disable sync | POST | /elt_syncs/{id}/disable |
| Get sync status | GET | /elt_syncs/{id}/status |
| Delete sync | DELETE | /elt_syncs/{id} |
Manage Streams
| Operation | Method | Endpoint |
|---|---|---|
| List available streams | GET | /elt_syncs/{id}/available_source_streams |
| Add streams | POST | /elt_syncs/{id}/source_streams |
| Trigger stream run | POST | /elt_streams/{id}/request_run |
| Request full refresh | POST | /elt_streams/{id}/request_full_refresh |
For the full endpoint reference including request/response schemas, see the API Reference →.