resend-cli 2.12.0 → 2.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "resend-cli",
3
- "version": "2.12.0",
3
+ "version": "2.14.0",
4
4
  "description": "The official CLI for Resend",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -46,7 +46,7 @@
46
46
  "esbuild": "0.28.1",
47
47
  "esbuild-wasm": "0.28.0",
48
48
  "picocolors": "1.1.1",
49
- "resend": "6.19.0"
49
+ "resend": "6.21.0"
50
50
  },
51
51
  "pkg": {
52
52
  "scripts": [
@@ -13,7 +13,7 @@ metadata:
13
13
  author: resend
14
14
  # Skill version is independent from the CLI/package.json version —
15
15
  # bump it on skill content changes, not CLI releases.
16
- version: "2.6.0"
16
+ version: "2.8.0"
17
17
  homepage: https://resend.com/docs/cli-agents
18
18
  source: https://github.com/resend/resend-cli
19
19
  openclaw:
@@ -57,6 +57,7 @@ references:
57
57
  - references/templates.md
58
58
  - references/topics.md
59
59
  - references/logs.md
60
+ - references/careers.md
60
61
  - references/suppressions.md
61
62
  - references/webhooks.md
62
63
  - references/auth.md
@@ -144,9 +145,10 @@ Auth resolves: `--api-key` flag > `RESEND_API_KEY` env > config file (`resend lo
144
145
  | `emails receiving` | list, get, attachments, forward, listen |
145
146
  | `domains` | create, verify, get, claim, update, delete, list |
146
147
  | `logs` | list, get, open |
148
+ | `careers` | list, apply — browse open positions at Resend and apply |
147
149
  | `suppressions` _(beta)_ | list, add, get, delete, batch — requires account enrollment |
148
150
  | `api-keys` | create, list, delete |
149
- | `automations` | create, get, list, update, delete, stop, open, runs |
151
+ | `automations` | create, get, list, update, delete, duplicate, stop, open, runs |
150
152
  | `events` | create, get, list, update, delete, send, open |
151
153
  | `broadcasts` | create, send, update, delete, list |
152
154
  | `contacts` | create, update, delete, segments, topics, imports |
@@ -228,6 +230,7 @@ resend doctor -q
228
230
  - **Defining contact properties** → [references/contact-properties.md](references/contact-properties.md)
229
231
  - **Working with templates** → [references/templates.md](references/templates.md)
230
232
  - **Viewing API request logs** → [references/logs.md](references/logs.md)
233
+ - **Browsing or applying to jobs at Resend** → [references/careers.md](references/careers.md)
231
234
  - **Managing the suppression list** (beta) → [references/suppressions.md](references/suppressions.md)
232
235
  - **Creating automations or sending events** → [references/automations.md](references/automations.md)
233
236
  - **Setting up webhooks or listening for events** → [references/webhooks.md](references/webhooks.md)
@@ -54,6 +54,18 @@ resend automations update <id> --status enabled
54
54
 
55
55
  ---
56
56
 
57
+ ## automations duplicate
58
+
59
+ ```
60
+ resend automations duplicate <id>
61
+ ```
62
+
63
+ Creates a copy of an existing automation, including its steps and connections.
64
+
65
+ Returns `{"object":"automation","id":"<new-automation-id>"}`.
66
+
67
+ ---
68
+
57
69
  ## automations stop
58
70
 
59
71
  ```
@@ -0,0 +1,51 @@
1
+ # careers
2
+
3
+ Detailed flag specifications for `resend careers` commands — browse open positions at Resend and submit job applications from the terminal.
4
+
5
+ Any valid Resend API key works; applications are not tied to the key's team.
6
+
7
+ ---
8
+
9
+ ## careers list
10
+
11
+ List open positions (default subcommand: bare `resend careers` runs this). Fetched live from Resend's applicant tracking system — no pagination.
12
+
13
+ No flags.
14
+
15
+ **Output:**
16
+ ```json
17
+ {"object":"list","data":[{"id":"<id>","title":"<title>","department":"<department>","team":"<team>","location":"<location>","employment_type":"<type>","workplace_type":"<type>","published_at":"<date>"}]}
18
+ ```
19
+
20
+ ---
21
+
22
+ ## careers apply
23
+
24
+ Submit a job application as multipart form data.
25
+
26
+ **Argument:** `<id>` — Job posting ID (required in non-interactive mode)
27
+
28
+ | Flag | Type | Required | Description |
29
+ |------|------|----------|-------------|
30
+ | `--name <name>` | string | Yes (non-interactive) | Applicant's full name |
31
+ | `--email <email>` | string | Yes (non-interactive) | Applicant's email address |
32
+ | `--resume <path>` | string | Yes (non-interactive) | Path to a local resume file (PDF recommended, max 10MB) |
33
+ | `--field <path=value>` | string | No | Answer to a job-specific question; repeatable. Paths are shown on the job posting page at resend.com/careers, or via `GET /careers/<id>` (system fields use `name`/`email`/`resume`; job-specific questions use UUID paths) |
34
+ | `--yes` | boolean | No | Skip the confirmation prompt (interactive mode only) |
35
+
36
+ Interactive mode walks through every question in the job's application form; flags pre-fill their matching questions. Non-interactive mode submits exactly what the flags provide — required job-specific questions missing from `--field` are rejected by the API with a `validation_error`.
37
+
38
+ **Output:** `{"success":true}`
39
+
40
+ **Notes:**
41
+ - Applying twice with the same email fails with `apply_error` ("An application has already been submitted...").
42
+ - The resume is required by the API for every position.
43
+
44
+ **Example (non-interactive):**
45
+ ```bash
46
+ resend careers apply <id> \
47
+ --name "Ada Lovelace" \
48
+ --email ada@example.com \
49
+ --resume ./resume.pdf \
50
+ --field '<uuid>=Because I love email infrastructure.'
51
+ ```