Create client onboarding tasks from an Airtable start date

Start each client with the same clear handoff plan, while keeping their tasks and dates separate.

Automate.ax team7 min read

Integrations used in this example

Give every new client a real project plan

Several clients may be onboarding at once, each with tasks that start on different days. Copying the plan by hand can leave out a task or attach a due date to the wrong client.

This example watches for a client entering a ready view in Airtable. It reads up to 100 active task templates and creates client-linked task records with dates calculated from the client’s start date. When a task is marked Done, it can alert the configured next owner in Slack.

They needed overlapping tasks, relative due dates, and handoffs for several clients at once.Source: an Airtable user’s 90-day onboarding question

What you'll tell the agent

  • Which client record should start onboarding and which field holds its start date. The agent can create a ready grid view filtered to complete records where Tasks Generated is unchecked.
  • The task names, start offsets, durations, and next-owner handoffs. The agent can create the task template if needed.
  • The destination table for client-linked onboarding tasks.
  • The Slack channel and owner IDs for task handoffs.
  • Account authorization for Airtable and Slack.

The agent will create the project and ask you for these details. When Automate.ax asks you to connect an account, authorize the integrations you want this workflow to use.

The automation

A client entering the ready view starts the onboarding run. The code computes task dates, creates separate linked records, and marks Tasks Generated so the client leaves that view. A completed task with a configured next owner creates a Slack handoff.

airtable-client-onboarding.automation.ts
import { automation, transform, withPrerequisites, t } from "automate.ax"
import { airtable } from "automate.ax/airtable"
import { slack } from "automate.ax/slack"
import { z } from "zod"

export default automation(
  "Start client onboarding from an Airtable template",
  {
    parameters: [
      { label: "Airtable base ID", name: "baseId", type: "text" },
      { label: "Ready clients view ID", name: "readyViewId", type: "text" },
      {
        label: "Task templates table ID",
        name: "templatesTableId",
        type: "text",
      },
      {
        label: "Onboarding tasks table ID",
        name: "tasksTableId",
        type: "text",
      },
      { label: "Task status field ID", name: "statusFieldId", type: "text" },
      {
        label: "Handoff Slack channel ID",

What a run looks like

Example input

Acme starts October 1. “Collect assets” starts on day 0 and lasts 5 days; “QA setup” starts on day 6 and lasts 4 days.

Expected result

Acme gets two linked tasks due October 6 and October 11. A second client entering the view gets its own task records and dates.

Set it up

  1. Copy the setup prompt at the top into your coding agent.
  2. Give the agent your client and task template tables, or ask it to create a small test base with those fields.
  3. Authorize Airtable and Slack, choose the ready view and handoff channel, and review the template offsets before deployment.

Check the result

Move a disposable client record into the ready view with a known start date. Compare the task count, client links, and calculated dates with the template. Mark one task Done and check the next-owner Slack handoff. Remove the test records when you are done.

Where this workflow stops

  • Dates are calculated when onboarding starts; a later delay does not automatically reschedule dependent tasks.
  • Changing a task template does not retroactively edit work already created for an existing client.
  • The automation creates large task sets in batches. If a later batch fails, earlier tasks remain; check for partial work before retrying to avoid duplicates.
  • Use a supported Airtable grid view and check webhook capacity on the base before enabling the trigger.

Common questions

Do I need to duplicate the template myself?

No. The setup agent can prepare the tables and fields, and the automation creates the client-specific task records when a client is ready.

What if a client start date changes later?

The automation does not move existing task dates. Decide whether a start-date change should recalculate all tasks, only future tasks, or require an owner’s review before adding that behavior.

More automation examples