Skip to Content
DocumentationIntroduction

Introduction

Pipe0 is a programmatic framework for data enrichment. If you have some data about a person or company but want more, you can do that in an infinite number of ways with pipe0.

When to use pipe0

If you find yourself using providers like Zoominfo, Findymail, etc, and piping data from one service into another - you can benefit a lot from pipe0. Moving to pipe0 will drastically increase your data quality while making it easy to combine existing data providers with AI and web scraping. No more spaghetti code 🍝.

Here are some things pipe0 does for you:

🔌 Connect 50+ data providers
💨 Make data enrichment easy and fast at any scale
💰 Run enrichment, scraping and AI infrastructure at low cost (we take 0% margin on external providers)

Use cases

There are many applications where having a unified data enrichment API helps a lot:

🤖 Building sales technology applications like automated outreach, SDR, etc.
🧙🏻 Keep data in systems like CRMs up-to-date
🧬 Working with large datasets that need to be enriched

Integrating pipe0 can save months of engineering work, simplify billing, and help you focus on the actual task you’re trying to accomplish (data enrichment is mostly just a means to an end).

What makes pipe0 a framework?

The term framework may surprise you because pipe0 is an API, dashboard, and SDK.

Pipe0 is a framework because you can not only enrich data but express logic and direction of data flow too.

The following is an example of an enrichment flow that requires logic.

Flow that needs logic
FIND phone number of person IF found FIND find timezone of that person IF NOT found FIND work email address

While you could implement this with code, pipe0 offers a much simpler interface.

The code below performs this flow. It is robust enough to enrich thousands of records in parallel and power any kind of application.

const result = await fetch("https://api.pipe0.com/v1/run/sync", { method: "POST", headers: { "authorization": `Bearer ${API_KEY}`, }, body: JSON.stringify({ pipes: [ { pipeId: "PeopleGetMobileNumberWaterfall@1", }, { pipeId: "PeopleGetTimezonePipe0@1", conditions: [ { action: "run", condition: { ref: "mobilePhoneNumber", operator: "isResolved", equals: true } } ] }, { pipeId: "PeopleGetWorkEmailHunter@1", conditions: [ { action: "run", condition: { ref: "mobilePhoneNumber", operator: "isResolved", equals: false } } ] } ], input: [ { id: 1, // assign an id to each input object name: "John Doe", companyWebsiteUrl: "https://pipe0.com" } ] }) });
Last updated on