Skip to content

Commit c898e2e

Browse files
waleedlatif1claude
andauthored
feat(integrations): add ZoomInfo, align Wiza, audit Apollo, refresh docs (#4776)
* feat(integrations): add ZoomInfo, align Wiza, audit Apollo, refresh docs - Add ZoomInfo integration: search/enrich contacts & companies, intent, news (6 tools), proxy route, block, and icon - Validate and align Wiza tools/block/outputs against live API docs - Audit Apollo tools: tighten params, outputs, and types - Update tool docs (.mdx), icons, icon mappings, and integrations.json * fix(zoominfo): use useId for ZoomInfoIcon clipPath to avoid duplicate DOM ids Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(apollo): address PR review on sequence add and bulk enrich - sequence_add_contacts: send large contact_ids/label_names arrays in the POST body (Rails merges query + body params) to avoid reverse-proxy URL length limits; keep scalar settings in the query string - organization_bulk_enrich: add back-compat shim mapping the legacy `organizations` ({name, domain}[]) subBlock value to the new `domains` string array so saved workflows keep running Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(integrations): unique ZoomInfo icon clip id, numeric employee range filters - ZoomInfoIcon: derive clipPath id from useId() so multiple instances don't collide - ZoomInfo company search: send employeeRangeMin/Max as numbers, matching revenueMin/Max * fix(zoominfo): send employeeRange filters as strings per API schema Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(zoominfo): send contactAccuracyScoreMin as string per Contacts Search schema Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(apollo): harden people_search pagination, correct bulk-update output docs - people_search: read pagination from both the nested `pagination` object (legacy /mixed_people/search) and top-level fields, avoiding silent fallback to defaults - account_bulk_update: correct output descriptions — accounts support up to 1000 per request and async is opt-in (not auto-triggered at 100 like contacts) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(wiza): correct company enrichment credits shape in output docs Company enrichment returns api_credits { total, company_credits }, not the email/phone/scrape breakdown used by individual reveals. Description-only fix verified against docs.wiza.co. * fix(apollo): send sequence add contact_ids/label_names as query params per docs Apollo documents every field for emailer_campaigns/:id/add_contact_ids as a query parameter with no request body. Append contact_ids[]/label_names[] to the query string instead of the JSON body to match the documented contract. * feat(apollo): expose account_stage_id uniform field for bulk update accounts Apollo documents account_stage_id as a Body Param for /accounts/bulk_update ('when using account_ids, apply this account stage to all accounts'). Adds it to the tool params, body builder, type, block subBlock, and params mapper alongside name/owner_id. * docs(apollo): correct contact_update typed_custom_fields description Apollo's update-a-contact endpoint documents typed_custom_fields, so drop the inaccurate "not officially documented" caveat. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(zoominfo): default required outputFields on enrich; parse nested API error object - ZoomInfo enrich endpoints require outputFields; send a curated default set when omitted so requests don't fail - extractZoomInfoError now reads the GTM REST nested error object ({error:{code,message}}) instead of dropping it to a generic HTTP message Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * improvement(wiza): add wandConfig to complex prospect-search filter fields Adds AI-assist wandConfig (json-object) with format examples to the structured filter inputs (job_title, job_company, past_company, company_industry, location, company_location) and the full filters object, completing the wandConfig checklist item for the Wiza block. * fix(findymail): surface API .error messages and alphabetize registry - transformResponse error branches now fall back to the response body's `error` field before the generic status string, so Findymail's actual messages ("Not enough credits" on 402, "Subscription is paused" on 423, "One identifier is required..." on 422) reach the user instead of a bare "Findymail API error: <status>". Applied to all 11 tools. - alphabetize the findymail entries in tools/registry.ts to match the already-alphabetical import block and the integration guideline. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 53eaa60 commit c898e2e

80 files changed

Lines changed: 4618 additions & 483 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

apps/docs/components/icons.tsx

Lines changed: 81 additions & 33 deletions
Large diffs are not rendered by default.

apps/docs/components/ui/icon-mapping.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,7 @@ import {
209209
ZendeskIcon,
210210
ZepIcon,
211211
ZoomIcon,
212+
ZoomInfoIcon,
212213
} from '@/components/icons'
213214

214215
type IconComponent = ComponentType<SVGProps<SVGSVGElement>>
@@ -448,4 +449,5 @@ export const blockTypeToIconMap: Record<string, IconComponent> = {
448449
zendesk: ZendeskIcon,
449450
zep: ZepIcon,
450451
zoom: ZoomIcon,
452+
zoominfo: ZoomInfoIcon,
451453
}

apps/docs/content/docs/en/tools/agentmail.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,8 @@ Get details of a specific email message in AgentMail
262262
| `subject` | string | Message subject |
263263
| `text` | string | Plain text content |
264264
| `html` | string | HTML content |
265+
| `labels` | array | Labels assigned to the message |
266+
| `timestamp` | string | Time the message was sent or drafted |
265267
| `createdAt` | string | Creation timestamp |
266268

267269
### `agentmail_get_thread`
@@ -298,6 +300,8 @@ Get details of a specific email thread including messages in AgentMail
298300
|`subject` | string | Message subject |
299301
|`text` | string | Plain text content |
300302
|`html` | string | HTML content |
303+
|`labels` | array | Labels assigned to the message |
304+
|`timestamp` | string | Time the message was sent or drafted |
301305
|`createdAt` | string | Creation timestamp |
302306

303307
### `agentmail_list_drafts`
@@ -380,6 +384,7 @@ List messages in an inbox in AgentMail
380384
|`to` | array | Recipient email addresses |
381385
|`subject` | string | Message subject |
382386
|`preview` | string | Message preview text |
387+
|`timestamp` | string | Time the message was sent or drafted |
383388
|`createdAt` | string | Creation timestamp |
384389
| `count` | number | Total number of messages |
385390
| `nextPageToken` | string | Token for retrieving the next page |

apps/docs/content/docs/en/tools/agentphone.mdx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
77

88
<BlockInfoCard
99
type="agentphone"
10-
color="linear-gradient(135deg, #1a1a1a 0%, #0a2a14 100%)"
10+
color="#000000"
1111
/>
1212

1313
{/* MANUAL-CONTENT-START:intro */}
@@ -254,6 +254,7 @@ Get a conversation along with its recent messages
254254
|`direction` | string | inbound or outbound |
255255
|`channel` | string | sms, mms, or imessage |
256256
|`mediaUrl` | string | Attached media URL |
257+
|`mediaUrls` | array | All attached media URLs |
257258
|`receivedAt` | string | ISO 8601 timestamp |
258259

259260
### `agentphone_get_conversation_messages`
@@ -282,6 +283,7 @@ Get paginated messages for a conversation
282283
|`direction` | string | inbound or outbound |
283284
|`channel` | string | sms, mms, or imessage |
284285
|`mediaUrl` | string | Attached media URL |
286+
|`mediaUrls` | array | All attached media URLs |
285287
|`receivedAt` | string | ISO 8601 timestamp |
286288
| `hasMore` | boolean | Whether more messages are available |
287289

@@ -425,7 +427,7 @@ List contacts for this AgentPhone account
425427
| --------- | ---- | -------- | ----------- |
426428
| `apiKey` | string | Yes | AgentPhone API key |
427429
| `search` | string | No | Filter by name or phone number \(case-insensitive contains\) |
428-
| `limit` | number | No | Number of results to return \(default 50\) |
430+
| `limit` | number | No | Number of results to return \(default 50, max 200\) |
429431
| `offset` | number | No | Number of results to skip \(min 0\) |
430432

431433
#### Output
@@ -624,6 +626,7 @@ Update conversation metadata (stored state). Pass null to clear existing metadat
624626
|`direction` | string | inbound or outbound |
625627
|`channel` | string | Channel \(sms, mms, etc.\) |
626628
|`mediaUrl` | string | Media URL if any |
629+
|`mediaUrls` | array | All attached media URLs |
627630
|`receivedAt` | string | ISO 8601 timestamp |
628631

629632

apps/docs/content/docs/en/tools/apollo.mdx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ Enrich data for up to 10 organizations at once using Apollo
179179
| Parameter | Type | Required | Description |
180180
| --------- | ---- | -------- | ----------- |
181181
| `apiKey` | string | Yes | Apollo API key |
182-
| `organizations` | array | Yes | Array of organizations to enrich \(max 10\). Each item requires `name` and may include `domain` \(e.g., \[\{"name": "Example Corp", "domain": "example.com"\}\]\) |
182+
| `domains` | array | Yes | Array of company domains to enrich \(max 10, no www. or @, e.g., \["apollo.io", "stripe.com"\]\) |
183183

184184
#### Output
185185

@@ -325,8 +325,10 @@ Update up to 100 existing contacts at once in your Apollo database. Each contact
325325

326326
| Parameter | Type | Description |
327327
| --------- | ---- | ----------- |
328-
| `message` | string | Confirmation message from Apollo |
329-
| `job_id` | string | Async job ID \(returned for &gt;100 contacts\) |
328+
| `contacts` | json | Updated contacts \(synchronous response, ≤100 contacts\) |
329+
| `entity_progress_job` | json | Async job descriptor \(&gt;100 contacts or async=true\): \{id, status, ...\} |
330+
| `job_id` | string | Async job ID extracted from entity_progress_job |
331+
| `message` | string | Optional confirmation message from Apollo |
330332

331333
### `apollo_account_create`
332334

@@ -445,8 +447,11 @@ Update up to 1000 existing accounts at once in your Apollo database (higher limi
445447

446448
| Parameter | Type | Description |
447449
| --------- | ---- | ----------- |
448-
| `message` | string | Confirmation message from Apollo |
450+
| `accounts` | json | Updated accounts \(synchronous response, ≤100 accounts\): \[\{id, account_stage_id, ...\}\] |
449451
| `account_ids` | json | IDs of accounts that were updated |
452+
| `entity_progress_job` | json | Async job descriptor \(&gt;100 accounts or async=true\) |
453+
| `job_id` | string | Async job ID extracted from entity_progress_job |
454+
| `message` | string | Optional confirmation message from Apollo |
450455

451456
### `apollo_opportunity_create`
452457

apps/docs/content/docs/en/tools/azure_devops.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ Fetch full details of a single work item by ID from Azure DevOps, including titl
373373

374374
### `azure_devops_get_work_items_batch`
375375

376-
Fetch full details for multiple work items by ID from Azure DevOps. Pass comma-separated IDs (e.g.
376+
Fetch full details for multiple work items by ID from Azure DevOps. Pass comma-separated IDs (e.g.
377377

378378
#### Input
379379

apps/docs/content/docs/en/tools/docusign.mdx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@ Download a signed document from a completed DocuSign envelope
171171

172172
| Parameter | Type | Description |
173173
| --------- | ---- | ----------- |
174-
| `base64Content` | string | Base64-encoded document content |
174+
| `file` | file | Stored downloaded document file |
175+
| `base64Content` | string | Deprecated legacy inline content. New downloads return file. |
175176
| `mimeType` | string | MIME type of the document |
176177
| `fileName` | string | Original file name |
177178

apps/docs/content/docs/en/tools/elevenlabs.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: ElevenLabs
3-
description: Convert TTS using ElevenLabs
3+
description: Convert text to speech with ElevenLabs
44
---
55

66
import { BlockInfoCard } from "@/components/ui/block-info-card"
@@ -35,7 +35,7 @@ Integrate ElevenLabs into the workflow. Can convert text to speech.
3535

3636
### `elevenlabs_tts`
3737

38-
Convert TTS using ElevenLabs voices
38+
Convert text to speech using ElevenLabs voices
3939

4040
#### Input
4141

@@ -45,7 +45,7 @@ Convert TTS using ElevenLabs voices
4545
| `voiceId` | string | Yes | The ID of the voice to use \(e.g., "21m00Tcm4TlvDq8ikWAM" for Rachel\) |
4646
| `modelId` | string | No | The ID of the model to use \(e.g., "eleven_multilingual_v2", "eleven_turbo_v2"\). Defaults to eleven_monolingual_v1 |
4747
| `stability` | number | No | Voice stability setting from 0.0 to 1.0 \(e.g., 0.5 for balanced, 0.75 for more stable\). Higher values produce more consistent output |
48-
| `similarity` | number | No | Similarity boost setting from 0.0 to 1.0 \(e.g., 0.75 for natural, 1.0 for maximum similarity\). Higher values make the voice more similar to the original |
48+
| `similarityBoost` | number | No | Similarity boost setting from 0.0 to 1.0 \(e.g., 0.75 for natural, 1.0 for maximum similarity\). Higher values make the voice more similar to the original |
4949
| `apiKey` | string | Yes | Your ElevenLabs API key |
5050

5151
#### Output

0 commit comments

Comments
 (0)