@messagebird/n8n-nodes-bird 0.4.1 → 0.5.1
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/README.md
CHANGED
|
@@ -15,14 +15,14 @@ On a self-hosted instance that has not enabled community nodes in the panel, use
|
|
|
15
15
|
The **Bird** node covers the public Bird API: email and SMS sends, delivery status and event timelines, WhatsApp, verification, templates, sending domains, suppressions, inbound routes, webhooks, statistics, lookup, and more. Resources and operations mirror the API reference at https://bird.com/docs/api. Three areas are deliberately out: publishing and subscribing on Realtime, which needs an app key and secret this credential cannot hold (managing Realtime apps and keys is included); the attachment and media downloads, which return bytes rather than the JSON a workflow item carries; and redirect-based media fetches.
|
|
16
16
|
|
|
17
17
|
<details>
|
|
18
|
-
<summary><strong>
|
|
18
|
+
<summary><strong>178 operations across 22 resources</strong></summary>
|
|
19
19
|
|
|
20
20
|
- **Audience** (9) — Add Contacts, Create, Delete, Get, List, List Contacts, Remove Contact, Remove Contacts, Update
|
|
21
21
|
- **Contact** (7) — Batch, Create, Delete, Get, List, List Preferences, Update
|
|
22
22
|
- **Contact Property** (6) — Archive, Create, Get, List, Unarchive, Update
|
|
23
23
|
- **Doc** (2) — Read, Search
|
|
24
24
|
- **Domain** (9) — Create, Delete, Get, List, List Events, Release Tracking, Share DNS Records, Update, Verify
|
|
25
|
-
- **Email** (
|
|
25
|
+
- **Email** (58) — Cancel, Content, Create Inbound Route, Create Mailbox, Create Mailbox Message, Create Mailbox Receive Rule, Delete Inbound Route, Delete Mailbox, Delete Mailbox Receive Rule, Delete Thread, Delete Thread Message, Get, Get Inbound Route, Get Mailbox, Get Mailbox Statistics, Get SMTP Config, Get Thread, Get Thread Message, Get Thread Message Body, List, List Events, List Inbound Routes, List Mailbox Labels, List Mailbox Messages, List Mailbox Receive Rules, List Mailboxes, List SMTP Configs, List Templates, List Thread Message Attachments, List Thread Messages, List Threads, Recipients, Reply to Thread Message, Restore Mailbox, Resume Mailbox, Send, Send Batch, Stats By Bounce Code, Stats By Broadcast, Stats By Category, Stats By Client, Stats By Complaint Type, Stats By Location, Stats By Mailbox Provider, Stats By Mailbox Provider Region, Stats By Recipient Domain, Stats By Sending Domain, Stats By Sending IP, Stats By Tag, Stats By Template, Stats Daily, Stats Hourly, Stats Summary, Update Inbound Route, Update Mailbox, Update SMTP Config, Update Thread, Update Thread Message
|
|
26
26
|
- **Inbound Address** (5) — Create, Delete, Get, List, Update
|
|
27
27
|
- **Inbound Message** (4) — Attachments, Body, Get, List
|
|
28
28
|
- **Lookup** (2) — Email, Phone Number
|
|
@@ -67,6 +67,7 @@ exports.birdProperties = [
|
|
|
67
67
|
{ name: "List Mailbox Receive Rules", value: "mailboxes_receive_rules_list", action: "List receive rules", description: "List receive rules" },
|
|
68
68
|
{ name: "List Mailboxes", value: "mailboxes_list", action: "List mailboxes" },
|
|
69
69
|
{ name: "List SMTP Configs", value: "smtp_configs_list", action: "List SMTP configs" },
|
|
70
|
+
{ name: "List Templates", value: "templates_list", action: "List email templates", description: "List email templates" },
|
|
70
71
|
{ name: "List Thread Message Attachments", value: "threads_messages_attachments", action: "List the attachments of a thread message", description: "List a thread message's attachments" },
|
|
71
72
|
{ name: "List Thread Messages", value: "threads_messages_list", action: "List messages in a thread", description: "List messages in a thread" },
|
|
72
73
|
{ name: "List Threads", value: "threads_list", action: "List threads" },
|
|
@@ -2441,6 +2442,90 @@ exports.birdProperties = [
|
|
|
2441
2442
|
},
|
|
2442
2443
|
],
|
|
2443
2444
|
},
|
|
2445
|
+
{
|
|
2446
|
+
displayName: "Return All",
|
|
2447
|
+
name: "returnAll",
|
|
2448
|
+
type: "boolean",
|
|
2449
|
+
displayOptions: { show: { resource: ["email"], operation: ["templates_list"] } },
|
|
2450
|
+
default: false,
|
|
2451
|
+
description: "Whether to return all results or only up to a given limit",
|
|
2452
|
+
},
|
|
2453
|
+
{
|
|
2454
|
+
displayName: "Limit",
|
|
2455
|
+
name: "limit",
|
|
2456
|
+
type: "number",
|
|
2457
|
+
typeOptions: { minValue: 1 },
|
|
2458
|
+
displayOptions: { show: { resource: ["email"], operation: ["templates_list"] } },
|
|
2459
|
+
default: 50,
|
|
2460
|
+
description: "Max number of results to return",
|
|
2461
|
+
},
|
|
2462
|
+
{
|
|
2463
|
+
displayName: "Additional Fields",
|
|
2464
|
+
name: "additionalFields",
|
|
2465
|
+
type: "collection",
|
|
2466
|
+
placeholder: "Add Field",
|
|
2467
|
+
default: {},
|
|
2468
|
+
displayOptions: { show: { resource: ["email"], operation: ["templates_list"] } },
|
|
2469
|
+
options: [
|
|
2470
|
+
{
|
|
2471
|
+
displayName: "Category",
|
|
2472
|
+
name: "category",
|
|
2473
|
+
type: "options",
|
|
2474
|
+
options: [
|
|
2475
|
+
{ name: "Not Set", value: "" },
|
|
2476
|
+
{ name: "Transactional", value: "transactional" },
|
|
2477
|
+
{ name: "Marketing", value: "marketing" },
|
|
2478
|
+
],
|
|
2479
|
+
default: "",
|
|
2480
|
+
description: "Return only `transactional` or `marketing` templates; omit to return both categories",
|
|
2481
|
+
},
|
|
2482
|
+
{
|
|
2483
|
+
displayName: "Q",
|
|
2484
|
+
name: "q",
|
|
2485
|
+
type: "string",
|
|
2486
|
+
default: "",
|
|
2487
|
+
description: "A case-insensitive substring search across the template's slug, name, and description",
|
|
2488
|
+
},
|
|
2489
|
+
{
|
|
2490
|
+
displayName: "Scope",
|
|
2491
|
+
name: "scope",
|
|
2492
|
+
type: "options",
|
|
2493
|
+
options: [
|
|
2494
|
+
{ name: "Not Set", value: "" },
|
|
2495
|
+
{ name: "System", value: "system" },
|
|
2496
|
+
{ name: "Workspace", value: "workspace" },
|
|
2497
|
+
],
|
|
2498
|
+
default: "",
|
|
2499
|
+
description: "Filter by who owns the template. Use `system` for our built-in templates and `workspace` for the ones your workspace created. Leave it out to get both.",
|
|
2500
|
+
},
|
|
2501
|
+
{
|
|
2502
|
+
displayName: "Source",
|
|
2503
|
+
name: "source",
|
|
2504
|
+
type: "options",
|
|
2505
|
+
options: [
|
|
2506
|
+
{ name: "Not Set", value: "" },
|
|
2507
|
+
{ name: "Html", value: "html" },
|
|
2508
|
+
],
|
|
2509
|
+
default: "",
|
|
2510
|
+
description: "Return only templates authored in this format",
|
|
2511
|
+
},
|
|
2512
|
+
{
|
|
2513
|
+
displayName: "Theme",
|
|
2514
|
+
name: "theme",
|
|
2515
|
+
type: "options",
|
|
2516
|
+
options: [
|
|
2517
|
+
{ name: "Arcane", value: "arcane" },
|
|
2518
|
+
{ name: "Barebone", value: "barebone" },
|
|
2519
|
+
{ name: "Matte", value: "matte" },
|
|
2520
|
+
{ name: "Not Set", value: "" },
|
|
2521
|
+
{ name: "Protocol", value: "protocol" },
|
|
2522
|
+
{ name: "Studio", value: "studio" },
|
|
2523
|
+
],
|
|
2524
|
+
default: "",
|
|
2525
|
+
description: "Filter by the visual theme a built-in template is designed in. Only our built-in templates have a theme, so naming one returns built-ins alone.",
|
|
2526
|
+
},
|
|
2527
|
+
],
|
|
2528
|
+
},
|
|
2444
2529
|
{
|
|
2445
2530
|
displayName: "To",
|
|
2446
2531
|
name: "to",
|
|
@@ -23,6 +23,7 @@ exports.birdRoutes = {
|
|
|
23
23
|
"email:stats_by_bounce_code": { method: "GET", path: "/v1/email/stats/bounce-codes", pathParams: [], topLevel: [], collections: ["additionalFields", "sort"], query: ["from", "to", "timezone", "category", "sort", "limit"], body: [], jsonFields: [], structured: {}, renames: { "max_results": "limit" }, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: true, idempotencyHeader: false, scopes: ["emails"] },
|
|
24
24
|
"email:stats_by_complaint_type": { method: "GET", path: "/v1/email/stats/complaint-types", pathParams: [], topLevel: [], collections: ["additionalFields", "sort"], query: ["from", "to", "timezone", "category", "sort", "limit"], body: [], jsonFields: [], structured: {}, renames: { "max_results": "limit" }, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: true, idempotencyHeader: false, scopes: ["emails"] },
|
|
25
25
|
"email:stats_by_broadcast": { method: "GET", path: "/v1/email/stats/broadcasts", pathParams: [], topLevel: [], collections: ["additionalFields", "sort"], query: ["from", "to", "category", "sort", "limit"], body: [], jsonFields: [], structured: {}, renames: { "max_results": "limit" }, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: true, idempotencyHeader: false, scopes: ["email_marketing"] },
|
|
26
|
+
"email:templates_list": { method: "GET", path: "/v1/email/templates", pathParams: [], topLevel: [], collections: ["additionalFields"], query: ["scope", "category", "source", "theme", "q", "limit", "starting_after", "ending_before"], body: [], jsonFields: [], structured: {}, renames: {}, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: true, collection: true, idempotencyHeader: false, scopes: ["email_management"] },
|
|
26
27
|
"sms:send": { method: "POST", path: "/v1/sms/messages", pathParams: [], topLevel: ["to"], collections: ["additionalFields"], query: [], body: ["to", "from", "text", "category", "tags", "metadata", "options", "template"], jsonFields: [], structured: { "tags": "list", "metadata": "map", "options": "struct", "template": "struct" }, renames: {}, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: false, idempotencyHeader: true, scopes: ["sms"] },
|
|
27
28
|
"sms:send_batch": { method: "POST", path: "/v1/sms/batches", pathParams: [], topLevel: ["messages"], collections: ["additionalFields"], query: [], body: ["messages"], jsonFields: ["messages"], structured: {}, renames: {}, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: true, idempotencyHeader: true, scopes: ["sms"] },
|
|
28
29
|
"sms:get": { method: "GET", path: "/v1/sms/messages/{message_id}", pathParams: ["message_id"], topLevel: ["message_id"], collections: ["additionalFields"], query: [], body: [], jsonFields: [], structured: {}, renames: {}, arrayFields: [], dateTimeFields: [], nullableFields: [], binaryFields: [], rawBodyField: "", paginated: false, collection: false, idempotencyHeader: false, scopes: ["sms"] },
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@messagebird/n8n-nodes-bird",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "The official Bird node for n8n: email, SMS, WhatsApp, and verification, plus a webhook trigger for Bird events.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"build": "rimraf dist && tsc6 && cp nodes/Bird/bird.svg nodes/Bird/bird-dark.svg nodes/Bird/Bird.node.json nodes/Bird/BirdTrigger.node.json dist/nodes/Bird/ && cp credentials/bird.svg credentials/bird-dark.svg dist/credentials/",
|
|
48
48
|
"test": "vitest run",
|
|
49
49
|
"typecheck": "tsc6 --noEmit",
|
|
50
|
-
"lint": "node scan.mjs",
|
|
50
|
+
"lint": "npm run typecheck && node scan.mjs",
|
|
51
51
|
"prepack": "npm run build"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|