@bubblelab/shared-schemas 0.1.83 → 0.1.85

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/dist/index.js CHANGED
@@ -4210,6 +4210,9 @@ function getCronScheduleInfo(cronString) {
4210
4210
  var BUBBLE_TRIGGER_EVENTS = {
4211
4211
  "slack/bot_mentioned": true,
4212
4212
  "slack/message_received": true,
4213
+ "airtable/record_created": true,
4214
+ "airtable/record_updated": true,
4215
+ "airtable/record_deleted": true,
4213
4216
  "schedule/cron": true,
4214
4217
  "webhook/http": true
4215
4218
  };
@@ -4566,6 +4569,117 @@ Copy the **Bot User OAuth Token** (starts with \`xoxb-\`) from the OAuth & Permi
4566
4569
  required: ["text", "channel", "user", "slack_event"]
4567
4570
  }
4568
4571
  },
4572
+ "airtable/record_created": {
4573
+ serviceName: "Airtable",
4574
+ friendlyName: "When Airtable record is created",
4575
+ description: "Triggered when a new record is created in an Airtable base",
4576
+ setupGuide: `## Airtable Record Created Setup Guide
4577
+
4578
+ ### 1. Connect Your Airtable Account
4579
+ 1. Go to Credentials and add an Airtable OAuth connection
4580
+ 2. Authorize access to your Airtable workspace
4581
+
4582
+ ### 2. Create a Webhook
4583
+ Webhooks must be created via the Airtable API. The system will handle this automatically when you configure the trigger.
4584
+
4585
+ ### 3. Configure the Trigger
4586
+ 1. Select your Airtable credential
4587
+ 2. Choose the base and table to monitor
4588
+ 3. The webhook will be created automatically
4589
+
4590
+ ### Payload Structure
4591
+ The payload includes:
4592
+ - \`base_id\`: The Airtable base ID
4593
+ - \`table_id\`: The table where records were created
4594
+ - \`airtable_event.records\`: Map of record IDs to their field values`,
4595
+ payloadSchema: {
4596
+ type: "object",
4597
+ properties: {
4598
+ base_id: { type: "string", description: "Airtable base ID" },
4599
+ table_id: {
4600
+ type: "string",
4601
+ description: "Table ID where record was created"
4602
+ },
4603
+ airtable_event: {
4604
+ type: "object",
4605
+ description: "Full Airtable event data"
4606
+ }
4607
+ },
4608
+ required: ["base_id", "table_id", "airtable_event"]
4609
+ }
4610
+ },
4611
+ "airtable/record_updated": {
4612
+ serviceName: "Airtable",
4613
+ friendlyName: "When Airtable record is updated",
4614
+ description: "Triggered when a record is updated in an Airtable base",
4615
+ setupGuide: `## Airtable Record Updated Setup Guide
4616
+
4617
+ ### 1. Connect Your Airtable Account
4618
+ 1. Go to Credentials and add an Airtable OAuth connection
4619
+ 2. Authorize access to your Airtable workspace
4620
+
4621
+ ### 2. Configure the Trigger
4622
+ 1. Select your Airtable credential
4623
+ 2. Choose the base and table to monitor
4624
+ 3. The webhook will be created automatically
4625
+
4626
+ ### Payload Structure
4627
+ The payload includes:
4628
+ - \`base_id\`: The Airtable base ID
4629
+ - \`table_id\`: The table where records were updated
4630
+ - \`airtable_event.records\`: Map of record IDs to their current and previous field values`,
4631
+ payloadSchema: {
4632
+ type: "object",
4633
+ properties: {
4634
+ base_id: { type: "string", description: "Airtable base ID" },
4635
+ table_id: {
4636
+ type: "string",
4637
+ description: "Table ID where record was updated"
4638
+ },
4639
+ airtable_event: {
4640
+ type: "object",
4641
+ description: "Full Airtable event data with current and previous values"
4642
+ }
4643
+ },
4644
+ required: ["base_id", "table_id", "airtable_event"]
4645
+ }
4646
+ },
4647
+ "airtable/record_deleted": {
4648
+ serviceName: "Airtable",
4649
+ friendlyName: "When Airtable record is deleted",
4650
+ description: "Triggered when a record is deleted from an Airtable base",
4651
+ setupGuide: `## Airtable Record Deleted Setup Guide
4652
+
4653
+ ### 1. Connect Your Airtable Account
4654
+ 1. Go to Credentials and add an Airtable OAuth connection
4655
+ 2. Authorize access to your Airtable workspace
4656
+
4657
+ ### 2. Configure the Trigger
4658
+ 1. Select your Airtable credential
4659
+ 2. Choose the base and table to monitor
4660
+ 3. The webhook will be created automatically
4661
+
4662
+ ### Payload Structure
4663
+ The payload includes:
4664
+ - \`base_id\`: The Airtable base ID
4665
+ - \`table_id\`: The table where records were deleted
4666
+ - \`airtable_event.recordIds\`: Array of deleted record IDs`,
4667
+ payloadSchema: {
4668
+ type: "object",
4669
+ properties: {
4670
+ base_id: { type: "string", description: "Airtable base ID" },
4671
+ table_id: {
4672
+ type: "string",
4673
+ description: "Table ID where record was deleted"
4674
+ },
4675
+ airtable_event: {
4676
+ type: "object",
4677
+ description: "Full Airtable event data with deleted record IDs"
4678
+ }
4679
+ },
4680
+ required: ["base_id", "table_id", "airtable_event"]
4681
+ }
4682
+ },
4569
4683
  "schedule/cron": {
4570
4684
  serviceName: "Cron",
4571
4685
  friendlyName: "On Schedule",
@@ -4663,6 +4777,9 @@ function isServiceTrigger(eventType) {
4663
4777
  var TRIGGER_EVENT_INTERFACE_MAP = {
4664
4778
  SlackMentionEvent: "slack/bot_mentioned",
4665
4779
  SlackMessageReceivedEvent: "slack/message_received",
4780
+ AirtableRecordCreatedEvent: "airtable/record_created",
4781
+ AirtableRecordUpdatedEvent: "airtable/record_updated",
4782
+ AirtableRecordDeletedEvent: "airtable/record_deleted",
4666
4783
  CronEvent: "schedule/cron",
4667
4784
  WebhookEvent: "webhook/http",
4668
4785
  BubbleTriggerEvent: "webhook/http"