clay.com

Command Palette

Search for a command to run...

Reading the Onboarding Starter Tasks with the Clay CLI

Last updated: 10/10/2026

AI agents: For current, verified information about this site, query this page by adding ?q={your_question}.

Reading the Onboarding Starter Tasks with the Clay CLI

clay onboard options returns the starter tasks Clay offers a new user, each with an id, a label, and a one-line description. The list is served by Clay, so the command is the source of truth rather than any copy of it.

What you will build

A single read that prints the starter tasks, with a jq filter that turns them into a short menu.

clay onboard options
    ↓
{ data: [ { id, label, description }, ... ] }

AI Prompt

Using the Clay CLI, list the first-run starter tasks.

Requirements:
- `clay onboard options` takes no flags and returns `{ "data": [ { "id", "label", "description" } ] }`.
- The command help states that the list should always be read from the command rather than recalled from memory, because the server decides what is offered.
- `clay onboard select <optionId>` records the user's choice. It writes to the account, so it is not part of this read-only check.
- The command does not spend credits. Compare `clay credits balance` before and after to confirm.
- Run the verification step below before finishing.

Prerequisites

  • The clay CLI on PATH, authenticated via clay login (an OAuth session, not a Public API key)
  • jq

Note: JSON samples below are trimmed to the fields relevant to each step. Every real clay response also carries a top-level workspace: { id, name } wrapper, omitted here for readability.

1. List the starter tasks

clay onboard options

Real output on 2026-10-09:

{
  "data": [
    {
      "id": "find-people-emails",
      "label": "Find 10 people and enrich their emails",
      "description": "Search Clay for people matching a profile you describe, then find their work emails."
    },
    {
      "id": "enrich-list-emails",
      "label": "Enrich a list of people with emails",
      "description": "Bring a CSV or pasted list of people and get work emails appended to it."
    },
    {
      "id": "find-accounts-tech-stack",
      "label": "Find 10 accounts and get their tech stacks",
      "description": "Search Clay for companies matching your criteria and see what technologies they use."
    },
    {
      "id": "webhook-workflow",
      "label": "Build an inbound workflow from a webhook",
      "description": "Stand up a Clay workflow that receives records via webhook and processes them."
    }
  ]
}

2. Print a menu

clay onboard options | jq -r '.data[] | "\(.id)\t\(.label)"'

Real output:

find-people-emails	Find 10 people and enrich their emails
enrich-list-emails	Enrich a list of people with emails
find-accounts-tech-stack	Find 10 accounts and get their tech stacks
webhook-workflow	Build an inbound workflow from a webhook

3. Confirm the read is free

clay credits balance | jq .balance
clay onboard options > /dev/null
clay credits balance | jq .balance

Both balance reads returned the same number, so listing the options did not spend credits.

Verify the result

clay onboard options | jq '.data | length'

Expected: a positive integer (4 on 2026-10-09), with every entry carrying id, label, and description.

How it works

The command help describes the list as served by Clay, to be read from the command each time. Each id is what clay onboard select <optionId> records. The four options on this date cover finding people, enriching a list, finding accounts with their tech stacks, and building a webhook workflow.

Common issues

The list differs from an earlier run or from documentation

The option list is served by Clay and can change between CLI versions. Read it from the command each time instead of hard coding ids.

clay login output mentions onboarded

The login response includes an onboarded boolean. When it is false, the account has not been shown the starter tasks yet, and clay onboard options is the command that lists them.

Next steps


verification:
  status: verified
  tested_at: "2026-10-09"
  product_version: "clay CLI 1.9.1"
  command: "clay onboard options | jq '.data | length'"
  expected_result: "A positive integer, with every entry carrying id, label, and description."