Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.twenty.com/llms.txt

Use this file to discover all available pages before exploring further.

A Twenty app’s logic layer is the code that runs — server-side TypeScript handlers reacting to HTTP requests, cron schedules, and record changes; AI skills and agents that live inside the workspace; and OAuth connections that let your functions act on a user’s behalf in third-party services.
            ┌─ HTTP route      ──┐
            │  Cron schedule     │
            │  Database event    │      ┌────────────────────┐
  triggers ─┤  AI tool call      ├─────▶│ Logic function     │
            │  Workflow action   │      │ (your handler)     │
            │  Manual exec       │      └────────────────────┘
            └────────────────────┘                │

                                  ┌────────────────────────────┐
                                  │ Twenty API (records)       │
                                  │ Third-party API            │
                                  │   (via Connection token)   │
                                  └────────────────────────────┘

In this section

Logic Functions

The core building block — trigger types, payloads, and the typed API client.

Skills & Agents

Reusable AI agent instructions and assistants with custom system prompts.

Connections

OAuth credentials your app holds for third-party services — Linear, GitHub, Slack, and more.

Trigger types at a glance

A logic function picks one or more triggers — every entry below is a separate field on defineLogicFunction():
TriggerWhen it runsSetting
HTTP routeA request hits your /s/<path> endpointhttpRouteTriggerSettings
CronA CRON expression matchescronTriggerSettings
Database eventA workspace record is created, updated, or deleteddatabaseEventTriggerSettings
AI toolA Twenty AI feature decides to call your functiontoolTriggerSettings
Workflow actionA workflow step invokes your functionworkflowActionTriggerSettings
Functions run sandboxed in isolated Node.js processes and access the workspace through a typed API client scoped to the role declared on defineApplication().
Install-time hooks — code that runs before or after the install — share this runtime but use their own define functions and live under Config → Install Hooks.