kopia lustrzana https://github.com/transitive-bullshit/chatgpt-api
Merge pull request #687 from transitive-bullshit/feature/zoominfo
commit
fceaf2ae9f
|
@ -53,6 +53,7 @@
|
|||
{
|
||||
"group": "Tools",
|
||||
"pages": [
|
||||
"tools/apollo",
|
||||
"tools/bing",
|
||||
"tools/calculator",
|
||||
"tools/clearbit",
|
||||
|
@ -64,6 +65,7 @@
|
|||
"tools/hacker-news",
|
||||
"tools/hunter",
|
||||
"tools/jina",
|
||||
"tools/leadmagic",
|
||||
"tools/midjourney",
|
||||
"tools/novu",
|
||||
"tools/people-data-labs",
|
||||
|
@ -71,6 +73,7 @@
|
|||
"tools/polygon",
|
||||
"tools/predict-leads",
|
||||
"tools/proxycurl",
|
||||
"tools/rocketreach",
|
||||
"tools/searxng",
|
||||
"tools/serpapi",
|
||||
"tools/serper",
|
||||
|
@ -82,7 +85,8 @@
|
|||
"tools/weather",
|
||||
"tools/wikidata",
|
||||
"tools/wikipedia",
|
||||
"tools/wolfram-alpha"
|
||||
"tools/wolfram-alpha",
|
||||
"tools/zoominfo"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
|
|
@ -10,25 +10,25 @@ title: Quick Start
|
|||
</Info>
|
||||
|
||||
<Steps>
|
||||
<Step title='Install core deps'>
|
||||
<Step title='Install core deps (zod)'>
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/core zod
|
||||
npm install zod
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/core zod
|
||||
yarn add zod
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/core zod
|
||||
pnpm add zod
|
||||
```
|
||||
</CodeGroup>
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title='Install AI tools'>
|
||||
You can either install all of the AI tools via the convenience package `@agentic/stdlib`, or you can install them individually via their respective packages (`@agentic/weather`, `@agentic/twitter`, etc.).
|
||||
You can either install all of the AI tools via `@agentic/stdlib`, or you can install them individually via their respective packages (`@agentic/weather`, `@agentic/twitter`, etc.).
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="Install all AI tools">
|
||||
|
@ -72,7 +72,7 @@ title: Quick Start
|
|||
<Note>
|
||||
There is no functional difference between using `@agentic/stdlib` versus using the individual tool packages directly. The only difference is if you want to optimize your install size (when running on serverless functions, for instance).
|
||||
|
||||
The default examples all use `@agentic/stdlib` because it provides a simpler DX.
|
||||
The default examples all use `@agentic/stdlib` for simplicity.
|
||||
</Note>
|
||||
|
||||
</Step>
|
||||
|
@ -138,15 +138,15 @@ title: Quick Start
|
|||
<Accordion title="Firebase Genkit">
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/genkit @genkit-ai/ai @genkit-ai/core
|
||||
npm install @agentic/genkit genkit
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/genkit @genkit-ai/ai @genkit-ai/core
|
||||
yarn add @agentic/genkit genkit
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/genkit @genkit-ai/ai @genkit-ai/core
|
||||
pnpm add @agentic/genkit genkit
|
||||
```
|
||||
</CodeGroup>
|
||||
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: Apollo
|
||||
description: Apollo provides an API for B2B person and company enrichment.
|
||||
---
|
||||
|
||||
- package: `@agentic/apollo`
|
||||
- exports: `class Apollo`, `namespace apollo`
|
||||
- env vars: `APOLLO_API_KEY`
|
||||
- [source](https://github.com/transitive-bullshit/agentic/blob/main/packages/apollo/src/apollo-client.ts)
|
||||
- [apollo api docs](https://docs.apollo.io)
|
||||
|
||||
## Install
|
||||
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/apollo
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/apollo
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/apollo
|
||||
```
|
||||
|
||||
</CodeGroup>
|
||||
|
||||
## Usage
|
||||
|
||||
```ts
|
||||
import { ApolloClient } from '@agentic/apollo'
|
||||
|
||||
const apollo = new ApolloClient()
|
||||
const res = await apollo.enrichPerson({
|
||||
linkedin_url: 'https://linkedin.com/in/fisch2'
|
||||
})
|
||||
```
|
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: LeadMagic
|
||||
description: LeadMagic provides an API for B2B person, company, and email enrichment.
|
||||
---
|
||||
|
||||
- package: `@agentic/leadmagic`
|
||||
- exports: `class LeadMagic`, `namespace leadmagic`
|
||||
- env vars: `LEADMAGIC_API_KEY`
|
||||
- [source](https://github.com/transitive-bullshit/agentic/blob/main/packages/leadmagic/src/leadmagic-client.ts)
|
||||
- [leadmagic api docs](https://docs.leadmagic.io)
|
||||
|
||||
## Install
|
||||
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/leadmagic
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/leadmagic
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/leadmagic
|
||||
```
|
||||
|
||||
</CodeGroup>
|
||||
|
||||
## Usage
|
||||
|
||||
```ts
|
||||
import { LeadMagicClient } from '@agentic/leadmagic'
|
||||
|
||||
const leadmagic = new LeadMagicClient()
|
||||
const res = await leadmagic.profileSearch({
|
||||
linkedinUsername: 'fisch2'
|
||||
})
|
||||
```
|
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: RocketReach
|
||||
description: RocketReach provides an API for B2B person and company enrichment.
|
||||
---
|
||||
|
||||
- package: `@agentic/rocketreach`
|
||||
- exports: `class RocketReach`, `namespace rocketreach`
|
||||
- env vars: `ROCKETREACH_API_KEY`
|
||||
- [source](https://github.com/transitive-bullshit/agentic/blob/main/packages/rocketreach/src/rocketreach-client.ts)
|
||||
- [rocketreach api docs](https://rocketreach.co/api/v2/docs)
|
||||
|
||||
## Install
|
||||
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/rocketreach
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/rocketreach
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/rocketreach
|
||||
```
|
||||
|
||||
</CodeGroup>
|
||||
|
||||
## Usage
|
||||
|
||||
```ts
|
||||
import { RocketReachClient } from '@agentic/rocketreach'
|
||||
|
||||
const rocketreach = new RocketReachClient()
|
||||
const res = await rocketreach.lookupPerson({
|
||||
linkedin_url: 'https://www.linkedin.com/in/fisch2'
|
||||
})
|
||||
```
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: ZoomInfo
|
||||
description: ZoomInfo provides a powerful API for B2B person and company data enrichment.
|
||||
---
|
||||
|
||||
- package: `@agentic/zoominfo`
|
||||
- exports: `class ZoomInfo`, `namespace zoominfo`
|
||||
- env vars:
|
||||
- `ZOOMINFO_USERNAME` and `ZOOMINFO_PASSWORD` for basic auth
|
||||
- `ZOOMINFO_USERNAME`, `ZOOMINFO_CLIENT_ID`, and `ZOOMINFO_PRIVATE_KEY` for PKI auth
|
||||
- [source](https://github.com/transitive-bullshit/agentic/blob/main/packages/zoominfo/src/zoominfo-client.ts)
|
||||
- [zoominfo api docs](https://api-docs.zoominfo.com)
|
||||
|
||||
## Install
|
||||
|
||||
<CodeGroup>
|
||||
```bash npm
|
||||
npm install @agentic/zoominfo
|
||||
```
|
||||
|
||||
```bash yarn
|
||||
yarn add @agentic/zoominfo
|
||||
```
|
||||
|
||||
```bash pnpm
|
||||
pnpm add @agentic/zoominfo
|
||||
```
|
||||
|
||||
</CodeGroup>
|
||||
|
||||
## Usage
|
||||
|
||||
```ts
|
||||
import { ZoomInfoClient } from '@agentic/zoominfo'
|
||||
|
||||
const zoomInfo = new ZoomInfoClient()
|
||||
const res = await zoomInfo.enrichContact({
|
||||
emailAddress: 'travis@transitivebullsh.it'
|
||||
})
|
||||
```
|
|
@ -11,7 +11,7 @@
|
|||
"@agentic/langchain": "workspace:*",
|
||||
"@agentic/stdlib": "workspace:*",
|
||||
"@langchain/core": "^0.3.13",
|
||||
"@langchain/openai": "^0.3.11",
|
||||
"@langchain/openai": "0.4.4",
|
||||
"langchain": "^0.3.3",
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
"@agentic/core": "workspace:*",
|
||||
"@agentic/llamaindex": "workspace:*",
|
||||
"@agentic/stdlib": "workspace:*",
|
||||
"llamaindex": "^0.7.3",
|
||||
"llamaindex": "^0.9.2",
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import 'dotenv/config'
|
||||
|
||||
import { ExaClient } from '@agentic/stdlib'
|
||||
import { ZoomInfoClient } from '@agentic/stdlib'
|
||||
import restoreCursor from 'restore-cursor'
|
||||
|
||||
/**
|
||||
|
@ -129,11 +129,21 @@ async function main() {
|
|||
// json: true
|
||||
// })
|
||||
|
||||
const exa = new ExaClient()
|
||||
const res = await exa.search({
|
||||
query: 'OpenAI',
|
||||
category: 'linkedin profile'
|
||||
// const exa = new ExaClient()
|
||||
// const res = await exa.search({
|
||||
// query: 'OpenAI',
|
||||
// category: 'linkedin profile'
|
||||
// })
|
||||
|
||||
const zoomInfo = new ZoomInfoClient()
|
||||
const res = await zoomInfo.enrichContact({
|
||||
// emailAddress: 'travis@transitivebullsh.it'
|
||||
fullName: 'Kevin Raheja',
|
||||
companyName: 'HeyGen'
|
||||
})
|
||||
// const res = await zoomInfo.searchContacts({
|
||||
// fullName: 'Kevin Raheja'
|
||||
// })
|
||||
|
||||
console.log(JSON.stringify(res, null, 2))
|
||||
}
|
||||
|
|
|
@ -45,12 +45,14 @@
|
|||
"npm-run-all2": "^7.0.2",
|
||||
"only-allow": "^1.2.1",
|
||||
"prettier": "^3.5.1",
|
||||
"syncpack": "14.0.0-alpha.10",
|
||||
"tsup": "^8.3.6",
|
||||
"tsx": "^4.19.3",
|
||||
"turbo": "^2.4.2",
|
||||
"typescript": "^5.7.3",
|
||||
"vitest": "3.0.6",
|
||||
"zod": "^3.24.2"
|
||||
"zod": "^3.24.2",
|
||||
"zoominfo-api-auth-client": "^1.0.1"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{ts,tsx}": [
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"@agentic/core": "workspace:*"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"ai": "^4.1.0"
|
||||
"ai": "^4.1.42"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"name": "@agentic/apollo",
|
||||
"version": "7.3.2",
|
||||
"description": "Agentic SDK for Apollo.io.",
|
||||
"author": "Travis Fischer <travis@transitivebullsh.it>",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/transitive-bullshit/agentic.git",
|
||||
"directory": "packages/apollo"
|
||||
},
|
||||
"type": "module",
|
||||
"source": "./src/index.ts",
|
||||
"types": "./dist/index.d.ts",
|
||||
"sideEffects": false,
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./dist/index.d.ts",
|
||||
"import": "./dist/index.js",
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsup --config ../../tsup.config.ts",
|
||||
"dev": "tsup --config ../../tsup.config.ts --watch",
|
||||
"clean": "del dist",
|
||||
"test": "run-s test:*",
|
||||
"test:lint": "eslint .",
|
||||
"test:typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"@agentic/core": "workspace:*",
|
||||
"ky": "^1.7.5",
|
||||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
<p align="center">
|
||||
<a href="https://agentic.so">
|
||||
<img alt="Agentic" src="https://raw.githubusercontent.com/transitive-bullshit/agentic/main/docs/media/agentic-header.jpg" width="308">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<em>AI agent stdlib that works with any LLM and TypeScript AI SDK.</em>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml"><img alt="Build Status" src="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml/badge.svg" /></a>
|
||||
<a href="https://www.npmjs.com/package/@agentic/stdlib"><img alt="NPM" src="https://img.shields.io/npm/v/@agentic/stdlib.svg" /></a>
|
||||
<a href="https://github.com/transitive-bullshit/agentic/blob/main/license"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-blue" /></a>
|
||||
<a href="https://prettier.io"><img alt="Prettier Code Formatting" src="https://img.shields.io/badge/code_style-prettier-brightgreen.svg" /></a>
|
||||
</p>
|
||||
|
||||
# Agentic
|
||||
|
||||
**See the [github repo](https://github.com/transitive-bullshit/agentic) or [docs](https://agentic.so) for more info.**
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Travis Fischer](https://x.com/transitive_bs)
|
|
@ -0,0 +1,341 @@
|
|||
import {
|
||||
aiFunction,
|
||||
AIFunctionsProvider,
|
||||
assert,
|
||||
getEnv,
|
||||
throttleKy
|
||||
} from '@agentic/core'
|
||||
import defaultKy, { type KyInstance } from 'ky'
|
||||
import pThrottle from 'p-throttle'
|
||||
import { z } from 'zod'
|
||||
|
||||
export namespace apollo {
|
||||
export const API_BASE_URL = 'https://api.apollo.io'
|
||||
|
||||
// Allow up to 5 requests per second by default.
|
||||
// https://docs.apollo.io/reference/rate-limits
|
||||
export const throttle = pThrottle({
|
||||
limit: 5,
|
||||
interval: 1000
|
||||
})
|
||||
|
||||
export interface EnrichPersonOptions {
|
||||
first_name?: string
|
||||
last_name?: string
|
||||
name?: string
|
||||
email?: string
|
||||
hashed_email?: string
|
||||
organization_name?: string
|
||||
domain?: string
|
||||
id?: string
|
||||
linkedin_url?: string
|
||||
reveal_personal_emails?: boolean
|
||||
reveal_phone_number?: boolean
|
||||
webhook_url?: string
|
||||
}
|
||||
|
||||
export interface EnrichPersonResponse {
|
||||
person: Person
|
||||
}
|
||||
|
||||
export interface Person {
|
||||
id: string
|
||||
first_name: string
|
||||
last_name: string
|
||||
name: string
|
||||
linkedin_url: string
|
||||
title: string
|
||||
email_status: string
|
||||
photo_url: string
|
||||
twitter_url: any
|
||||
github_url: any
|
||||
facebook_url: any
|
||||
extrapolated_email_confidence: any
|
||||
headline: string
|
||||
email: string
|
||||
organization_id: string
|
||||
employment_history: EmploymentHistory[]
|
||||
state: string
|
||||
city: string
|
||||
country: string
|
||||
contact_id: string
|
||||
contact: Contact
|
||||
revealed_for_current_team: boolean
|
||||
organization: Organization
|
||||
is_likely_to_engage: boolean
|
||||
intent_strength: any
|
||||
show_intent: boolean
|
||||
departments: string[]
|
||||
subdepartments: string[]
|
||||
functions: string[]
|
||||
seniority: string
|
||||
}
|
||||
|
||||
export interface EmploymentHistory {
|
||||
_id: string
|
||||
id: string
|
||||
created_at: string | null
|
||||
updated_at: string | null
|
||||
title: string
|
||||
key: string
|
||||
current: boolean
|
||||
degree: string | null
|
||||
description: string | null
|
||||
emails: any
|
||||
end_date?: string
|
||||
grade_level: string | null
|
||||
kind: string | null
|
||||
major: string | null
|
||||
organization_id?: string | null
|
||||
organization_name: string | null
|
||||
raw_address: string | null
|
||||
start_date: string
|
||||
}
|
||||
|
||||
export interface Contact {
|
||||
contact_roles: any[]
|
||||
id: string
|
||||
first_name: string
|
||||
last_name: string
|
||||
name: string
|
||||
linkedin_url: string
|
||||
title: string
|
||||
contact_stage_id: string
|
||||
owner_id: any
|
||||
creator_id: string
|
||||
person_id: string
|
||||
email_needs_tickling: any
|
||||
organization_name: string
|
||||
source: string
|
||||
original_source: string
|
||||
organization_id: string
|
||||
headline: string
|
||||
photo_url: any
|
||||
present_raw_address: string
|
||||
linkedin_uid: any
|
||||
extrapolated_email_confidence: any
|
||||
salesforce_id: any
|
||||
salesforce_lead_id: any
|
||||
salesforce_contact_id: any
|
||||
salesforce_account_id: any
|
||||
crm_owner_id: any
|
||||
created_at: string
|
||||
emailer_campaign_ids: any[]
|
||||
direct_dial_status: any
|
||||
direct_dial_enrichment_failed_at: any
|
||||
email_status: string
|
||||
email_source: any
|
||||
account_id: string
|
||||
last_activity_date: any
|
||||
hubspot_vid: any
|
||||
hubspot_company_id: any
|
||||
crm_id: any
|
||||
sanitized_phone: string
|
||||
merged_crm_ids: any
|
||||
updated_at: string
|
||||
queued_for_crm_push: any
|
||||
suggested_from_rule_engine_config_id: any
|
||||
email_unsubscribed: any
|
||||
label_ids: any[]
|
||||
has_pending_email_arcgate_request: boolean
|
||||
has_email_arcgate_request: boolean
|
||||
existence_level: string
|
||||
email: string
|
||||
email_from_customer: boolean
|
||||
typed_custom_fields: TypedCustomFields
|
||||
custom_field_errors: any
|
||||
crm_record_url: any
|
||||
email_status_unavailable_reason: any
|
||||
email_true_status: string
|
||||
updated_email_true_status: boolean
|
||||
contact_rule_config_statuses: any[]
|
||||
source_display_name: string
|
||||
contact_emails: ContactEmail[]
|
||||
time_zone: string
|
||||
phone_numbers: PhoneNumber[]
|
||||
account_phone_note: any
|
||||
free_domain: boolean
|
||||
is_likely_to_engage: boolean
|
||||
}
|
||||
|
||||
export interface TypedCustomFields {}
|
||||
|
||||
export interface ContactEmail {
|
||||
email: string
|
||||
email_md5: string
|
||||
email_sha256: string
|
||||
email_status: string
|
||||
email_source: any
|
||||
extrapolated_email_confidence: any
|
||||
position: number
|
||||
email_from_customer: any
|
||||
free_domain: boolean
|
||||
}
|
||||
|
||||
export interface PhoneNumber {
|
||||
raw_number: string
|
||||
sanitized_number: string
|
||||
type: any
|
||||
position: number
|
||||
status: string
|
||||
dnc_status: any
|
||||
dnc_other_info: any
|
||||
dialer_flags?: DialerFlags
|
||||
}
|
||||
|
||||
export interface DialerFlags {
|
||||
country_name: string
|
||||
country_enabled: boolean
|
||||
high_risk_calling_enabled: boolean
|
||||
potential_high_risk_number: boolean
|
||||
}
|
||||
|
||||
export interface Organization {
|
||||
id: string
|
||||
name: string
|
||||
website_url: string
|
||||
blog_url: any
|
||||
angellist_url: any
|
||||
linkedin_url: string
|
||||
twitter_url: string
|
||||
facebook_url: string
|
||||
primary_phone: PrimaryPhone
|
||||
languages: any[]
|
||||
alexa_ranking: number
|
||||
phone: any
|
||||
linkedin_uid: string
|
||||
founded_year: number
|
||||
publicly_traded_symbol: any
|
||||
publicly_traded_exchange: any
|
||||
logo_url: string
|
||||
crunchbase_url: any
|
||||
primary_domain: string
|
||||
industry: string
|
||||
keywords: string[]
|
||||
estimated_num_employees: number
|
||||
industries: string[]
|
||||
secondary_industries: any[]
|
||||
snippets_loaded: boolean
|
||||
industry_tag_id: string
|
||||
industry_tag_hash: IndustryTagHash
|
||||
retail_location_count: number
|
||||
raw_address: string
|
||||
street_address: string
|
||||
city: string
|
||||
state: string
|
||||
postal_code: string
|
||||
country: string
|
||||
owned_by_organization_id: any
|
||||
seo_description: string
|
||||
short_description: string
|
||||
suborganizations: any[]
|
||||
num_suborganizations: number
|
||||
annual_revenue_printed: string
|
||||
annual_revenue: number
|
||||
total_funding: number
|
||||
total_funding_printed: string
|
||||
latest_funding_round_date: string
|
||||
latest_funding_stage: string
|
||||
funding_events: FundingEvent[]
|
||||
technology_names: string[]
|
||||
current_technologies: CurrentTechnology[]
|
||||
org_chart_root_people_ids: string[]
|
||||
org_chart_sector: string
|
||||
org_chart_removed: boolean
|
||||
org_chart_show_department_filter: boolean
|
||||
}
|
||||
|
||||
export interface PrimaryPhone {}
|
||||
|
||||
export interface IndustryTagHash {
|
||||
'information technology & services': string
|
||||
}
|
||||
|
||||
export interface FundingEvent {
|
||||
id: string
|
||||
date: string
|
||||
news_url?: string
|
||||
type: string
|
||||
investors: string
|
||||
amount: string
|
||||
currency: string
|
||||
}
|
||||
|
||||
export interface CurrentTechnology {
|
||||
uid: string
|
||||
name: string
|
||||
category: string
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Apollo.io is a B2B person and company enrichment API.
|
||||
*
|
||||
* @see https://docs.apollo.io
|
||||
*/
|
||||
export class ApolloClient extends AIFunctionsProvider {
|
||||
protected readonly ky: KyInstance
|
||||
protected readonly apiKey: string
|
||||
protected readonly apiBaseUrl: string
|
||||
|
||||
constructor({
|
||||
apiKey = getEnv('APOLLO_API_KEY'),
|
||||
apiBaseUrl = apollo.API_BASE_URL,
|
||||
timeoutMs = 60_000,
|
||||
throttle = true,
|
||||
ky = defaultKy
|
||||
}: {
|
||||
apiKey?: string
|
||||
apiBaseUrl?: string
|
||||
timeoutMs?: number
|
||||
throttle?: boolean
|
||||
ky?: KyInstance
|
||||
} = {}) {
|
||||
assert(
|
||||
apiKey,
|
||||
`ApolloClient missing required "username" (defaults to "APOLLO_API_KEY")`
|
||||
)
|
||||
super()
|
||||
|
||||
this.apiKey = apiKey
|
||||
this.apiBaseUrl = apiBaseUrl
|
||||
|
||||
const throttledKy = throttle ? throttleKy(ky, apollo.throttle) : ky
|
||||
|
||||
this.ky = throttledKy.extend({
|
||||
prefixUrl: apiBaseUrl,
|
||||
timeout: timeoutMs,
|
||||
headers: {
|
||||
'x-api-key': apiKey
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@aiFunction({
|
||||
name: 'apollo_enrich_person',
|
||||
description: `Attempts to enrich a person with Apollo data.
|
||||
|
||||
Apollo relies on the information you pass via the endpoint's parameters to identify the correct person to enrich. If you provide more information about a person, Apollo is more likely to find a match within its database. If you only provide general information, such as a name without a domain or email address, you might receive a 200 response, but the response will indicate that no records have been enriched.
|
||||
|
||||
By default, this endpoint does not return personal emails or phone numbers. Use the reveal_personal_emails and reveal_phone_number parameters to retrieve emails and phone numbers.`,
|
||||
inputSchema: z.object({
|
||||
first_name: z.string().optional(),
|
||||
last_name: z.string().optional(),
|
||||
name: z.string().optional(),
|
||||
email: z.string().optional(),
|
||||
hashed_email: z.string().optional(),
|
||||
organization_name: z.string().optional(),
|
||||
domain: z.string().optional(),
|
||||
id: z.string().optional(),
|
||||
linkedin_url: z.string().optional(),
|
||||
reveal_personal_emails: z.boolean().optional(),
|
||||
reveal_phone_number: z.boolean().optional(),
|
||||
webhook_url: z.string().optional()
|
||||
})
|
||||
})
|
||||
async enrichPerson(opts: apollo.EnrichPersonOptions) {
|
||||
return this.ky
|
||||
.post('api/v1/people/match', { json: opts })
|
||||
.json<apollo.EnrichPersonResponse>()
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
export * from './apollo-client'
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"extends": "@agentic/tsconfig/base.json",
|
||||
"include": ["src"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"mathjs": "^13.0.3"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -11,9 +11,10 @@ import pThrottle from 'p-throttle'
|
|||
|
||||
export namespace clearbit {
|
||||
// Allow up to 600 requests per minute by default.
|
||||
// (10 requests per second)
|
||||
export const throttle = pThrottle({
|
||||
limit: 600,
|
||||
interval: 60 * 1000
|
||||
limit: 10,
|
||||
interval: 1000
|
||||
})
|
||||
|
||||
export const MAX_PAGE_SIZE = 100
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
"zod-validation-error": "^3.4.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
},
|
||||
"peerDependencies": {
|
||||
"@e2b/code-interpreter": "^1.0.2",
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
"@agentic/core": "workspace:*",
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
"@ai-sdk/openai": "^1.1.13",
|
||||
"ai": "^4.0.2"
|
||||
"ai": "^4.1.42"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"name": "@agentic/leadmagic",
|
||||
"version": "7.3.2",
|
||||
"description": "Agentic SDK for LeadMagic.",
|
||||
"author": "Travis Fischer <travis@transitivebullsh.it>",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/transitive-bullshit/agentic.git",
|
||||
"directory": "packages/leadmagic"
|
||||
},
|
||||
"type": "module",
|
||||
"source": "./src/index.ts",
|
||||
"types": "./dist/index.d.ts",
|
||||
"sideEffects": false,
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./dist/index.d.ts",
|
||||
"import": "./dist/index.js",
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsup --config ../../tsup.config.ts",
|
||||
"dev": "tsup --config ../../tsup.config.ts --watch",
|
||||
"clean": "del dist",
|
||||
"test": "run-s test:*",
|
||||
"test:lint": "eslint .",
|
||||
"test:typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"@agentic/core": "workspace:*",
|
||||
"ky": "^1.7.5",
|
||||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
<p align="center">
|
||||
<a href="https://agentic.so">
|
||||
<img alt="Agentic" src="https://raw.githubusercontent.com/transitive-bullshit/agentic/main/docs/media/agentic-header.jpg" width="308">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<em>AI agent stdlib that works with any LLM and TypeScript AI SDK.</em>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml"><img alt="Build Status" src="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml/badge.svg" /></a>
|
||||
<a href="https://www.npmjs.com/package/@agentic/stdlib"><img alt="NPM" src="https://img.shields.io/npm/v/@agentic/stdlib.svg" /></a>
|
||||
<a href="https://github.com/transitive-bullshit/agentic/blob/main/license"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-blue" /></a>
|
||||
<a href="https://prettier.io"><img alt="Prettier Code Formatting" src="https://img.shields.io/badge/code_style-prettier-brightgreen.svg" /></a>
|
||||
</p>
|
||||
|
||||
# Agentic
|
||||
|
||||
**See the [github repo](https://github.com/transitive-bullshit/agentic) or [docs](https://agentic.so) for more info.**
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Travis Fischer](https://x.com/transitive_bs)
|
|
@ -0,0 +1 @@
|
|||
export * from './leadmagic-client'
|
|
@ -0,0 +1,121 @@
|
|||
import {
|
||||
aiFunction,
|
||||
AIFunctionsProvider,
|
||||
assert,
|
||||
getEnv,
|
||||
throttleKy
|
||||
} from '@agentic/core'
|
||||
import defaultKy, { type KyInstance } from 'ky'
|
||||
import pThrottle from 'p-throttle'
|
||||
import { z } from 'zod'
|
||||
|
||||
export namespace leadmagic {
|
||||
export const API_BASE_URL = 'https://api.leadmagic.io'
|
||||
|
||||
// Allow up to 300 requests per minute by default.
|
||||
// (5 requests per second)
|
||||
export const throttle = pThrottle({
|
||||
limit: 5,
|
||||
interval: 1000
|
||||
})
|
||||
|
||||
export interface ProfileSearchOptions {
|
||||
linkedinUsername: string
|
||||
}
|
||||
|
||||
export interface EnrichedPerson {
|
||||
profileUrl: string
|
||||
creditsConsumed: number
|
||||
firstName: string
|
||||
lastName: string
|
||||
fullName: string
|
||||
headline: string
|
||||
userSkills: string
|
||||
company_name: string
|
||||
company_size: string
|
||||
company_industry: string
|
||||
company_website: string
|
||||
totalTenureMonths: number
|
||||
totalTenureDays: number
|
||||
totalTenureYears: number
|
||||
connections: number
|
||||
country: string
|
||||
location: string
|
||||
about: string
|
||||
experiences: Experience[]
|
||||
highlights: any[]
|
||||
}
|
||||
|
||||
export interface Experience {
|
||||
title: string
|
||||
subtitle: string
|
||||
caption: string
|
||||
subComponents: any[]
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* LeadMagic.io is a B2B person, company, and email enrichment API.
|
||||
*
|
||||
* @see https://docs.leadmagic.io
|
||||
*/
|
||||
export class LeadMagicClient extends AIFunctionsProvider {
|
||||
protected readonly ky: KyInstance
|
||||
protected readonly apiKey: string
|
||||
protected readonly apiBaseUrl: string
|
||||
|
||||
constructor({
|
||||
apiKey = getEnv('LEADMAGIC_API_KEY'),
|
||||
apiBaseUrl = leadmagic.API_BASE_URL,
|
||||
timeoutMs = 60_000,
|
||||
throttle = true,
|
||||
ky = defaultKy
|
||||
}: {
|
||||
apiKey?: string
|
||||
apiBaseUrl?: string
|
||||
timeoutMs?: number
|
||||
throttle?: boolean
|
||||
ky?: KyInstance
|
||||
} = {}) {
|
||||
assert(
|
||||
apiKey,
|
||||
`LeadMagicClient missing required "username" (defaults to "LEADMAGIC_API_KEY")`
|
||||
)
|
||||
super()
|
||||
|
||||
this.apiKey = apiKey
|
||||
this.apiBaseUrl = apiBaseUrl
|
||||
|
||||
const throttledKy = throttle ? throttleKy(ky, leadmagic.throttle) : ky
|
||||
|
||||
this.ky = throttledKy.extend({
|
||||
prefixUrl: apiBaseUrl,
|
||||
timeout: timeoutMs,
|
||||
headers: {
|
||||
'X-API-Key': apiKey
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@aiFunction({
|
||||
name: 'leadmagic_profile_search',
|
||||
description:
|
||||
'Attempts to enrich a person with LeadMagic data based on their public LinkedIn username / identifier.',
|
||||
inputSchema: z.object({
|
||||
linkedinUsername: z
|
||||
.string()
|
||||
.describe(
|
||||
'The public LinkedIn username / identifier of the person to enrich. This is the last part of the LinkedIn profile URL. For example, `https://linkedin.com/in/fisch2` would be `fisch2`.'
|
||||
)
|
||||
})
|
||||
})
|
||||
async profileSearch(opts: leadmagic.ProfileSearchOptions) {
|
||||
return this.ky
|
||||
.post('profile-search', {
|
||||
json: {
|
||||
profile_url: opts.linkedinUsername.split('/').at(-1)?.trim()!
|
||||
}
|
||||
})
|
||||
.json<leadmagic.EnrichedPerson>()
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"extends": "@agentic/tsconfig/base.json",
|
||||
"include": ["src"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
|
@ -35,11 +35,11 @@
|
|||
"@agentic/core": "workspace:*"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"llamaindex": "^0.7.3"
|
||||
"llamaindex": "^0.9.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
"llamaindex": "^0.7.3"
|
||||
"llamaindex": "^0.9.2"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"name": "@agentic/rocketreach",
|
||||
"version": "7.3.2",
|
||||
"description": "Agentic SDK for RocketReach.",
|
||||
"author": "Travis Fischer <travis@transitivebullsh.it>",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/transitive-bullshit/agentic.git",
|
||||
"directory": "packages/rocketreach"
|
||||
},
|
||||
"type": "module",
|
||||
"source": "./src/index.ts",
|
||||
"types": "./dist/index.d.ts",
|
||||
"sideEffects": false,
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./dist/index.d.ts",
|
||||
"import": "./dist/index.js",
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsup --config ../../tsup.config.ts",
|
||||
"dev": "tsup --config ../../tsup.config.ts --watch",
|
||||
"clean": "del dist",
|
||||
"test": "run-s test:*",
|
||||
"test:lint": "eslint .",
|
||||
"test:typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"@agentic/core": "workspace:*",
|
||||
"ky": "^1.7.5",
|
||||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
<p align="center">
|
||||
<a href="https://agentic.so">
|
||||
<img alt="Agentic" src="https://raw.githubusercontent.com/transitive-bullshit/agentic/main/docs/media/agentic-header.jpg" width="308">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<em>AI agent stdlib that works with any LLM and TypeScript AI SDK.</em>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml"><img alt="Build Status" src="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml/badge.svg" /></a>
|
||||
<a href="https://www.npmjs.com/package/@agentic/stdlib"><img alt="NPM" src="https://img.shields.io/npm/v/@agentic/stdlib.svg" /></a>
|
||||
<a href="https://github.com/transitive-bullshit/agentic/blob/main/license"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-blue" /></a>
|
||||
<a href="https://prettier.io"><img alt="Prettier Code Formatting" src="https://img.shields.io/badge/code_style-prettier-brightgreen.svg" /></a>
|
||||
</p>
|
||||
|
||||
# Agentic
|
||||
|
||||
**See the [github repo](https://github.com/transitive-bullshit/agentic) or [docs](https://agentic.so) for more info.**
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Travis Fischer](https://x.com/transitive_bs)
|
|
@ -0,0 +1 @@
|
|||
export * from './rocketreach-client'
|
|
@ -0,0 +1,189 @@
|
|||
import {
|
||||
AIFunctionsProvider,
|
||||
assert,
|
||||
getEnv,
|
||||
sanitizeSearchParams,
|
||||
throttleKy
|
||||
} from '@agentic/core'
|
||||
import defaultKy, { type KyInstance } from 'ky'
|
||||
import pThrottle from 'p-throttle'
|
||||
|
||||
export namespace rocketreach {
|
||||
export const API_BASE_URL = 'https://api.rocketreach.co'
|
||||
|
||||
// Allow up to 5 requests per second by default.
|
||||
export const throttle = pThrottle({
|
||||
limit: 5,
|
||||
interval: 1000
|
||||
})
|
||||
|
||||
export interface EnrichPersonOptions {
|
||||
// RocketReach internal person ID returned by searches.
|
||||
id?: number
|
||||
|
||||
// Must specify along with current_employer.
|
||||
name?: string
|
||||
|
||||
// Must specify along with name.
|
||||
current_employer?: string
|
||||
|
||||
// Desired prospect's job title. May improve match rate.
|
||||
title?: string
|
||||
|
||||
// LinkedIn URL of prospect to lookup.
|
||||
linkedin_url?: string
|
||||
|
||||
// A known email address of the prospect. May improve match rate.
|
||||
email?: string
|
||||
|
||||
// An NPI number for a US healthcare professional. Can be used as a unique match criteria.
|
||||
npi_number?: number
|
||||
|
||||
// Specify an alternative lookup type to use (if available).
|
||||
lookup_type?:
|
||||
| 'standard'
|
||||
| 'premium'
|
||||
| 'premium (feeds disabled)'
|
||||
| 'bulk'
|
||||
| 'phone'
|
||||
| 'enrich'
|
||||
}
|
||||
|
||||
export interface Person {
|
||||
id: number
|
||||
status: string
|
||||
name: string
|
||||
profile_pic: string
|
||||
linkedin_url: string
|
||||
links: Record<string, string>
|
||||
location: string
|
||||
current_title: string
|
||||
current_employer: string
|
||||
current_employer_id: number
|
||||
current_employer_domain: string
|
||||
current_employer_website: string
|
||||
current_employer_linkedin_url: string
|
||||
job_history: JobHistory[]
|
||||
education: Education[]
|
||||
skills: string[]
|
||||
birth_year: number
|
||||
region_latitude: number
|
||||
region_longitude: number
|
||||
city: string
|
||||
region: string
|
||||
country: string
|
||||
country_code: string
|
||||
npi_data: NpiData
|
||||
recommended_email: string
|
||||
recommended_personal_email: string
|
||||
recommended_professional_email: string
|
||||
current_work_email: string
|
||||
current_personal_email: string
|
||||
emails: Email[]
|
||||
phones: Phone[]
|
||||
profile_list: ProfileList
|
||||
}
|
||||
|
||||
export interface ProfileList {
|
||||
id: number
|
||||
name: string
|
||||
}
|
||||
|
||||
export interface JobHistory {
|
||||
start_date: string
|
||||
end_date: string
|
||||
company: string
|
||||
company_name: string
|
||||
company_id: number
|
||||
company_linkedin_url: string
|
||||
department: string
|
||||
title: string
|
||||
highest_level: string
|
||||
description: string
|
||||
last_updated: string
|
||||
sub_department: string
|
||||
is_current: boolean
|
||||
}
|
||||
|
||||
export interface Education {
|
||||
major: string
|
||||
school: string
|
||||
degree: string
|
||||
start: number
|
||||
end: number
|
||||
}
|
||||
|
||||
export interface NpiData {
|
||||
npi_number: string
|
||||
credentials: string
|
||||
license_number: string
|
||||
specialization: string
|
||||
}
|
||||
|
||||
export interface Email {
|
||||
email: string
|
||||
smtp_valid: string
|
||||
type: string
|
||||
last_validation_check: string
|
||||
grade: string
|
||||
}
|
||||
|
||||
export interface Phone {
|
||||
number: string
|
||||
type: string
|
||||
validity: string
|
||||
recommended: boolean
|
||||
premium: boolean
|
||||
last_checked: string
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* RocketReach is a B2B person and company enrichment API.
|
||||
*
|
||||
* @see https://rocketreach.co/api/v2/docs
|
||||
*/
|
||||
export class RocketReachClient extends AIFunctionsProvider {
|
||||
protected readonly ky: KyInstance
|
||||
protected readonly apiKey: string
|
||||
protected readonly apiBaseUrl: string
|
||||
|
||||
constructor({
|
||||
apiKey = getEnv('ROCKETREACH_API_KEY'),
|
||||
apiBaseUrl = rocketreach.API_BASE_URL,
|
||||
timeoutMs = 60_000,
|
||||
throttle = true,
|
||||
ky = defaultKy
|
||||
}: {
|
||||
apiKey?: string
|
||||
apiBaseUrl?: string
|
||||
timeoutMs?: number
|
||||
throttle?: boolean
|
||||
ky?: KyInstance
|
||||
} = {}) {
|
||||
assert(
|
||||
apiKey,
|
||||
`RocketReachClient missing required "username" (defaults to "ROCKETREACH_API_KEY")`
|
||||
)
|
||||
super()
|
||||
|
||||
this.apiKey = apiKey
|
||||
this.apiBaseUrl = apiBaseUrl
|
||||
|
||||
const throttledKy = throttle ? throttleKy(ky, rocketreach.throttle) : ky
|
||||
|
||||
this.ky = throttledKy.extend({
|
||||
prefixUrl: apiBaseUrl,
|
||||
timeout: timeoutMs,
|
||||
headers: {
|
||||
'Api-Key': apiKey
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
async lookupPerson(opts: rocketreach.EnrichPersonOptions) {
|
||||
return this.ky
|
||||
.get('api/v2/person/lookup', { searchParams: sanitizeSearchParams(opts) })
|
||||
.json<rocketreach.Person>()
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"extends": "@agentic/tsconfig/base.json",
|
||||
"include": ["src"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -1,281 +0,0 @@
|
|||
# @agentic/stdlib
|
||||
|
||||
## 7.3.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Downgrade p-throttle to v6.2.0
|
||||
- Updated dependencies
|
||||
- @agentic/ai-sdk@7.3.2
|
||||
- @agentic/bing@7.3.2
|
||||
- @agentic/calculator@7.3.2
|
||||
- @agentic/clearbit@7.3.2
|
||||
- @agentic/core@7.3.2
|
||||
- @agentic/dexa@7.3.2
|
||||
- @agentic/dexter@7.3.2
|
||||
- @agentic/diffbot@7.3.2
|
||||
- @agentic/e2b@7.3.2
|
||||
- @agentic/exa@7.3.2
|
||||
- @agentic/firecrawl@7.3.2
|
||||
- @agentic/genkit@7.3.2
|
||||
- @agentic/github@7.3.2
|
||||
- @agentic/hacker-news@7.3.2
|
||||
- @agentic/hunter@7.3.2
|
||||
- @agentic/jina@7.3.2
|
||||
- @agentic/langchain@7.3.2
|
||||
- @agentic/llamaindex@7.3.2
|
||||
- @agentic/midjourney@7.3.2
|
||||
- @agentic/novu@7.3.2
|
||||
- @agentic/people-data-labs@7.3.2
|
||||
- @agentic/perigon@7.3.2
|
||||
- @agentic/polygon@7.3.2
|
||||
- @agentic/predict-leads@7.3.2
|
||||
- @agentic/proxycurl@7.3.2
|
||||
- @agentic/searxng@7.3.2
|
||||
- @agentic/serpapi@7.3.2
|
||||
- @agentic/serper@7.3.2
|
||||
- @agentic/slack@7.3.2
|
||||
- @agentic/social-data@7.3.2
|
||||
- @agentic/tavily@7.3.2
|
||||
- @agentic/twilio@7.3.2
|
||||
- @agentic/twitter@7.3.2
|
||||
- @agentic/weather@7.3.2
|
||||
- @agentic/wikidata@7.3.2
|
||||
- @agentic/wikipedia@7.3.2
|
||||
- @agentic/wolfram-alpha@7.3.2
|
||||
|
||||
## 7.3.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Add readmes to all packages.
|
||||
- Updated dependencies
|
||||
- @agentic/ai-sdk@7.3.1
|
||||
- @agentic/bing@7.3.1
|
||||
- @agentic/calculator@7.3.1
|
||||
- @agentic/clearbit@7.3.1
|
||||
- @agentic/core@7.3.1
|
||||
- @agentic/dexa@7.3.1
|
||||
- @agentic/dexter@7.3.1
|
||||
- @agentic/diffbot@7.3.1
|
||||
- @agentic/e2b@7.3.1
|
||||
- @agentic/exa@7.3.1
|
||||
- @agentic/firecrawl@7.3.1
|
||||
- @agentic/genkit@7.3.1
|
||||
- @agentic/github@7.3.1
|
||||
- @agentic/hacker-news@7.3.1
|
||||
- @agentic/hunter@7.3.1
|
||||
- @agentic/jina@7.3.1
|
||||
- @agentic/langchain@7.3.1
|
||||
- @agentic/llamaindex@7.3.1
|
||||
- @agentic/midjourney@7.3.1
|
||||
- @agentic/novu@7.3.1
|
||||
- @agentic/people-data-labs@7.3.1
|
||||
- @agentic/perigon@7.3.1
|
||||
- @agentic/polygon@7.3.1
|
||||
- @agentic/predict-leads@7.3.1
|
||||
- @agentic/proxycurl@7.3.1
|
||||
- @agentic/searxng@7.3.1
|
||||
- @agentic/serpapi@7.3.1
|
||||
- @agentic/serper@7.3.1
|
||||
- @agentic/slack@7.3.1
|
||||
- @agentic/social-data@7.3.1
|
||||
- @agentic/tavily@7.3.1
|
||||
- @agentic/twilio@7.3.1
|
||||
- @agentic/twitter@7.3.1
|
||||
- @agentic/weather@7.3.1
|
||||
- @agentic/wikidata@7.3.1
|
||||
- @agentic/wikipedia@7.3.1
|
||||
- @agentic/wolfram-alpha@7.3.1
|
||||
|
||||
## 7.3.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- Update all deps
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies
|
||||
- @agentic/ai-sdk@7.3.0
|
||||
- @agentic/bing@7.3.0
|
||||
- @agentic/calculator@7.3.0
|
||||
- @agentic/clearbit@7.3.0
|
||||
- @agentic/core@7.3.0
|
||||
- @agentic/dexa@7.3.0
|
||||
- @agentic/dexter@7.3.0
|
||||
- @agentic/diffbot@7.3.0
|
||||
- @agentic/e2b@7.3.0
|
||||
- @agentic/exa@7.3.0
|
||||
- @agentic/firecrawl@7.3.0
|
||||
- @agentic/genkit@7.3.0
|
||||
- @agentic/github@7.3.0
|
||||
- @agentic/hacker-news@7.3.0
|
||||
- @agentic/hunter@7.3.0
|
||||
- @agentic/jina@7.3.0
|
||||
- @agentic/langchain@7.3.0
|
||||
- @agentic/llamaindex@7.3.0
|
||||
- @agentic/midjourney@7.3.0
|
||||
- @agentic/novu@7.3.0
|
||||
- @agentic/people-data-labs@7.3.0
|
||||
- @agentic/perigon@7.3.0
|
||||
- @agentic/polygon@7.3.0
|
||||
- @agentic/predict-leads@7.3.0
|
||||
- @agentic/proxycurl@7.3.0
|
||||
- @agentic/searxng@7.3.0
|
||||
- @agentic/serpapi@7.3.0
|
||||
- @agentic/serper@7.3.0
|
||||
- @agentic/slack@7.3.0
|
||||
- @agentic/social-data@7.3.0
|
||||
- @agentic/tavily@7.3.0
|
||||
- @agentic/twilio@7.3.0
|
||||
- @agentic/twitter@7.3.0
|
||||
- @agentic/weather@7.3.0
|
||||
- @agentic/wikidata@7.3.0
|
||||
- @agentic/wikipedia@7.3.0
|
||||
- @agentic/wolfram-alpha@7.3.0
|
||||
|
||||
## 7.2.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- Remove hash-object and search-and-crawl packages
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies
|
||||
- @agentic/ai-sdk@7.2.0
|
||||
- @agentic/bing@7.2.0
|
||||
- @agentic/calculator@7.2.0
|
||||
- @agentic/clearbit@7.2.0
|
||||
- @agentic/core@7.2.0
|
||||
- @agentic/dexa@7.2.0
|
||||
- @agentic/dexter@7.2.0
|
||||
- @agentic/diffbot@7.2.0
|
||||
- @agentic/e2b@7.2.0
|
||||
- @agentic/exa@7.2.0
|
||||
- @agentic/firecrawl@7.2.0
|
||||
- @agentic/genkit@7.2.0
|
||||
- @agentic/github@7.2.0
|
||||
- @agentic/hacker-news@7.2.0
|
||||
- @agentic/hunter@7.2.0
|
||||
- @agentic/jina@7.2.0
|
||||
- @agentic/langchain@7.2.0
|
||||
- @agentic/llamaindex@7.2.0
|
||||
- @agentic/midjourney@7.2.0
|
||||
- @agentic/novu@7.2.0
|
||||
- @agentic/people-data-labs@7.2.0
|
||||
- @agentic/perigon@7.2.0
|
||||
- @agentic/polygon@7.2.0
|
||||
- @agentic/predict-leads@7.2.0
|
||||
- @agentic/proxycurl@7.2.0
|
||||
- @agentic/searxng@7.2.0
|
||||
- @agentic/serpapi@7.2.0
|
||||
- @agentic/serper@7.2.0
|
||||
- @agentic/slack@7.2.0
|
||||
- @agentic/social-data@7.2.0
|
||||
- @agentic/tavily@7.2.0
|
||||
- @agentic/twilio@7.2.0
|
||||
- @agentic/twitter@7.2.0
|
||||
- @agentic/weather@7.2.0
|
||||
- @agentic/wikidata@7.2.0
|
||||
- @agentic/wikipedia@7.2.0
|
||||
- @agentic/wolfram-alpha@7.2.0
|
||||
|
||||
## 7.1.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- 33bcbe0: Update deps
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [33bcbe0]
|
||||
- @agentic/core@7.1.0
|
||||
- @agentic/ai-sdk@7.1.0
|
||||
- @agentic/bing@7.1.0
|
||||
- @agentic/calculator@7.1.0
|
||||
- @agentic/clearbit@7.1.0
|
||||
- @agentic/dexa@7.1.0
|
||||
- @agentic/dexter@7.1.0
|
||||
- @agentic/diffbot@7.1.0
|
||||
- @agentic/e2b@7.1.0
|
||||
- @agentic/exa@7.1.0
|
||||
- @agentic/firecrawl@7.1.0
|
||||
- @agentic/genkit@7.1.0
|
||||
- @agentic/github@7.1.0
|
||||
- @agentic/hacker-news@7.1.0
|
||||
- @agentic/hunter@7.1.0
|
||||
- @agentic/jina@7.1.0
|
||||
- @agentic/langchain@7.1.0
|
||||
- @agentic/llamaindex@7.1.0
|
||||
- @agentic/midjourney@7.1.0
|
||||
- @agentic/novu@7.1.0
|
||||
- @agentic/people-data-labs@7.1.0
|
||||
- @agentic/perigon@7.1.0
|
||||
- @agentic/polygon@7.1.0
|
||||
- @agentic/predict-leads@7.1.0
|
||||
- @agentic/proxycurl@7.1.0
|
||||
- @agentic/search-and-crawl@7.1.0
|
||||
- @agentic/searxng@7.1.0
|
||||
- @agentic/serpapi@7.1.0
|
||||
- @agentic/serper@7.1.0
|
||||
- @agentic/slack@7.1.0
|
||||
- @agentic/social-data@7.1.0
|
||||
- @agentic/tavily@7.1.0
|
||||
- @agentic/twilio@7.1.0
|
||||
- @agentic/twitter@7.1.0
|
||||
- @agentic/weather@7.1.0
|
||||
- @agentic/wikidata@7.1.0
|
||||
- @agentic/wikipedia@7.1.0
|
||||
- @agentic/wolfram-alpha@7.1.0
|
||||
|
||||
## 7.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
- cba1cc7: Move to monorepo and multiple packages
|
||||
|
||||
See https://github.com/transitive-bullshit/agentic/issues/654 and https://github.com/transitive-bullshit/agentic/pull/657 for more info.
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [cba1cc7]
|
||||
- @agentic/people-data-labs@7.0.0
|
||||
- @agentic/search-and-crawl@7.0.0
|
||||
- @agentic/predict-leads@7.0.0
|
||||
- @agentic/wolfram-alpha@7.0.0
|
||||
- @agentic/hacker-news@7.0.0
|
||||
- @agentic/social-data@7.0.0
|
||||
- @agentic/calculator@7.0.0
|
||||
- @agentic/llamaindex@7.0.0
|
||||
- @agentic/midjourney@7.0.0
|
||||
- @agentic/firecrawl@7.0.0
|
||||
- @agentic/langchain@7.0.0
|
||||
- @agentic/proxycurl@7.0.0
|
||||
- @agentic/wikipedia@7.0.0
|
||||
- @agentic/clearbit@7.0.0
|
||||
- @agentic/wikidata@7.0.0
|
||||
- @agentic/diffbot@7.0.0
|
||||
- @agentic/perigon@7.0.0
|
||||
- @agentic/polygon@7.0.0
|
||||
- @agentic/searxng@7.0.0
|
||||
- @agentic/serpapi@7.0.0
|
||||
- @agentic/twitter@7.0.0
|
||||
- @agentic/weather@7.0.0
|
||||
- @agentic/ai-sdk@7.0.0
|
||||
- @agentic/dexter@7.0.0
|
||||
- @agentic/genkit@7.0.0
|
||||
- @agentic/github@7.0.0
|
||||
- @agentic/hunter@7.0.0
|
||||
- @agentic/serper@7.0.0
|
||||
- @agentic/tavily@7.0.0
|
||||
- @agentic/twilio@7.0.0
|
||||
- @agentic/slack@7.0.0
|
||||
- @agentic/bing@7.0.0
|
||||
- @agentic/core@7.0.0
|
||||
- @agentic/dexa@7.0.0
|
||||
- @agentic/jina@7.0.0
|
||||
- @agentic/novu@7.0.0
|
||||
- @agentic/e2b@7.0.0
|
||||
- @agentic/exa@7.0.0
|
|
@ -32,6 +32,7 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@agentic/ai-sdk": "workspace:*",
|
||||
"@agentic/apollo": "workspace:*",
|
||||
"@agentic/bing": "workspace:*",
|
||||
"@agentic/calculator": "workspace:*",
|
||||
"@agentic/clearbit": "workspace:*",
|
||||
|
@ -48,6 +49,7 @@
|
|||
"@agentic/hunter": "workspace:*",
|
||||
"@agentic/jina": "workspace:*",
|
||||
"@agentic/langchain": "workspace:*",
|
||||
"@agentic/leadmagic": "workspace:*",
|
||||
"@agentic/llamaindex": "workspace:*",
|
||||
"@agentic/midjourney": "workspace:*",
|
||||
"@agentic/novu": "workspace:*",
|
||||
|
@ -56,6 +58,7 @@
|
|||
"@agentic/polygon": "workspace:*",
|
||||
"@agentic/predict-leads": "workspace:*",
|
||||
"@agentic/proxycurl": "workspace:*",
|
||||
"@agentic/rocketreach": "workspace:*",
|
||||
"@agentic/searxng": "workspace:*",
|
||||
"@agentic/serpapi": "workspace:*",
|
||||
"@agentic/serper": "workspace:*",
|
||||
|
@ -68,10 +71,11 @@
|
|||
"@agentic/wikidata": "workspace:*",
|
||||
"@agentic/wikipedia": "workspace:*",
|
||||
"@agentic/wolfram-alpha": "workspace:*",
|
||||
"@agentic/zoominfo": "workspace:*",
|
||||
"@e2b/code-interpreter": "^1.0.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
export * from '@agentic/apollo'
|
||||
export * from '@agentic/bing'
|
||||
export * from '@agentic/calculator'
|
||||
export * from '@agentic/clearbit'
|
||||
|
@ -10,6 +11,7 @@ export * from '@agentic/github'
|
|||
export * from '@agentic/hacker-news'
|
||||
export * from '@agentic/hunter'
|
||||
export * from '@agentic/jina'
|
||||
export * from '@agentic/leadmagic'
|
||||
export * from '@agentic/midjourney'
|
||||
export * from '@agentic/novu'
|
||||
export * from '@agentic/people-data-labs'
|
||||
|
@ -17,6 +19,7 @@ export * from '@agentic/perigon'
|
|||
export * from '@agentic/polygon'
|
||||
export * from '@agentic/predict-leads'
|
||||
export * from '@agentic/proxycurl'
|
||||
export * from '@agentic/rocketreach'
|
||||
export * from '@agentic/searxng'
|
||||
export * from '@agentic/serpapi'
|
||||
export * from '@agentic/serper'
|
||||
|
@ -29,3 +32,4 @@ export * from '@agentic/weather'
|
|||
export * from '@agentic/wikidata'
|
||||
export * from '@agentic/wikipedia'
|
||||
export * from '@agentic/wolfram-alpha'
|
||||
export * from '@agentic/zoominfo'
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
"type-fest": "^4.35.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
"wikibase-sdk": "^10.0.3"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"ky": "^1.7.5"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.23.8"
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*"
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
"name": "@agentic/zoominfo",
|
||||
"version": "7.3.2",
|
||||
"description": "Agentic SDK for ZoomInfo.",
|
||||
"author": "Travis Fischer <travis@transitivebullsh.it>",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/transitive-bullshit/agentic.git",
|
||||
"directory": "packages/zoominfo"
|
||||
},
|
||||
"type": "module",
|
||||
"source": "./src/index.ts",
|
||||
"types": "./dist/index.d.ts",
|
||||
"sideEffects": false,
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./dist/index.d.ts",
|
||||
"import": "./dist/index.js",
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsup --config ../../tsup.config.ts",
|
||||
"dev": "tsup --config ../../tsup.config.ts --watch",
|
||||
"clean": "del dist",
|
||||
"test": "run-s test:*",
|
||||
"test:lint": "eslint .",
|
||||
"test:typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"@agentic/core": "workspace:*",
|
||||
"jsrsasign": "^10.9.0",
|
||||
"ky": "^1.7.5",
|
||||
"p-throttle": "^6.2.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@agentic/tsconfig": "workspace:*",
|
||||
"@types/jsrsasign": "^10.5.15"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
<p align="center">
|
||||
<a href="https://agentic.so">
|
||||
<img alt="Agentic" src="https://raw.githubusercontent.com/transitive-bullshit/agentic/main/docs/media/agentic-header.jpg" width="308">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<em>AI agent stdlib that works with any LLM and TypeScript AI SDK.</em>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml"><img alt="Build Status" src="https://github.com/transitive-bullshit/agentic/actions/workflows/main.yml/badge.svg" /></a>
|
||||
<a href="https://www.npmjs.com/package/@agentic/stdlib"><img alt="NPM" src="https://img.shields.io/npm/v/@agentic/stdlib.svg" /></a>
|
||||
<a href="https://github.com/transitive-bullshit/agentic/blob/main/license"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-blue" /></a>
|
||||
<a href="https://prettier.io"><img alt="Prettier Code Formatting" src="https://img.shields.io/badge/code_style-prettier-brightgreen.svg" /></a>
|
||||
</p>
|
||||
|
||||
# Agentic
|
||||
|
||||
**See the [github repo](https://github.com/transitive-bullshit/agentic) or [docs](https://agentic.so) for more info.**
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Travis Fischer](https://x.com/transitive_bs)
|
|
@ -0,0 +1 @@
|
|||
export * from './zoominfo-client'
|
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"extends": "@agentic/tsconfig/base.json",
|
||||
"include": ["src"],
|
||||
"exclude": ["node_modules", "dist"]
|
||||
}
|
4373
pnpm-lock.yaml
4373
pnpm-lock.yaml
Plik diff jest za duży
Load Diff
|
@ -26,6 +26,7 @@
|
|||
- [Firebase Genkit](#firebase-genkit)
|
||||
- [Dexa Dexter](#dexa-dexter)
|
||||
- [OpenAI](#openai)
|
||||
- [GenAIScript](#genaiscript)
|
||||
- [Tools](#tools)
|
||||
- [Contributors](#contributors)
|
||||
- [License](#license)
|
||||
|
@ -147,6 +148,7 @@ Full docs are available at [agentic.so](https://agentic.so).
|
|||
|
||||
| Service / Tool | Package | Docs | Description |
|
||||
| ------------------------------------------------------------------------ | --------------------------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [Apollo](https://docs.apollo.io) | `@agentic/apollo` | [docs](https://agentic.so/tools/apollo) | B2B person and company enrichment API. |
|
||||
| [Bing](https://www.microsoft.com/en-us/bing/apis/bing-web-search-api) | `@agentic/bing` | [docs](https://agentic.so/tools/bing) | Bing web search. |
|
||||
| [Calculator](https://github.com/josdejong/mathjs) | `@agentic/calculator` | [docs](https://agentic.so/tools/calculator) | Basic calculator for simple mathematical expressions. |
|
||||
| [Clearbit](https://dashboard.clearbit.com/docs) | `@agentic/clearbit` | [docs](https://agentic.so/tools/clearbit) | Resolving and enriching people and company data. |
|
||||
|
@ -158,6 +160,7 @@ Full docs are available at [agentic.so](https://agentic.so).
|
|||
| [HackerNews](https://github.com/HackerNews/API) | `@agentic/hacker-news` | [docs](https://agentic.so/tools/hacker-news) | Official HackerNews API. |
|
||||
| [Hunter](https://hunter.io) | `@agentic/hunter` | [docs](https://agentic.so/tools/hunter) | Email finder, verifier, and enrichment. |
|
||||
| [Jina](https://jina.ai/reader) | `@agentic/jina` | [docs](https://agentic.so/tools/jina) | URL scraper and web search. |
|
||||
| [LeadMagic](https://leadmagic.io) | `@agentic/leadmagic` | [docs](https://agentic.so/tools/leadmagic) | B2B person, company, and email enrichment API. |
|
||||
| [Midjourney](https://www.imagineapi.dev) | `@agentic/midjourney` | [docs](https://agentic.so/tools/midjourney) | Unofficial Midjourney client for generative images. |
|
||||
| [Novu](https://novu.co) | `@agentic/novu` | [docs](https://agentic.so/tools/novu) | Sending notifications (email, SMS, in-app, push, etc). |
|
||||
| [People Data Labs](https://www.peopledatalabs.com) | `@agentic/people-data-labs` | [docs](https://agentic.so/tools/people-data-labs) | People & company data (WIP). |
|
||||
|
@ -165,6 +168,7 @@ Full docs are available at [agentic.so](https://agentic.so).
|
|||
| [Polygon](https://polygon.io) | `@agentic/polygon` | [docs](https://agentic.so/tools/polygon) | Stock market and company financial data. |
|
||||
| [PredictLeads](https://predictleads.com) | `@agentic/predict-leads` | [docs](https://agentic.so/tools/predict-leads) | In-depth company data including signals like fundraising events, hiring news, product launches, technologies used, etc. |
|
||||
| [Proxycurl](https://nubela.co/proxycurl) | `@agentic/proxycurl` | [docs](https://agentic.so/tools/proxycurl) | People and company data from LinkedIn & Crunchbase. |
|
||||
| [RocketReach](https://rocketreach.co/api/v2/docs) | `@agentic/rocketreach` | [docs](https://agentic.so/tools/rocketreach) | B2B person and company enrichment API. |
|
||||
| [Searxng](https://docs.searxng.org) | `@agentic/searxng` | [docs](https://agentic.so/tools/searxng) | OSS meta search engine capable of searching across many providers like Reddit, Google, Brave, Arxiv, Genius, IMDB, Rotten Tomatoes, Wikidata, Wolfram Alpha, YouTube, GitHub, [etc](https://docs.searxng.org/user/configured_engines.html#configured-engines). |
|
||||
| [SerpAPI](https://serpapi.com/search-api) | `@agentic/serpapi` | [docs](https://agentic.so/tools/serpapi) | Lightweight wrapper around SerpAPI for Google search. |
|
||||
| [Serper](https://serper.dev) | `@agentic/serper` | [docs](https://agentic.so/tools/serper) | Lightweight wrapper around Serper for Google search. |
|
||||
|
@ -177,6 +181,7 @@ Full docs are available at [agentic.so](https://agentic.so).
|
|||
| [Wikidata](https://www.wikidata.org/wiki/Wikidata:Data_access) | `@agentic/wikidata` | [docs](https://agentic.so/tools/wikidata) | Basic Wikidata client. |
|
||||
| [Wikipedia](https://www.mediawiki.org/wiki/API) | `@agentic/wikipedia` | [docs](https://agentic.so/tools/wikipedia) | Wikipedia page search and summaries. |
|
||||
| [Wolfram Alpha](https://products.wolframalpha.com/llm-api/documentation) | `@agentic/wolfram-alpha` | [docs](https://agentic.so/tools/wolfram-alpha) | Wolfram Alpha LLM API client for answering computational, mathematical, and scientific questions. |
|
||||
| [ZoomInfo](https://api-docs.zoominfo.com) | `@agentic/zoominfo` | [docs](https://agentic.so/tools/zoominfo) | Powerful B2B person and company data enrichment. |
|
||||
|
||||
For more details, see the [docs](https://agentic.so).
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue