How placeholders work
Workflows contain template tokens like{{FLEXCRED_ANTHROPIC_ID_DERCXELF}} that get replaced at deployment time with real values. This is how Codika makes a single workflow definition work for multiple users, each with their own credentials and configuration.
Pattern: {{TYPE_KEY_SUFFIX}}
- TYPE: The placeholder category (e.g.,
FLEXCRED,USERDATA) - KEY: The specific value being referenced (e.g.,
ANTHROPIC_ID,PROCESS_INSTANCE_UID) - SUFFIX: The type name reversed (e.g.,
FLEXCRED→DERCXELF)
Complete reference
PROCDATA — Process-level values
Suffix:_ATADCORP | Replaced at: First deployment
Values derived from the process (project) itself. Same for all users.
| Placeholder | Value |
|---|---|
{{PROCDATA_PROCESS_ID_ATADCORP}} | The process/project ID |
{{PROCDATA_NAMESPACE_ATADCORP}} | Process namespace |
USERDATA — Per-user runtime values
Suffix:_ATADRESU | Replaced at: Instance deployment
Values specific to each user’s installation.
| Placeholder | Value |
|---|---|
{{USERDATA_PROCESS_INSTANCE_UID_ATADRESU}} | User’s process instance ID |
{{USERDATA_USER_ID_ATADRESU}} | User’s unique ID |
{{USERDATA_ORGANIZATION_ID_ATADRESU}} | User’s organization ID |
MEMSECRT — Member-level secrets
Suffix:_TRCESMEM | Replaced at: Instance deployment
Per-user secrets for platform API authentication.
| Placeholder | Value |
|---|---|
{{MEMSECRT_EXECUTION_AUTH_TRCESMEM}} | Execution authentication token |
FLEXCRED — Flexible AI credentials
Suffix:_DERCXELF | Replaced at: Deployment
AI provider credentials with fallback logic: uses the organization’s own API key if configured, otherwise falls back to Codika’s shared keys (pay-per-use credits).
| Provider | ID placeholder | Name placeholder |
|---|---|---|
| Anthropic | {{FLEXCRED_ANTHROPIC_ID_DERCXELF}} | {{FLEXCRED_ANTHROPIC_NAME_DERCXELF}} |
| OpenAI | {{FLEXCRED_OPENAI_ID_DERCXELF}} | {{FLEXCRED_OPENAI_NAME_DERCXELF}} |
| Tavily | {{FLEXCRED_TAVILY_ID_DERCXELF}} | {{FLEXCRED_TAVILY_NAME_DERCXELF}} |
| Google Gemini | {{FLEXCRED_GOOGLE_GEMINI_ID_DERCXELF}} | {{FLEXCRED_GOOGLE_GEMINI_NAME_DERCXELF}} |
| X AI | {{FLEXCRED_X_AI_ID_DERCXELF}} | {{FLEXCRED_X_AI_NAME_DERCXELF}} |
| Open Router | {{FLEXCRED_OPEN_ROUTER_ID_DERCXELF}} | {{FLEXCRED_OPEN_ROUTER_NAME_DERCXELF}} |
| Mistral | {{FLEXCRED_MISTRAL_ID_DERCXELF}} | {{FLEXCRED_MISTRAL_NAME_DERCXELF}} |
| Cohere | {{FLEXCRED_COHERE_ID_DERCXELF}} | {{FLEXCRED_COHERE_NAME_DERCXELF}} |
| Deep Seek | {{FLEXCRED_DEEP_SEEK_ID_DERCXELF}} | {{FLEXCRED_DEEP_SEEK_NAME_DERCXELF}} |
USERCRED — User integration credentials
Suffix:_DERCRESU | Replaced at: Instance deployment
OAuth tokens from the user’s connected integrations.
| Integration | ID placeholder | Name placeholder |
|---|---|---|
| Gmail | {{USERCRED_GOOGLE_GMAIL_ID_DERCRESU}} | {{USERCRED_GOOGLE_GMAIL_NAME_DERCRESU}} |
| Google Sheets | {{USERCRED_GOOGLE_SHEETS_ID_DERCRESU}} | {{USERCRED_GOOGLE_SHEETS_NAME_DERCRESU}} |
| Google Drive | {{USERCRED_GOOGLE_DRIVE_ID_DERCRESU}} | {{USERCRED_GOOGLE_DRIVE_NAME_DERCRESU}} |
| Google Calendar | {{USERCRED_GOOGLE_CALENDAR_ID_DERCRESU}} | {{USERCRED_GOOGLE_CALENDAR_NAME_DERCRESU}} |
| Microsoft (Teams, Outlook) | {{USERCRED_MICROSOFT_ID_DERCRESU}} | {{USERCRED_MICROSOFT_NAME_DERCRESU}} |
| Calendly | {{USERCRED_CALENDLY_ID_DERCRESU}} | {{USERCRED_CALENDLY_NAME_DERCRESU}} |
| Notion | {{USERCRED_NOTION_ID_DERCRESU}} | {{USERCRED_NOTION_NAME_DERCRESU}} |
ORGCRED — Organization-level credentials
Suffix:_DERCGRO | Replaced at: Deployment
Credentials shared across the entire organization (e.g., a shared Slack workspace token).
| Integration | ID placeholder | Name placeholder |
|---|---|---|
| Slack | {{ORGCRED_SLACK_ID_DERCGRO}} | {{ORGCRED_SLACK_NAME_DERCGRO}} |
{{ORGCRED_WHATSAPP_ID_DERCGRO}} | {{ORGCRED_WHATSAPP_NAME_DERCGRO}} | |
| Pipedrive | {{ORGCRED_PIPEDRIVE_ID_DERCGRO}} | {{ORGCRED_PIPEDRIVE_NAME_DERCGRO}} |
| Folk CRM | {{ORGCRED_FOLK_ID_DERCGRO}} | {{ORGCRED_FOLK_NAME_DERCGRO}} |
ORGSECRET — Organization secrets
Suffix:_TERCESORG | Replaced at: Deployment
Configuration values stored at the organization level.
| Placeholder | Value |
|---|---|
{{ORGSECRET_N8N_BASE_URL_TERCESORG}} | Organization’s n8n instance URL |
{{ORGSECRET_ERROR_WORKFLOW_ID_TERCESORG}} | Platform error handler workflow ID |
SYSCREDS — System-level credentials
Suffix:_SDERCSYS | Replaced at: Deployment
Platform-level system credentials managed by Codika.
| Placeholder | Value |
|---|---|
{{SYSCREDS_ANTHROPIC_ID_SDERCSYS}} | System Anthropic API key |
INSTPARM — Deployment parameters
Suffix:_MRAPTSNI | Replaced at: Instance deployment
User-configured values set during process installation. Defined in getDeploymentInputSchema().
INSTCRED — Instance-level credentials
Suffix:_DERCTSNI | Replaced at: Instance deployment
Per-deployment database connections or service credentials.
| Placeholder | Value |
|---|---|
{{INSTCRED_SUPABASE_ID_DERCTSNI}} | Supabase connection |
{{INSTCRED_POSTGRESQL_ID_DERCTSNI}} | PostgreSQL connection |
SUBWKFL — Sub-workflow references
Suffix:_LFKWBUS | Replaced at: Deployment
Resolved n8n workflow IDs for sub-workflows. The key is the sub-workflow’s workflowTemplateId.
Replacement timeline
| When | Placeholder types replaced |
|---|---|
| First deployment (process creation) | PROCDATA, ORGSECRET, SYSCREDS |
| Instance deployment (per-user) | USERDATA, MEMSECRT, USERCRED, ORGCRED, FLEXCRED, INSTPARM, INSTCRED, SUBWKFL |
Validation
The CLI validates placeholder syntax via theCK-PLACEHOLDERS rule:
- Wrong suffix (e.g., using
_DERCXELFfor aUSERCREDplaceholder) - Typo in type name
- Missing closing
}}