Skip to main content
Third-party blocks come from connected apps and let workflows receive events from external systems or push actions out to them. They appear in the block picker once you connect the app. Each one is either a trigger or an action. A trigger starts a workflow when something happens in the outside tool. An action sends data outward when the workflow runs. This page covers what those blocks can do and what they cost. It also shows how to ship them without writing to production systems by accident.

Understanding what third-party blocks cover

A connected app contributes its own triggers and actions to the workflow builder. The exact set depends on the app. The common patterns are:
  • Slack alerts for stage changes and new inbound leads. See Slack deal alerts on stage change for a full build.
  • Form intake from Typeform and similar tools, which arrives as a trigger you can route into a record.
  • Sequence activity from Outreach and other engagement platforms.
  • Campaign sync with Mailchimp and similar email tools.
  • Ecosystem actions for Webflow, Notion, Linear, and other connected apps.
  • Custom app blocks you build yourself with the App SDK (software development kit). See App SDK custom blocks.
When no native block exists for a service, the Send HTTP request block calls any REST API directly. A missing integration is rarely a hard stop.

Connecting an app first

A block only appears in the builder after its app is connected to the workspace. Connect the app before you start wiring a workflow around it.
1

Connect the app in workspace settings

Open the app’s integration page in your Attio workspace settings and authorize it. The member who completes this step owns the connection.
2

Add the block in the workflow builder

In the workflow editor, open the block picker and search for the app by name. Its triggers and actions now appear alongside the native blocks.
3

Map the inputs to your data

Configure the block’s fields, referencing earlier outputs where needed. For example, you might send jane@acme.com to a Mailchimp audience or post a deal name to #revenue in Slack.

Confirming an integration block’s cost

An integration block that sends or receives data externally generally costs 1 credit each time it runs. Free logic blocks such as conditions and delays still consume no credits. AI blocks cost a variable amount that depends on the work they do. The block sidebar is the authoritative place to confirm a cost before you build:
  • A fixed-cost block shows its credit cost.
  • An AI block shows a dynamic cost.
  • A free block shows no cost.
For the full credit table, plan allowances, and timeout numbers, see Credits & pricing explained. Per-workflow credit caps were removed in the new engine, so there is no cap to set on integration spend. Control it with conditions and filters instead.

Treating external writes as production operations

A block that writes to Slack, Mailchimp, Outreach, or any other live system is a production operation, not a draft. Build it with the same care you would give a write to your own CRM.
An external action fires for real every time the workflow runs. A misconfigured Slack or Mailchimp block can message customers or sync the wrong audience before you notice. Gate every external write behind a condition or filter. Test against a safe record, such as Priya Sharma at acme.com, before you publish.

Planning for credential ownership

The member who connects an app owns that connection. Its access leaves with them. If that person changes roles or leaves the company, every workflow that depends on their connection can stop working. Decide up front who owns each connection. For anything business-critical, prefer a shared or service account over a personal one. Review ownership whenever a team member’s status changes.

Replacing repeated HTTP calls with a custom block

Sometimes you call the same service with Send HTTP request in workflow after workflow. When that pattern repeats, package the call as a custom workflow block with the App SDK. A custom block hides the authentication and request shape behind named inputs. Colleagues then configure it like any native block. They no longer have to rebuild the request each time. See HTTP and JSON patterns for when to stay with a raw request. See App SDK custom blocks for the build.

Source

Attio Workflows block library. Last reviewed against the Attio Help Center, June 2026.

See also