Skip to content

Commit 6dec944

Browse files
committed
fix(integrations): build fix, doc accuracy, and comment cleanup
- google-docs: align manualDocumentId condition with the document selector so the documentId canonical group has matching conditions (fixes canonical-pair block test / build) - microsoft-excel: describe fill/font color as hex code only (Graph does not reliably accept named colors) - remove verbose explanatory inline comments from new tools (keep idiomatic section dividers) - regenerate integration docs + integrations.json catalog from the block registry
1 parent 96caadb commit 6dec944

21 files changed

Lines changed: 2356 additions & 55 deletions

File tree

apps/docs/components/icons.tsx

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5730,6 +5730,31 @@ export function McpIcon(props: SVGProps<SVGSVGElement>) {
57305730
)
57315731
}
57325732

5733+
export function A2AIcon(props: SVGProps<SVGSVGElement>) {
5734+
return (
5735+
<svg {...props} viewBox='0 0 860 860' fill='none' xmlns='http://www.w3.org/2000/svg'>
5736+
<circle cx='544' cy='307' r='27' fill='currentColor' />
5737+
<circle cx='154' cy='307' r='27' fill='currentColor' />
5738+
<circle cx='706' cy='307' r='27' fill='currentColor' />
5739+
<circle cx='316' cy='307' r='27' fill='currentColor' />
5740+
<path
5741+
d='M336.5 191H162C97.66 191 45.5 243.16 45.5 307.5C45.5 371.84 97.64 424 161.99 424C206.55 424 256.29 424 296.5 424C487.5 424 374 191.01 569 191C613.89 191 658.97 191 698.03 191C762.37 191 814.5 243.16 814.5 307.5C814.5 371.84 762.34 424 698 424H523.5'
5742+
stroke='currentColor'
5743+
strokeWidth='48'
5744+
strokeLinecap='round'
5745+
/>
5746+
<path
5747+
d='M256 510C270.36 510 282 521.64 282 536C282 550.36 270.36 562 256 562H148C133.64 562 122 550.36 122 536C122 521.64 133.64 510 148 510H256ZM712 510C726.36 510 738 521.64 738 536C738 550.36 726.36 562 712 562H360C345.64 562 334 550.36 334 536C334 521.64 345.64 510 360 510H712Z'
5748+
fill='currentColor'
5749+
/>
5750+
<path
5751+
d='M444 628C458.36 628 470 639.64 470 654C470 668.36 458.36 680 444 680H100C85.64 680 74 668.36 74 654C74 639.64 85.64 628 100 628H444ZM548 628C562.36 628 574 639.64 574 654C574 668.36 562.36 680 548 680C533.64 680 522 668.36 522 654C522 639.64 533.64 628 548 628ZM760 628C774.36 628 786 639.64 786 654C786 668.36 774.36 680 760 680H652C637.64 680 626 668.36 626 654C626 639.64 637.64 628 652 628H760Z'
5752+
fill='currentColor'
5753+
/>
5754+
</svg>
5755+
)
5756+
}
5757+
57335758
export function WordpressIcon(props: SVGProps<SVGSVGElement>) {
57345759
return (
57355760
<svg {...props} xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.93 25.93'>

apps/docs/content/docs/en/integrations/airtable.mdx

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ In Sim, the Airtable integration enables your agents to interact with your Airta
2626

2727
## Usage Instructions
2828

29-
Integrates Airtable into the workflow. Can list bases, list tables (with schema), and create, get, list, or update records. Can also be used in trigger mode to trigger a workflow when an update is made to an Airtable table.
29+
Integrates Airtable into the workflow. Can list bases, list tables (with schema), and create, get, list, update, upsert, or delete records. Can also be used in trigger mode to trigger a workflow when an update is made to an Airtable table.
3030

3131

3232

@@ -203,6 +203,58 @@ Update multiple existing records in an Airtable table
203203
|`recordCount` | number | Number of records updated |
204204
|`updatedRecordIds` | array | List of updated record IDs |
205205

206+
### `airtable_upsert_records`
207+
208+
Update existing records or create new ones in an Airtable table, matching on the specified merge fields
209+
210+
#### Input
211+
212+
| Parameter | Type | Required | Description |
213+
| --------- | ---- | -------- | ----------- |
214+
| `baseId` | string | Yes | Airtable base ID \(starts with "app", e.g., "appXXXXXXXXXXXXXX"\) |
215+
| `tableId` | string | Yes | Table ID \(starts with "tbl"\) or table name |
216+
| `records` | json | Yes | Array of records to upsert, each with a `fields` object |
217+
| `fieldsToMergeOn` | json | Yes | Array of field names used to match existing records \(max 3\). A record is updated when all merge fields match, otherwise it is created. Example: \["Name"\] |
218+
| `typecast` | boolean | No | When true, Airtable automatically converts string values to the field type |
219+
220+
#### Output
221+
222+
| Parameter | Type | Description |
223+
| --------- | ---- | ----------- |
224+
| `records` | array | Array of upserted Airtable records |
225+
|`id` | string | Record ID |
226+
|`createdTime` | string | Record creation timestamp |
227+
|`fields` | json | Record field values |
228+
| `createdRecords` | array | IDs of records that were created |
229+
| `updatedRecords` | array | IDs of records that were updated |
230+
| `metadata` | json | Operation metadata |
231+
|`recordCount` | number | Total number of records returned |
232+
|`createdCount` | number | Number of records created |
233+
|`updatedCount` | number | Number of records updated |
234+
235+
### `airtable_delete_records`
236+
237+
Delete one or more records from an Airtable table by ID
238+
239+
#### Input
240+
241+
| Parameter | Type | Required | Description |
242+
| --------- | ---- | -------- | ----------- |
243+
| `baseId` | string | Yes | Airtable base ID \(starts with "app", e.g., "appXXXXXXXXXXXXXX"\) |
244+
| `tableId` | string | Yes | Table ID \(starts with "tbl"\) or table name |
245+
| `recordIds` | json | Yes | Array of record IDs to delete \(each starts with "rec", e.g., \["recXXXXXXXXXXXXXX"\]\). Pass a single-element array to delete one record. |
246+
247+
#### Output
248+
249+
| Parameter | Type | Description |
250+
| --------- | ---- | ----------- |
251+
| `records` | array | Array of deleted Airtable records |
252+
|`id` | string | Record ID |
253+
|`deleted` | boolean | Whether the record was deleted |
254+
| `metadata` | json | Operation metadata |
255+
|`recordCount` | number | Number of records deleted |
256+
|`deletedRecordIds` | array | List of deleted record IDs |
257+
206258
### `airtable_get_base_schema`
207259

208260
Get the schema of all tables, fields, and views in an Airtable base

apps/docs/content/docs/en/integrations/clerk.mdx

Lines changed: 204 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -440,3 +440,207 @@ Revoke a session to immediately invalidate it
440440
| `success` | boolean | Operation success status |
441441

442442

443+
444+
## Triggers
445+
446+
A **Trigger** is a block that starts a workflow when an event happens in this service.
447+
448+
### Clerk Organization Created
449+
450+
Trigger workflow when a Clerk organization is created
451+
452+
#### Configuration
453+
454+
| Parameter | Type | Required | Description |
455+
| --------- | ---- | -------- | ----------- |
456+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
457+
458+
#### Output
459+
460+
| Parameter | Type | Description |
461+
| --------- | ---- | ----------- |
462+
| `type` | string | Event type \(e.g., user.created, session.created\) |
463+
| `object` | string | Always "event" |
464+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
465+
| `instance_id` | string | Identifier of your Clerk instance |
466+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
467+
| `organizationId` | string | Clerk organization ID \(data.id\) |
468+
| `name` | string | Organization name \(data.name\) |
469+
| `slug` | string | Organization slug \(data.slug\) |
470+
| `createdBy` | string | User ID of the creator \(data.created_by\) |
471+
| `membersCount` | number | Number of members \(data.members_count\) |
472+
| `maxAllowedMemberships` | number | Maximum allowed memberships \(data.max_allowed_memberships\) |
473+
| `createdAt` | number | Organization creation timestamp \(data.created_at\) |
474+
475+
476+
---
477+
478+
### Clerk Organization Membership Created
479+
480+
Trigger workflow when a Clerk organization membership is created
481+
482+
#### Configuration
483+
484+
| Parameter | Type | Required | Description |
485+
| --------- | ---- | -------- | ----------- |
486+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
487+
488+
#### Output
489+
490+
| Parameter | Type | Description |
491+
| --------- | ---- | ----------- |
492+
| `type` | string | Event type \(e.g., user.created, session.created\) |
493+
| `object` | string | Always "event" |
494+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
495+
| `instance_id` | string | Identifier of your Clerk instance |
496+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
497+
| `membershipId` | string | Membership ID \(data.id\) |
498+
| `role` | string | Membership role, e.g. org:admin \(data.role\) |
499+
| `organizationId` | string | Organization ID \(data.organization.id\) |
500+
| `userId` | string | User ID of the member \(data.public_user_data.user_id\) |
501+
| `createdAt` | number | Membership creation timestamp \(data.created_at\) |
502+
503+
504+
---
505+
506+
### Clerk Session Created
507+
508+
Trigger workflow when a Clerk session is created
509+
510+
#### Configuration
511+
512+
| Parameter | Type | Required | Description |
513+
| --------- | ---- | -------- | ----------- |
514+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
515+
516+
#### Output
517+
518+
| Parameter | Type | Description |
519+
| --------- | ---- | ----------- |
520+
| `type` | string | Event type \(e.g., user.created, session.created\) |
521+
| `object` | string | Always "event" |
522+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
523+
| `instance_id` | string | Identifier of your Clerk instance |
524+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
525+
| `sessionId` | string | Clerk session ID \(data.id\) |
526+
| `userId` | string | User the session belongs to \(data.user_id\) |
527+
| `clientId` | string | Client ID for the session \(data.client_id\) |
528+
| `status` | string | Session status \(data.status\) |
529+
| `createdAt` | number | Session creation timestamp \(data.created_at\) |
530+
531+
532+
---
533+
534+
### Clerk User Created
535+
536+
Trigger workflow when a Clerk user is created
537+
538+
#### Configuration
539+
540+
| Parameter | Type | Required | Description |
541+
| --------- | ---- | -------- | ----------- |
542+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
543+
544+
#### Output
545+
546+
| Parameter | Type | Description |
547+
| --------- | ---- | ----------- |
548+
| `type` | string | Event type \(e.g., user.created, session.created\) |
549+
| `object` | string | Always "event" |
550+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
551+
| `instance_id` | string | Identifier of your Clerk instance |
552+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
553+
| `userId` | string | Clerk user ID \(data.id\) |
554+
| `firstName` | string | User's first name |
555+
| `lastName` | string | User's last name |
556+
| `username` | string | User's username |
557+
| `imageUrl` | string | Profile image URL |
558+
| `primaryEmailAddressId` | string | Primary email address ID |
559+
| `emailAddresses` | json | Array of email address objects |
560+
| `phoneNumbers` | json | Array of phone number objects |
561+
| `externalId` | string | External system ID linked to the user |
562+
| `createdAt` | number | User creation timestamp \(data.created_at\) |
563+
| `updatedAt` | number | User last update timestamp \(data.updated_at\) |
564+
565+
566+
---
567+
568+
### Clerk User Deleted
569+
570+
Trigger workflow when a Clerk user is deleted
571+
572+
#### Configuration
573+
574+
| Parameter | Type | Required | Description |
575+
| --------- | ---- | -------- | ----------- |
576+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
577+
578+
#### Output
579+
580+
| Parameter | Type | Description |
581+
| --------- | ---- | ----------- |
582+
| `type` | string | Event type \(e.g., user.created, session.created\) |
583+
| `object` | string | Always "event" |
584+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
585+
| `instance_id` | string | Identifier of your Clerk instance |
586+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
587+
| `userId` | string | Deleted Clerk user ID \(data.id\) |
588+
| `deleted` | boolean | Whether the user was deleted \(data.deleted\) |
589+
590+
591+
---
592+
593+
### Clerk User Updated
594+
595+
Trigger workflow when a Clerk user is updated
596+
597+
#### Configuration
598+
599+
| Parameter | Type | Required | Description |
600+
| --------- | ---- | -------- | ----------- |
601+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
602+
603+
#### Output
604+
605+
| Parameter | Type | Description |
606+
| --------- | ---- | ----------- |
607+
| `type` | string | Event type \(e.g., user.created, session.created\) |
608+
| `object` | string | Always "event" |
609+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
610+
| `instance_id` | string | Identifier of your Clerk instance |
611+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
612+
| `userId` | string | Clerk user ID \(data.id\) |
613+
| `firstName` | string | User's first name |
614+
| `lastName` | string | User's last name |
615+
| `username` | string | User's username |
616+
| `imageUrl` | string | Profile image URL |
617+
| `primaryEmailAddressId` | string | Primary email address ID |
618+
| `emailAddresses` | json | Array of email address objects |
619+
| `phoneNumbers` | json | Array of phone number objects |
620+
| `externalId` | string | External system ID linked to the user |
621+
| `createdAt` | number | User creation timestamp \(data.created_at\) |
622+
| `updatedAt` | number | User last update timestamp \(data.updated_at\) |
623+
624+
625+
---
626+
627+
### Clerk Webhook
628+
629+
Trigger workflow on any Clerk webhook event
630+
631+
#### Configuration
632+
633+
| Parameter | Type | Required | Description |
634+
| --------- | ---- | -------- | ----------- |
635+
| `signingSecret` | string | Yes | Copy this from your Clerk webhook endpoint to verify event signatures. |
636+
637+
#### Output
638+
639+
| Parameter | Type | Description |
640+
| --------- | ---- | ----------- |
641+
| `type` | string | Event type \(e.g., user.created, session.created\) |
642+
| `object` | string | Always "event" |
643+
| `timestamp` | number | Timestamp in milliseconds when the event occurred |
644+
| `instance_id` | string | Identifier of your Clerk instance |
645+
| `data` | json | Raw event `data` object \(shape varies by event type\) |
646+

0 commit comments

Comments
 (0)