# geni crm sequences (/cli/crm/sequences)



Sequences are per-person email drafts, fully personalized, each living in exactly one campaign. The CLI reads and manages **drafts**; delivery is a campaign sync to an external sequencer (Instantly, Smartlead, CSV) from the dashboard. With no verb, `geni crm sequences` lists drafts.

## list (default) [#list-default]

```sh
geni crm sequences --campaign cam_01HX
```

List sequence drafts across the workspace, one campaign, or one person.

| Arg / Flag        | Notes                                     |
| ----------------- | ----------------------------------------- |
| `[query]`         | Match person name, company, or recipient. |
| `--person <id>`   | Only this person's drafts.                |
| `--campaign <id>` | Only drafts in this campaign.             |
| `--json`          | Machine-readable output.                  |

## get [#get]

```sh
geni crm sequences get seq_01HX --field campaignId
```

Print one draft with its steps.

| Arg / Flag       | Notes                        |
| ---------------- | ---------------------------- |
| `<id>`           | Sequence id.                 |
| `--field <path>` | Print one dotted-path value. |

## create [#create]

```sh
geni crm sequences create --person per_01HX --campaign cam_01HX --json '{"steps":[{"subject":"Quick question","body":"Hi Ada, …","waitDays":0},{"body":"Bumping this…","waitDays":3}]}'
```

Draft a sequence for a person in a campaign, adding them as a member if needed. `--json` is `{ steps: [{ subject?, body, waitDays }], recipientContactPointId? }`. The first step carries the subject and `waitDays: 0`; follow-ups reply in-thread after `waitDays` with no reply. A member has one draft per campaign, so creating again rewrites the existing draft (the next sync updates the lead instead of duplicating it).

| Flag              | Notes                                    |
| ----------------- | ---------------------------------------- |
| `--person <id>`   | Required. Person the sequence targets.   |
| `--campaign <id>` | Required. Campaign the draft belongs to. |
| `--json <body>`   | Required. JSON sequence definition.      |

## update [#update]

```sh
geni crm sequences update seq_01HX --json '{"steps":[{"subject":"Quick question","body":"Hi Ada, …","waitDays":0}]}'
```

Replace a draft wholesale (steps and recipient). The next campaign sync pushes the new copy to linked sequencers.

| Arg / Flag      | Notes                               |
| --------------- | ----------------------------------- |
| `<id>`          | Sequence id.                        |
| `--json <body>` | Required. JSON sequence definition. |

## delete [#delete]

```sh
geni crm sequences delete seq_01HX
```

Delete a draft. The person stays a member of the campaign.

| Arg    | Notes        |
| ------ | ------------ |
| `<id>` | Sequence id. |
