Linear Integration
The Linear integration enables Cloud ex Machina to automatically create and manage issues in your Linear workspace, helping you track cost optimization opportunities and custom workflows directly in the tool your engineering team already uses.
Connection is via OAuth — no manual API key generation required.
Prerequisites
- Cloud ex Machina Admin access
- Linear account with access to the target workspace
- Member role or higher in the Linear teams where issues will be created
Connecting Linear
Step 1: Navigate to Integrations
- Go to your Cloud ex Machina tenant
- Navigate to Settings > Integrations
- Find Linear in the list and click Connect
Step 2: Authorize via OAuth
You will be redirected to Linear's authorization page. Sign in with your Linear account and grant Cloud ex Machina access to your workspace.
For production setups, authorize using a dedicated bot or service account rather than a personal account. Issues created by Cloud ex Machina will be attributed to whichever account authorized the connection — a personal account leaving the organization will break the integration.
Step 3: Select a Team and Project
After authorization you are returned to Cloud ex Machina to complete configuration:
- Team (required) — the Linear team that will own created issues (e.g.
ENG). All issues in Linear belong to exactly one team. - Project (optional) — a Linear project within that team. If omitted, issues are created in the team's backlog without a project grouping.
The dropdown shows all teams and their projects in a single list (e.g. Platform — Cost Alerts, Platform — (no project)). Select the destination that matches your workflow.
Step 4: Save
Click Save. The integration is now active.
How Issues Are Created
When Cloud ex Machina creates a Linear issue it sets:
- Title — the opportunity or alert title
- Description — formatted in Markdown (headings, bullet lists, resource ARNs, links back to Cloud ex Machina)
- Team and Project — from your saved configuration
- Assignee — matched by email address if an assignee is configured in Cloud ex Machina; left unset otherwise
Linear does not use explicit issue types — labels and workflow states drive categorization instead.
Issue identifiers and URLs
Issues are identified by their Linear identifier (e.g. ENG-123) and link directly to https://linear.app/{workspace}/issue/ENG-123.
Status Synchronization
Cloud ex Machina maps Linear's workflow state names to its own lifecycle:
| Linear state | Cloud ex Machina status |
|---|---|
| Backlog, Triage, Todo | Backlog |
| In Progress, In Review | In Progress |
| Done | Done |
| Cancelled, Canceled | Cancelled |
| Duplicate | Duplicate |
Troubleshooting
OAuth authorization fails
- Ensure you are signing in to the correct Linear workspace
- Check that your Linear account has at least Member access to the target team
- Try disconnecting and reconnecting — expired OAuth tokens require a fresh authorization
Issues not appearing in Linear
- Verify the selected team and project still exist (teams can be archived)
- Check that the authorizing account is still active and a member of the team
- Re-save the integration to refresh the stored team/project configuration
Wrong workspace connected
Disconnect the integration and reconnect, signing in with the correct Linear account during the OAuth flow.
Next Steps
- Learn about other available integrations in Integrations Overview
- Configure which events trigger Linear issue creation in your notification rules