When to use
- After deploying a use case that requires integrations (OpenAI, Supabase, etc.)
- When setting up a new organization with required API keys
- When rotating or updating integration credentials
- When checking which integrations are connected
Prerequisites
- API key with
integrations:managescope - For process instance integrations:
project.jsonwithdevProcessInstanceId
Subcommands
| Command | Description |
|---|---|
set | Create or update an integration |
list | List integrations and their status |
delete | Delete an integration |
schema | Fetch n8n credential schema for a credential type |
codika integration set
Creates an integration by encrypting secrets client-side and sending them to the platform.
Arguments
| Argument | Description |
|---|---|
integrationId | Integration ID (e.g., openai, supabase, cstm_acme_crm) |
Options
| Option | Description | Default |
|---|---|---|
--secret <KEY=VALUE> | Secret field (repeatable) | — |
--secrets <json> | JSON string with all secrets | — |
--secrets-file <path> | Path to JSON file with secrets | — |
--metadata <KEY=VALUE> | Metadata field (repeatable) | — |
--context-type <type> | organization, member, or process_instance | Auto-detected |
--process-instance-id <id> | Process instance ID | From project.json |
--path <path> | Path to use case folder | Current directory |
--project-file <path> | Custom project file | project.json |
--environment <env> | dev or prod | dev |
--custom-schema-file <path> | Custom integration schema JSON | — |
--force | Delete existing and recreate | false |
--profile <name> | CLI profile to use | Active profile |
--api-key <key> | Override API key | — |
--json | Output as JSON | false |
Secret input priority
Secrets are merged with this priority (highest wins):--secret KEY=VALUEflags--secrets '{"KEY":"VALUE"}'JSON string--secrets-file path.jsonfile
Examples
Custom integrations (cstm_*)
Custom integrations require a schema defining their fields and n8n credential mapping. The CLI resolves this schema automatically:- Auto-extraction (recommended): When
--pathpoints to a use case folder (or you run from one), the CLI readsconfig.tsand extracts the matching schema from thecustomIntegrationsarray. No separate file needed. - Explicit file: Pass
--custom-schema-filewith a JSON file containing theCustomIntegrationSchema.
OAuth integrations
OAuth-based integrations (Gmail, Teams, Slack, etc.) cannot be configured from the CLI. The command will display the dashboard URL instead:codika integration list
Lists integrations and their connection status.
Options
| Option | Description | Default |
|---|---|---|
--context-type <type> | organization or process_instance | organization |
--process-instance-id <id> | Process instance ID | From project.json |
--path <path> | Path to use case folder | Current directory |
--project-file <path> | Custom project file | project.json |
--environment <env> | dev or prod | dev |
--profile <name> | CLI profile to use | Active profile |
--api-key <key> | Override API key | — |
--json | Output as JSON | false |
Examples
codika integration delete
Deletes an integration. Uses two-phase deletion by default — first shows dependent processes, then deletes with --confirm.
Arguments
| Argument | Description |
|---|---|
integrationId | Integration ID to delete |
Options
| Option | Description | Default |
|---|---|---|
--context-type <type> | organization, member, or process_instance | Auto-detected |
--process-instance-id <id> | Process instance ID | From project.json |
--path <path> | Path to use case folder | Current directory |
--project-file <path> | Custom project file | project.json |
--environment <env> | dev or prod | dev |
--confirm | Skip confirmation and delete immediately | false |
--profile <name> | CLI profile to use | Active profile |
--api-key <key> | Override API key | — |
--json | Output as JSON | false |
Examples
codika integration schema
Fetches the n8n credential schema for a given credential type. Use this to discover which fields are required when creating a custom integration with any n8n credential type.
Arguments
| Argument | Description |
|---|---|
credentialType | n8n credential type (e.g., twilioApi, openAiApi, httpHeaderAuth) |
Options
| Option | Description | Default |
|---|---|---|
--profile <name> | CLI profile to use | Active profile |
--api-key <key> | Override API key | — |
--json | Output raw JSON schema | false |
Examples
Use with custom integrations
When you need a custom integration that maps to a specific n8n credential type (e.g.,twilioApi instead of httpHeaderAuth), use schema to discover the required fields, then define your n8nCredentialMapping accordingly:
Common recipes
Set up AI provider for an organization
Set up Supabase for a process instance
Full deployment + integration flow
Authentication
All integration commands require an API key with theintegrations:manage scope. The standard authentication chain applies:
--api-keyflag (highest priority)CODIKA_API_KEYenvironment variable- Active profile from
codika login
Exit codes
| Code | Meaning |
|---|---|
0 | Success |
1 | API error |
2 | Validation error (missing fields, OAuth integration, unconfirmed delete) |