NAV Navbar
Logo pl
curl

Introduction

The PredictLeads API is used to discover net-new companies or enrich existing company profiles with insights. Use cases range from enriching CRM with account intelligence, lead generation using buying signals and identifying top performing companies for investment purposes.

Our API is RESTful with responses delivered in JSON or XML format. Data can also be delivered as flat files, via APIs or Webhooks.

In order to use our API, you must first register with PredictLeads to get an authentication token.

If you would like to receive data as flat files or via webhooks, please get in touch with our sales.

Authentication

Authentication using Authorization header.

curl "https://predictleads.com/api/v2/followings" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Alternatively pass email and token in query parameters.

curl "https://predictleads.com/api/v2/followings \
    ?user_token={token}&user_email={email}"

Authentication is done via the API token which you can find in your account settings.

In order to use the API you need to call an endpoint URL with both your API token and chosen email.

The primary and recommended method for authenticating with PredictLeads is to specify the API key in the HTTP request header using an extended header field. In all the examples, we’ll use the header authentication model.

Pagination

curl -X GET "https://predictleads.com/api/v2/startup_platform_posts/show_hn?page=2" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Responses with a list of objects (like GET /startup_platform_posts/show_hn) are paginated. Use page parameter to get more results. Total number of all possible results is displayed inside meta attributes as count.

{
    "data": [{...}],
    "meta": {
        "count": 10
    }
}

Webhooks

Example data we’ll POST to your Webhook.


    {
      "data": [
        {
          "id": "41e1f820-9e0f-46b3-a2e0-49dbe4175859",
          "type": "event",
          "attributes": {
            "categories": [
              "hires"
            ],
            "title": "Domo, Inc. hires Vita Shannon as vice president of demand center",
            "found_at": "2021-03-01T16:15:12Z",
            "url": "https://aithority.com/it-and-devops/cloud/domo-invests-for-growth-welcoming-new-executives-to-lead-companys-demand-engines/",
            "additional_data": {
              "contact": "Vita Shannon",
              "job_title": "vice president of demand center",
              "article_title": "Domo Invests for Growth, Welcoming New Executives to Lead Company’s Demand Engines",
              "article_sentence": "Vita Shannon joins Domo from KPMG as vice president of partnerships and ecosystem, and Shelley Morrison joins from Accenture Interactive as Domo’s vice president of demand center.",
              "article_source": "aithority.com",
              "article_published_at": "2021-03-01T17:15:12.000Z",
              "confidence": "0.7243"
            }
          },
          "relationships": {
            "company1": {
              "data": {
                "id": "1422300",
                "type": "company"
              }
            }
          }
        }
      ],
      "included": [
        {
          "id": "1422300",
          "type": "company",
          "attributes": {
            "domain": "domo.com",
            "company_name": "Domo, Inc.",
            "ticker": null
          }
        },
        ...
      ],
      "meta": {
        "followed_company_ids": [
          "1422300"
        ]
      }
    }
    {
      "data": [
        {
          "id": "e18484de-8f68-4dec-8403-03df2b315321",
          "type": "job_opening",
          "attributes": {
            "title": "Full Stack Engineer",
            "url": "https://www.ycombinator.com/companies/terra/jobs/3NbdZp6-full-stack-engineer",
            "salary": "$50000 - $120000",
            "salary_data": {
              "salary_low": 50000.0,
              "salary_high": 120000.0,
              "salary_currency": "USD",
              "salary_low_usd": 50000.0,
              "salary_high_usd": 120000.0,
              "salary_time_unit": "year"
            },
            "contract_types": [
              "full time"
            ],
            "first_seen_at": "2021-08-02T03:36:38Z",
            "last_seen_at": "2021-10-30T06:52:51Z",
            "last_processed_at": "2021-10-30T06:52:51Z",
            "job_opening_closed": false,
            "location": "London, England, United Kingdom",
            "categories": [
              "engineering",
              "software_development"
            ],
            "additional_data": {
              "job_title_seniority": null,
              "tags": [
                "Growth",
                "Customer success",
                "Android",
                "Node.js",
                "PHP",
                "Python",
                "Ruby",
                "Flask",
                "Stripe",
                "Cloudflare CDN",
                "Doppler",
                "Onesignal",
                "Taplytics",
                "Workramp"
              ],
              "location_data": {
                "country": "United Kingdom",
                "city": "London",
                "fuzzy_match": false
              }
            }
          },
          "relationships": {
            "company": {
              "data": {
                "id": "1487151",
                "type": "company"
              }
            }
          }
        }
      ],
      "included": [
        {
          "id": "1487151",
          "type": "company",
          "attributes": {
            "domain": "tylertech.com",
            "company_name": "Tyler Technologies Inc",
            "ticker": "NYSE:TYL"
          }
        },
        ...
      ]
    }
    {
      "data": [
        {
          "id": "86816ac0-e43f-42b0-82d9-720b22dc7c78",
          "type": "connection",
          "attributes": {
            "category": "parent",
            "source_category": "domain_redirect",
            "source_url": null,
            "first_seen_at": "2021-03-04T11:56:04Z",
            "last_seen_at": "2021-03-04T11:56:04Z"
          },
          "relationships": {
            "company1": {
              "data": {
                "id": "324979",
                "type": "company"
              }
            },
            "company2": {
              "data": {
                "id": "18612203",
                "type": "company"
              }
            }
          }
        }
      ],
      "included": [
        {
          "id": "324979",
          "type": "company",
          "attributes": {
            "domain": "saucony.com",
            "company_name": "Saucony, Inc.",
            "ticker": null
          }
        },
        ...
      ],
      "meta": {
        "followed_company_ids": [
          "324979"
        ]
      }
    }

Example data we’ll POST to Segment webhook url.

    {
      "data": [
        {
          "id": "41e1f820-9e0f-46b3-a2e0-49dbe4175859",
          "type": "event",
          "attributes": {
            "categories": [
              "hires"
            ],
            "title": "Domo, Inc. hires Vita Shannon as vice president of demand center",
            "found_at": "2021-03-01T16:15:12Z",
            "url": "https://aithority.com/it-and-devops/cloud/domo-invests-for-growth-welcoming-new-executives-to-lead-companys-demand-engines/",
            "additional_data": {
              "contact": "Vita Shannon",
              "job_title": "vice president of demand center",
              "article_title": "Domo Invests for Growth, Welcoming New Executives to Lead Company’s Demand Engines",
              "article_sentence": "Vita Shannon joins Domo from KPMG as vice president of partnerships and ecosystem, and Shelley Morrison joins from Accenture Interactive as Domo’s vice president of demand center.",
              "article_source": "aithority.com",
              "article_published_at": "2021-03-01T17:15:12.000Z",
              "confidence": "0.7243"
            }
          },
          "relationships": {
            "company1": {
              "data": {
                "id": "1422300",
                "type": "company"
              }
            }
          }
        }
      ],
      "included": [
        {
          "id": "1422300",
          "type": "company",
          "attributes": {
            "domain": "domo.com",
            "company_name": "Domo, Inc.",
            "ticker": null
          }
        }
      ],
      "meta": {
        "followed_company_ids": [
          "1422300"
        ]
      }
    }

Webhooks enable our customers to receive data on a continuous basis without the need to issue unnecessary API requests.

Signals

Whenever we find a new buying signal for one of the companies you’re tracking, we’ll send a POST request to your general webhook url with the Signal object. Go to account settings to enter your general webhook url.

Companies

When creating a segment of companies you can set a webhook url optionally. Every week we’ll send a POST request to that webhook url with new companies in your segment. Under relationships we’ll include Signal objects corresponding to Segment parameters. In case no new companies are found in your segment, we won’t send anything.

Webhook Authentication

To validate whether the webhook came from PredictLeads we suggest verifying the webhook payloads with the X-Predict-Signature header (which we pass with every webhook). Header payload is a SHA1 HMAC hexdigest computed with your token and the raw body of the request.

Track

Track companies to receive buying signals data when found. We’ll issue a POST request with the data to your general webhook url. More on webhooks here.

Follow company

curl -X POST "https://predictleads.com/api/v2/companies/hubspot.com/follow" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Enables the authenticated user to follow the company specified with the company domain parameter.

{
  "success": {
    "type": "follow_successful",
    "message": "Company with domain hubspot.com was successfully followed."
  }
}

HTTP Request

POST https://predictleads.com/api/v2/companies/:domain/follow

Followed companies

curl -X GET "https://predictleads.com/api/v2/followings" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of followed companies.

[
  {"domain": "hubspot.com"},
  {"domain": "clearbit.com"},
  {"domain": "segment.com"},
  {"domain": "outreach.com"},
  ...
]

HTTP Request

GET https://predictleads.com/api/v2/followings

Unfollow company

curl -X POST "https://predictleads.com/api/v2/companies/hubspot.com/unfollow" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Enables the authenticated user to unfollow the company specified with the domain parameter.

{
  "success": {
    "type": "unfollow_successful",
    "message": "Company with domain hubspot.com was successfully unfollowed."
  }
}

If you are trying to remove a company that is not followed, you will get the following response

{
  "error": {
    "type": "unfollow_unsuccessful",
    "message": "Are you sure you're following this company? We couldn't find it in our database."
  }
}

HTTP Request

POST https://predictleads.com/api/v2/companies/:domain/unfollow

Enrich

Access all recent signals for a given company by providing its domain. Each signal type has its own endpoint: /events, /job_openings and /technologies. Every call returns most recent 10 signals. In case the company isn’t in our database, the system will immediately start searching for signals and return them to the specified webhook url when finished. Alternatively, you can call the endpoint again in 48 hours.

Events

curl -X GET "https://predictleads.com/api/v2/companies/klasha.com/events" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of events from news for a given company. Events are found in press releases, industry news, blogs and other text based media.

{
  "data": [{
    "id": "f096ea55-f81b-4f6a-83bd-d5c1cdc10143",
    "type": "event",
    "attributes": {
      "categories": [
        "expands_offices_in"
      ],
      "title": "Klasha expands offices in Ghana",
      "found_at": "2021-10-19T22:00:00Z",
      "url": "https://www.electronicpaymentsinternational.com/news/company-news/",
      "additional_data": {
        "location": "Ghana",
        "location_data": {
          "country": "Ghana",
          "fuzzy_match": false
        },
        "article_title": "Company news Archives",
        "article_sentence": "San Francisco and Lagos-based cross-border technology company Klasha is further expanding its presence in Africa with the launch of its services in Ghana.",
        "article_body": "Payfare, which offers banking solutions for gig workforce, has announced that it is integrating with Plaid, a data transfer network that powers fintech and digital finance products. The integration will… Technology company TraQiQ has introduced its online payment solution 'TraQPayments' in Latin America. TraQPayments is… American Express has partnered with Goldman Sachs Transaction Banking (TxB) to offer an integrated payments solution to large corporate clients. Barclaycard Payments and SAP is expanding their cooperation in a bid to boost payment acceptance capabilities and enhance procure-to-pay processes. UK-based fintech firm Previse has tapped Mastercard to provide instant payments to suppliers in more than 100 markets globally. Latin America-based payment processor PayRetailers has entered into an alliance with European payment giant Worldline. Buy now pay later (BNPL) firm Klarna has introduced ‘pay now’ option in the UK. Western Union International Bank (WUIB) has expanded its real-time payment capabilities in Europe by joining the Single Euro Payments Area (SEPA) Instant Credit Transfer scheme (SCT Inst). San Francisco and Lagos-based cross-border technology company Klasha is further expanding its presence in Africa with the launch of its services in Ghana.",
        "article_source": "electronicpaymentsinternational.com",
        "article_published_at": "2021-10-20T00:00:00.000Z",
        "confidence": "0.6872"
      }
    },
    "relationships": {}
  },
    ...,
  ],
  "meta": {
    "count": 8
  }
}

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain/events

Request Parameters

Parameter Description
categories string All event categories are listed below. Split by a comma (,).
found_at_from date (ISO 8601) Signals found from specified date.
found_at_until date (ISO 8601) Signals found until specified date.
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

List of event categories and more information on event object is available here.

To get more results use pagination.

Job openings

curl -X GET "https://predictleads.com/api/v2/companies/tryterra.co/job_openings" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of job openings for a given company. Job openings are found on companies’ career sites and job boards.

{
  "data": [{
    "id": "e18484de-8f68-4dec-8403-03df2b315321",
    "type": "job_opening",
    "attributes": {
      "title": "Full Stack Engineer",
      "url": "https://www.ycombinator.com/companies/terra/jobs/3NbdZp6-full-stack-engineer",
      "salary": "$50000 - $120000",
      "salary_data": {
        "salary_low": 50000.0,
        "salary_high": 120000.0,
        "salary_currency": "USD",
        "salary_low_usd": 50000.0,
        "salary_high_usd": 120000.0,
        "salary_time_unit": "year"
      },
      "contract_types": [
        "full time"
      ],
      "first_seen_at": "2021-08-02T03:36:38Z",
      "last_seen_at": "2021-10-30T06:52:51Z",
      "last_processed_at": "2021-10-30T06:52:51Z",
      "job_opening_closed": false,
      "location": "London, England, United Kingdom",
      "categories": [
        "engineering",
        "software_development"
      ],
      "additional_data": {
        "job_title_seniority": null,
        "tags": [
          "Growth",
          "Customer success",
          "Android",
          "Node.js",
          "PHP",
          "Python",
          "Ruby",
          "Flask",
          "Stripe",
          "Cloudflare CDN",
          "Doppler",
          "Onesignal",
          "Taplytics",
          "Workramp"
        ],
        "location_data": {
          "country": "United Kingdom",
          "city": "London",
          "fuzzy_match": false
        }
      }
    },
    "relationships": {}
  },
    ...,
  ],
  "meta": {
    "count": 16,
    "total_jobs_count": 16
  }
}

Job openings endpoint returns a number of jobs via "meta" > "count" property. The total number of jobs a company advertises you can get via "meta" > "total_jobs_count".

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain/job_openings

Request Parameters

Parameter Description
categories string All job opening categories are listed below. Split by a comma (,).
with_job_descriptions boolean Set to true if you’d like jobs returned with their descriptions.
active_only boolean Set to true if you’d like to receive jobs that are not closed and last_seen_at more recent than 3 weeks.
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

List of job openings categories and more information on job opening object is available here.

To get more results use pagination.

Technologies

curl -X GET "https://predictleads.com/api/v2/companies/madkudu.com/technologies" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of technology providers for a given company.

{
  "data": [{
    "id": "382484d0-aa3a-4af1-8e68-d81df9506b2e",
    "type": "technology",
    "attributes": {
      "categories": [
        "customer_messaging_platform",
        "chat_software"
      ],
      "domain": "intercom.com",
      "title": "Intercom",
      "url": "https://www.madkudu.com",
      "first_seen_at": "2016-08-10T23:19:46Z",
      "last_seen_at": "2019-01-14T21:06:07Z"
    }
  },
    ...,
  ],
  "meta": {
    "count": 29
  }
}

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain/technologies

Request Parameters

Parameter Description
categories string All technology categories are listed below. Split by a comma (,).
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

List of technology categories and more information on technology object is available here.

To get more results use pagination.

Connections

curl -X GET "https://predictleads.com/api/v2/companies/pipedrive.com/connections" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of categorized business connections. Business connections can be found via backlinks or logos on /our-customers, /case-studies, /portfolio, /clients etc. pages. Business connections enable you to eg. calculate network health of a company, to build systems when new high value connections are made… Connections can be of many types: partner, vendor, investor, parent…

{
  "data": [{
    "id": "168d9d73-3a8b-492f-b5bc-35564a5ff1fe",
    "type": "connection",
    "attributes": {
      "category": "vendor",
      "source_category": "vendor_page",
      "source_url": "https://funnel.io/customers",
      "first_seen_at": "2021-08-23T09:08:38Z",
      "last_seen_at": "2021-10-18T11:30:23Z"
    },
    "relationships": {
      "company1": {
        "data": {
          "id": "1828101",
          "type": "company"
        }
      },
      "company2": {
        "data": {
          "id": "1464778",
          "type": "company"
        }
      }
    }
  },
    {
    "id": "d76d778a-06be-470f-b7f2-937a81b4b7d5",
    "type": "connection",
    "attributes": {
      "category": "partner",
      "source_category": "partner_page",
      "source_url": "https://1wirefiber.com",
      "first_seen_at": "2021-07-15T10:50:55Z",
      "last_seen_at": "2021-10-23T15:10:12Z"
    },
    "relationships": {
      "company1": {
        "data": {
          "id": "4965363",
          "type": "company"
        }
      },
      "company2": {
        "data": {
          "id": "1464778",
          "type": "company"
        }
      }
    }
  },
    ...,
  ],
  "included": [{
    "id": "1828101",
    "type": "company",
    "attributes": {
      "domain": "funnel.io",
      "company_name": "Funnel",
      "ticker": null
    }
  },{
    "id": "1464778",
    "type": "company",
    "attributes": {
      "domain": "pipedrive.com",
      "company_name": "Pipedrive, Inc.",
      "ticker": null
    }
  },{
    "id": "4965363",
    "type": "company",
    "attributes": {
      "domain": "1wirefiber.com",
      "company_name": "1Wire Communications",
      "ticker": null
    }
  }
    ...,
  ],
  "meta": {
    "count": 83
  }
}

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain/connections

Request Parameters

Parameter Description
limit string Limit the number of shown website subpages per page. Default is 30, maximum is 100.

More information on the connection object is available here.

To get more results use pagination.

Website Evolution

curl -X GET "https://predictleads.com/api/v2/companies/snowflake.com/website_evolution" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Website Evolution gives insights to how website is chronologically developing eg. when pages like “Blog”, “Privacy policy”, “Pricing”, “Product”, “API Docs”, “Team”, “Support pages” etc. were added. This can serve as a proxy to how quickly a website is growing, to determine the growth stage they are at and also to help segment websites.

{
  "data": [

    {
      "id": "00000000-0000-0000-0000-000020202026",
      "type": "subpage",
      "attributes": {
        "category": "blog",
        "url": "https://prisma.io/blog",
        "first_seen_at": "2018-07-07T15:21:17.765+02:00",
        "last_seen_at": "2019-10-19T12:45:24.804+02:00"
      },
      "relationships": {}
    },
    ...
  ],
  "meta": {
    "count": 24
  }
}

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain/website_evolution

Request Parameters

Parameter Description
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

More information on the website_evolution object is available here.

To get more results use pagination.

All

curl -X GET "https://predictleads.com/api/v2/companies/prisma.io" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns all data points you are subscribed to for the requested domain name. Eg.: Events, Job Openings, Technologies, Connections and Website Evolution.

JSON format is also used when exporting flat files. Two options for flat file exports:

A. Returned is one JSON formatted file with one website per line. Each line contains all data related to the website.

B. Returned is one JSON file per subscribed endpoint. Eg. if you’re subscribed to Jobs Openings and News Events then three files will be returned. One for each dataset and one additional file with company attributes data. In each file there will be one record per line: eg. one Job Opening per line.

If you’d like us to export in a different format please do let us know, we are flexible.

{
  "data": [{
    "id": "4364432",
    "type": "company",
    "attributes": {
      "domain": "prisma.io",
      "company_name": "Prisma",
      "friendly_company_name": "Prisma",
      "ticker": null,
      "meta_title": "Prisma - Next-generation Node.js and TypeScript ORM for Databases",
      "meta_description": "Prisma is a Node.js and TypeScript ORM that can be used to build GraphQL servers, REST APIs, microservices & more.",
      "location": null,
      "location_data": null
    },
    "relationships": {
      "job_openings": {
        "data": [{
          "id": "24c2e9d6-1e39-488f-817f-92e64d4ac753",
          "type": "job_opening"
        },
          ...
        ],
        "meta": {
          "count": 86,
          "last_successful_visit_at": "2021-10-25T18:43:47.028+02:00"
        }
      },
      "technologies": {
        "data": [{
          "id": "a57c1638-5ae5-492a-932a-c831dd349d0d",
          "type": "technology"
        },
          ...
        ],
        "meta": {
          "count": 47,
          "last_successful_visit_at": "2021-10-17T08:12:24.797+02:00"
        }
      },
      "events": {
        "data": [{
          "id": "34c2be6f-8645-4724-a279-cb9f8640f51a",
          "type": "event"
        },
          ...
        ],
        "meta": {
          "count": 9,
          "last_successful_visit_at": "2021-10-16T03:44:42.579+02:00"
        }
      },
      "connections": {
        "data": [{
          "id": "171c38bb-502a-45ea-80d0-e199eff2861e",
          "type": "connection"
        },
          ...
        ],
        "meta": {
          "count": 41,
          "last_successful_visit_at": "2021-10-07T13:07:42.836+02:00"
        }
      },
      "website_evolution": {
        "data": [{
          "id": "d8d79701-dbab-4ab1-bc99-5ca37f236733",
          "type": "subpage"
        },
          ...
        ],
        "meta": {
          "count": 19,
          "last_successful_visit_at": "2021-10-17T08:12:24.797+02:00"
        }
      }
    }
  }],
  "included": [{
    "id": "39b409fe-fba7-4c86-a5f8-3f3c25d822d2",
    "type": "job_opening",
    "attributes": {
      "title": "Senior Social Media Manager",
      "url": "https://www.prisma.io/jobs",
      "salary": null,
      "salary_data": {
        "salary_low": null,
        "salary_high": null,
        "salary_currency": null,
        "salary_low_usd": null,
        "salary_high_usd": null,
        "salary_time_unit": null
      },
      "contract_types": [
        "remote"
      ],
      "first_seen_at": "2021-10-24T04:08:45Z",
      "last_seen_at": "2021-10-24T04:08:45Z",
      "last_processed_at": "2021-10-24T04:08:45Z",
      "job_opening_closed": false,
      "location": null,
      "categories": [
        "management",
        "marketing"
      ],
      "additional_data": {
        "job_title_seniority": "management",
        "tags": [],
        "location_data": null
      }
    },
    "relationships": {}
  },
    ...,
    {
      "id": "0fd01128-6522-4f30-9523-4799887cce9b",
      "type": "technology",
      "attributes": {
        "categories": [
          "email_marketing",
          "marketing"
        ],
        "domain": "benchmarkemail.com",
        "first_seen_at": "2021-08-02T11:48:32Z",
        "last_seen_at": "2021-08-02T11:48:32Z",
        "url": "https://www.benchmarkemail.com/",
        "title": "Benchmark",
        "behind_firewall": true
      },
      "relationships": {}
    },
    ...,
    {
      "id": "2fec6e12-a203-4fe8-ad4a-7a24fcc32975",
      "type": "event",
      "attributes": {
        "categories": [
          "launches"
        ],
        "title": "Prisma launched Nexus 1.0 on Dec 14th 20'.",
        "found_at": "2020-12-13T23:00:00Z",
        "url": "https://www.prisma.io/blog/announcing-the-release-of-nexus-schema-v1-b5eno5g08d0b",
        "additional_data": {
          "product": "Nexus 1.0",
          "product_data": {
            "full_text": "Nexus 1.0",
            "fuzzy_match": true
          },
          "date": "2020-12-14",
          "article_title": "Announcing Nexus 1.0: A Major Release for Type-Safe, Code-First GraphQL APIs",
          "article_sentence": "Today, Prisma is happy to announce that Prisma has released Nexus 1.0.",
          "article_source": "prisma.io",
          "article_author": "Ryan Chenkie",
          "article_published_at": "2020-12-14T00:00:00.000Z",
          "confidence": "0.4657"
        }
      },
      "relationships": {}
    },
    ..._,
    {
      "id": "84519f0d-edcf-4200-8e49-2bed42e70d13",
      "type": "event",
      "attributes": {
        "categories": [
          "integrates_with"
        ],
        "title": "Prisma integrates with Next.js",
        "found_at": "2021-06-07T10:30:00Z",
        "url": "https://daily.dev/blog/nextjs-with-prisma",
        "additional_data": {
          "article_title": "How to use Prisma in a Next.js app",
          "article_sentence": "Prisma integrates well with Next.js.",
          "article_body": "In this post, Daily will learn how to use Prisma, an ORM for JavaScript and TypeScript, in a Next.js app. Prisma is an open-source ORM tool for Node.js and TypeScript, that simplifies connection, querying, migrations, and data modeling to SQL databases. ORM is Object-Relational Mapping, it is a technique in which Daily can query data, connect and manipulate databases using the object-oriented paradigm. ORMs can be written in any language, in whatever language it is written in, it encapsulates the code required to manipulate the database. This eliminates the use of SQL because that is being taken care of by the ORM library. Prisma integrates well with Next.js.",
          "article_source": "daily.dev",
          "article_published_at": "2021-06-07T12:30:00.000Z",
          "confidence": "0.8214"
        }
      },
      "relationships": {
        "company1": {
          "data": {
            "id": "4364432",
            "type": "company"
          }
        },
        "company2": {
          "data": {
            "id": "13266883",
            "type": "company"
          }
        }
      }
    },
    {
      "id": "4364432",
      "type": "company",
      "attributes": {
        "domain": "prisma.io",
        "company_name": "Prisma",
        "ticker": null
      }
    }
    ...,
    {
      "id": "ded68dfc-a216-4981-a20c-d1ab3bd02219",
      "type": "connection",
      "attributes": {
        "category": "partner",
        "source_category": "partner_page",
        "source_url": "https://www.prisma.io",
        "first_seen_at": "2021-08-16T03:56:32Z",
        "last_seen_at": "2021-09-16T06:10:25Z"
      },
      "relationships": {
        "company1": {
          "data": {
            "id": "4364432",
            "type": "company"
          }
        },
        "company2": {
          "data": {
            "id": "23660867",
            "type": "company"
          }
        }
      }
    },
    {
      "id": "23660867",
      "type": "company",
      "attributes": {
        "domain": "panther.co",
        "company_name": "Panther",
        "ticker": null
      }
    }
    ...,
    {
      "id": "d8d79701-dbab-4ab1-bc99-5ca37f236733",
      "type": "subpage",
      "attributes": {
        "category": "blog",
        "url": "https://www.prisma.io/blog/prisma-mongodb-preview-release",
        "first_seen_at": "2021-07-15T09:04:30.610+02:00",
        "last_seen_at": "2021-08-16T05:55:46.620+02:00"
      },
      "relationships": {}
    },
    ...,
    {
      "id": "1bfa9986-5175-4bf0-926b-362da3922044",
      "type": "github_repository",
      "attributes": {
        "url": "https://github.com/prisma/prisma1"
      },
      "relationships": {
        "timeseries_datapoints": {
          "data": [
            {
              "id": "fc38d623-19d8-4078-89d4-8c9e555d9407",
              "type": "timeseries_datapoint"
            },
            ...,
          ]
        }
      }
    },
    {
      "id": "fc38d623-19d8-4078-89d4-8c9e555d9407",
      "type": "timeseries_datapoint",
      "attributes": {
        "timestamp": "2021-03-04T10:07:11.006+01:00",
        "data": {
          "forks": 947,
          "stars": 16863,
          "watches": 98,
          "last_update_at": "2021-03-02T01:16:40Z"
        }
      }
    },
    ...,
  ]
}

HTTP Request

GET https://predictleads.com/api/v2/companies/:domain

Request Parameters

Parameter Description
with_job_descriptions boolean Set to true if you’d like jobs returned with their descriptions.
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

List of event categories and more information on event object is available here.

To get more results use pagination.

Discover

Discover via StartupPlatform

curl -X GET "https://predictleads.com/api/v2/startup_platform_posts/latest" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Find companies that are hiring or launching new products via Hacker News (news.ycombinator.com) and similar platforms.

{
  "data": [{
    "id": "247825",
    "type": "startup_platform_post",
    "attributes": {
      "published_at": "2020-08-12 00:24:30 +0200",
      "post_type": "job_hn",
      "post_url": "https://news.ycombinator.com/item?id=24126709",
      "company_domain": "repl.it",
      "company_name": "Repl",
      "fuzzy_match": false
    }
  },
    ...
  ],
  "meta": {
    "count": 180013
  }
}
curl -X GET "https://predictleads.com/api/v2/startup_platform_posts/jobs_hn" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'
{
  "data": [{
    "id": "247782",
    "type": "startup_platform_post",
    "attributes": {
      "published_at": "2020-08-11 16:28:16 +0200",
      "post_type": "job_hn",
      "post_url": "https://news.ycombinator.com/item?id=24120589",
      "company_domain": "forma.ai",
      "company_name": "Forma AI, Inc.",
      "fuzzy_match": false
    }
  },
    ...
  ],
  "meta": {
    "count": 65106
  }
}

HTTP Request

GET https://predictleads.com/api/v2/startup_platform_posts/jobs_hn

HTTP Request

GET https://predictleads.com/api/v2/startup_platform_posts/show_hn

Returns companies that have posted in Show HN format on Hacker News.

Request Parameters

Parameter Description
post_datetime_from date (ISO 8601) Found HN posts from specified date.
post_datetime_until date (ISO 8601) Found HN posts from specified date.
min_score date (ISO 8601) Minimum required HN score (Coming soon …).
limit string Limit the number of shown events per page. Default is 30, maximum is 100.

Segments

Returns a list of companies matching your segment criteria. Companies are sent on a periodic basis eg. weekly, bi-weekly, monthly.

Matching companies are sent onto segment webhook URL. If webhook URL is not set, companies are sent to your email.

Company segments enable you to personalize outreach and messaging. Leverage buying signals and identify new sets of companies. Eg.: you can create a segment of companies that use Salesforce and recently posted a job opening for iOS Developers.

Create segment

curl -X POST "https://predictleads.com/api/v2/segments"
  -d '{"technologies":"Salesforce", "job_categories":"sales"}'
  -H "Content-Type: application/json" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Creates a segment of companies with a set of query parameters.

{
  "data": {
    "id": "1093",
    "type": "segment",
    "attributes": {
      "name": null,
      "webhook_url": null,
      "active": null,
      "recurrence": "onetime",
      "job_categories": [
        "sales"
      ],
      "locations": null,
      "event_relationship_type_names": null,
      "event_tags": null,
      "found_at_from": "2021-03-29T15:18:37.237+02:00",
      "found_at_until": null,
      "technology_names": [
        "Salesforce"
      ]
    }
  },
  "meta": {
    "message": "Segment successfully created.",
    "message_type": "segment_created"
  }
}

HTTP Request

POST https://predictleads.com/api/v2/segments

Request Parameters

Parameter Description
webhook_url string We’ll send the data to this URL.
locations string List of company locations separated by comma (,). Ie.: CA, FL, France.
job_categories string List of job categories separated by comma (,). Ie.: marketing, education, software_development.
technologies string List of technologies separated by comma (,). Ie.: Salesforce, Gitlab, Slack.
found_at_from date (ISO 8601) Signals found from specified date.
found_at_until date (ISO 8601) Signals found until specified date.
active string Set to “false” to deactivate the segment.
limit string Limit the number of shown events per page. Default is 10, maximum is 100.

Use abbreviations for US states ie.: CA, FL and countries for other locations: Germany, China, Japan …

All /segment parameters can be used to create a segment.

List of job opening categories is available here.

For getting a list of technologies please contact us at founders@predictleads.com.

Sample segment Webhook payload

{
  "data": [{
    "id": "348068",
    "type": "company",
    "attributes": {
      "domain": "boozallen.com",
      "company_name": "Booz Allen Hamilton",
      "friendly_company_name": "Booz Allen Hamilton",
      "ticker": "NYSE:BAH"
    }
  },
    ...
  ],
  "meta": {
    "count": 21251
  }
}

Returns a list of companies that satisfy given Segment parameters.

Update segment

curl -X PUT "https://predictleads.com/api/v2/segments/721"
  -d '{"webhook_url":"https://requestb.in/2940cn"}'
  -H "Content-Type: application/json" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Updates the segment.

{
  "data": {
    "id": "721",
    "type": "segments",
    "attributes": {
      "name": null,
      "webhook_url": "https://requestb.in/2940cn",
      "active": true,
      "recurrence": "onetime",
      "job_categories": [
        "Sales"
      ],
      "locations": [
        "United States"
      ],
      "event_relationship_type_names": null,
      "company_partnered_with_stock_exchange_company": null,
      "company_not_on_stock_exchange": null,
      "event_tags": null,
      "found_at_from": null,
      "found_at_until": null,
      "technology_names": [
        "Salesforce",
        "Outreach.io"
      ]
    },
    "meta": {
      "message": "Segment successfully updated.",
      "message_type": "segment_updated"
    }
  }
}

HTTP Request

PUT https://predictleads.com/api/v2/segments/:id

Request Parameters

Parameter Description
id string ID of the segment.
webhook_url string We’ll send the data to this URL.
active string Set to “false” to deactivate the segment.

All /segment parameters can be used to update a segment.

Show segment

curl -X GET "https://predictleads.com/api/v2/segments/721"
  -H "Content-Type: application/json" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Show segment attributes.

{
  "data": {
    "id": "1060",
    "type": "segment",
    "attributes": {
      "name": null,
      "webhook_url": null,
      "active": true,
      "recurrence": "onetime",
      "job_categories": [
        "Sales"
      ],
      "locations": [
        "United States"
      ],
      "event_relationship_type_names": null,
      "company_partnered_with_stock_exchange_company": null,
      "company_not_on_stock_exchange": null,
      "event_tags": null,
      "found_at_from": null,
      "found_at_until": null,
      "technology_names": [
        "Salesforce",
        "Outreach.io"
      ]
    }
  }
}

HTTP Request

GET https://predictleads.com/api/v2/segments/:id

Show all segments

curl -X GET "https://predictleads.com/api/v2/segments"
  -H "Content-Type: application/json" \
  -H 'X-User-Email: <email>' \
  -H 'X-User-Token: <token>'

Returns a list of all your segments.

{
  "data": [{
    "id": "1060",
    "type": "segment",
    "attributes": {
      "name": null,
      "webhook_url": null,
      "active": true,
      "recurrence": "onetime",
      "job_categories": [
        "Sales"
      ],
      "locations": [
        "United States"
      ],
      "event_relationship_type_names": null,
      "company_partnered_with_stock_exchange_company": null,
      "company_not_on_stock_exchange": null,
      "event_tags": null,
      "found_at_from": null,
      "found_at_until": null,
      "technology_names": [
        "Salesforce",
        "Outreach.io"
      ]
    }
  },
    ...
  ]
}

HTTP Request

POST https://predictleads.com/api/v2/segments

Signal objects

Listed here are all types of returned signal objects.

Event

Examples of event objects

{
  "data": [{
    "id": "f096ea55-f81b-4f6a-83bd-d5c1cdc10143",
    "type": "event",
    "attributes": {
      "categories": [
        "expands_offices_in"
      ],
      "title": "Klasha expands offices in Ghana",
      "found_at": "2021-10-19T22:00:00Z",
      "url": "https://www.electronicpaymentsinternational.com/news/company-news/",
      "additional_data": {
        "location": "Ghana",
        "location_data": {
          "country": "Ghana",
          "fuzzy_match": false
        },
        "article_title": "Company news Archives",
        "article_sentence": "San Francisco and Lagos-based cross-border technology company Klasha is further expanding its presence in Africa with the launch of its services in Ghana.",
        "article_body": "Payfare, which offers banking solutions for gig workforce, has announced that it is integrating with Plaid, a data transfer network that powers fintech and digital finance products. The integration will… Technology company TraQiQ has introduced its online payment solution 'TraQPayments' in Latin America. TraQPayments is… American Express has partnered with Goldman Sachs Transaction Banking (TxB) to offer an integrated payments solution to large corporate clients. Barclaycard Payments and SAP is expanding their cooperation in a bid to boost payment acceptance capabilities and enhance procure-to-pay processes. UK-based fintech firm Previse has tapped Mastercard to provide instant payments to suppliers in more than 100 markets globally. Latin America-based payment processor PayRetailers has entered into an alliance with European payment giant Worldline. Buy now pay later (BNPL) firm Klarna has introduced ‘pay now’ option in the UK. Western Union International Bank (WUIB) has expanded its real-time payment capabilities in Europe by joining the Single Euro Payments Area (SEPA) Instant Credit Transfer scheme (SCT Inst). San Francisco and Lagos-based cross-border technology company Klasha is further expanding its presence in Africa with the launch of its services in Ghana.",
        "article_source": "electronicpaymentsinternational.com",
        "article_published_at": "2021-10-20T00:00:00.000Z",
        "confidence": "0.6872"
      }
    },
    "relationships": {}
  },
    ...
  ]
}

Event signals are structured pieces of data found in press releases, news articles, blogs and other public documents.

Attribute Description
id UUID
Unique signal identifier (unique across signal types).
categories array
Type of the event - full list below.
title string
Autogenerated title from the data.
url string
Most relevant source URL.
found_at datetime
Time & date (ISO 8601) of the published document.
additional_data hash
Additional data regarding the signal. See attributes below.
relationships hash
Associated Company information: Company IDs and connection order. IDs are referenced in the included object.
included array
Includes references to the relationships object. It enables you to connect company IDs with related company domain name.

Additional data

Attribute Description
relationships > companies array
Array of company domains in the signal (max 2)
When category involves two companies ie.: acquires. The order of the companies in the array is guaranteed so that the first company in the array is the acquirer and the second is the acquiree. Same goes for other categories like sells_assets_to, integrates_with …
date date
Date (ISO 8601) of when the event happened.
location string
Location of where the event happened or where the organization has expanded/relocated.
location_data hash
Structured location data. Can include the following location attributes: city, state, country, fuzzy_match
contact string
Full name of the person in the personnel change.
job_title string
Full job title of the person in the personnel change.
product string
Name of the product that was launched.
product_tags array
List of tags regarding the product.
amount integer
Total amount of the deal in $ (investments, acquisitions, new clients).
recognition string
Name of recognition the company received.
assets string
Company’s assets.
asset_tags array
List of tags regarding the assets.
headcount integer
Number of employees hired or let go.
award string
Name of award the company received.
financing_type string
Stage of the funding round (seed, Series A, Series B, …, Angel funding, …).
financing_type_tags array
List of tags regarding the financing.
funding_round string
Funding round type (Angel, Seed, Accelerator, Series A, Series B …)
division string
Whether event concerns a specific division.
conference string
Conference where the company received award or recognition.
vulnerability string
Company issue
planning boolean
Event is not set in stone.

Event categories

Signal Group Description
hires leadership Company hired new executive or senior personnel.
promotes leadership Company promoted existing executive or senior personnel.
leaves leadership Executive or senior personnel left the company.
retires leadership Executive or senior personnel retires from the company.
acquires acquisition Company acquired other company.
merges_with acquisition Company merges with other company.
sells_assets_to acquisition Company sells assets (like properties or warehouses) to other company.
expands_offices_to expansion Company opens new offices in another town, state, country or continent.
expands_offices_in expansion Company expands existing offices.
expands_facilities expansion Company opens new or expands existing facilities like warehouses, data centers, manufacturing plants etc.
opens_new_location expansion Company opens new service location like hotels, restaurants, bars, hospitals etc.
increases_headcount_by expansion Company offers new job vacancies.
launches new_offering Company launches new offering.
integrates_with new_offering Company integrates with other company.
is_developing new_offering Company begins development of a new offering.
receives_financing investment Company receives investment like venture funding, loan, grant etc.
invests_into investment Company invests into other company.
invests_into_assets investment Company invests into assets like property, trucks, facilities etc.
goes_public investment Company issues shares to the public for the first time.
closes_offices cost_cutting Company closes existing offices.
decreases_headcount_by cost_cutting Company lays off employees.
partners_with partnership Company partners with other company.
receives_award recognition Company or person at the company receives an award.
recognized_as recognition Company or person at the company receives recognition.
signs_new_client contract Company signs new client.
files_suit_against corporate_challenges Company files suit against other company.
has_issues_with corporate_challenges Company has vulnerability problems.
identified_as_competitor_of relational New or existing competitor was identified.

Job opening

Examples of job_opening objects

[{
    "id": "e18484de-8f68-4dec-8403-03df2b315321",
    "type": "job_opening",
    "attributes": {
      "title": "Full Stack Engineer",
      "url": "https://www.ycombinator.com/companies/terra/jobs/3NbdZp6-full-stack-engineer",
      "salary": "$50000 - $120000",
      "salary_data": {
        "salary_low": 50000.0,
        "salary_high": 120000.0,
        "salary_currency": "USD",
        "salary_low_usd": 50000.0,
        "salary_high_usd": 120000.0,
        "salary_time_unit": "year"
      },
      "contract_types": [
        "full time"
      ],
      "first_seen_at": "2021-08-02T03:36:38Z",
      "last_seen_at": "2021-10-30T06:52:51Z",
      "last_processed_at": "2021-10-30T06:52:51Z",
      "job_opening_closed": false,
      "location": "London, England, United Kingdom",
      "categories": [
        "engineering",
        "software_development"
      ],
      "additional_data": {
        "job_title_seniority": null,
        "tags": [
          "Growth",
          "Customer success",
          "Android",
          "Node.js",
          "PHP",
          "Python",
          "Ruby",
          "Flask",
          "Stripe",
          "Cloudflare CDN",
          "Doppler",
          "Onesignal",
          "Taplytics",
          "Workramp"
        ],
        "location_data": {
          "country": "United Kingdom",
          "city": "London",
          "fuzzy_match": false
        }
      }
    },
    "relationships": {}
  },
  ...,
]
Attribute Description
id UUID
Unique signal identifier (unique across signal types).
type string
Signal type: “job_opening”.
attributes hash
Includes different job opening attributes.
title string
Job title
url string
URL of the web page where the data was found.
first_seen_at datetime
Time & date (ISO 8601) of when the job opening was first seen.
last_seen_at datetime
Time & date (ISO 8601) of when the job opening was last seen.
job_opening_closed boolean
True if keyword eg.: “job no longer available”, “vacancy listing expired”, “position filled” … is found on job opening site. Please also deem job opening as closed if last_seen_at is greater than 3 weeks ago. Job openings are crawled every 36 hours though it might happen that we cannot access the job opening with every crawl.
categories array
Array of categories - full list below.
salary string
String eg.: “£40000 - £50000 GBP”.
salary_data hash
Additional data regarding the salary. See attributes below.
contract_types array
Array of strings eg.: [“full time”, “remote”]
location string
Location

Additional data

Attribute Description
job_title_seniority string
Seniority inferred from job opening title. Possible values listed below.
tags array
Includes keywords found under job opening descriptions.
description string
Job opening description in a more raw form to enable searching by keywords. Unicode normalization form NFKD is used.
location_data hash
Can include the following location attributes: city, state, country, fuzzy_match.

Salary data

Attribute Description
salary_low string
Salary range lower bound. If salary is not a range both low and high values will be the same.
salary_high string
Salary range upper bound.
salary_currency string
Salary currency.
salary_low_usd string
Salary range lower bound, converted to USD.
salary_high_usd string
Salary range upper bound, converted to USD.
salary_time_unit string
possible values: “hour”, “day”, “week”, “month”, “year”

Job openings are crawled every 36 hours though it might happen that we cannot access the job opening with every crawl.

Job opening can be deemed closed if job_opening_closed attribute is set to true or if last_seen_at data is eg. over 2-3 weeks old. If you want to only include super fresh job openings then simply only include those that have last_seen_at timestamp eg. younger than 24h.

Job ID will persist and remain the same through the job opening lifespan.

Job opening categories

["administration", "consulting", "data_analysis", "design", "directors", "education", "engineering", "finance", "food", "healthcare_services", "human_resources", "information_technology", "internship", "legal", "management", "manual_work", "marketing", "military_and_protective_services", "operations", "purchasing", "product_management", "quality_assurance", "real_estate", "research", "sales", "software_development", "support"]

Job opening seniority

["undefined", "president", "upper_management", "middle_management", "lower_management", "management", "senior"]

Below keywords need to appear in the job title to return a seniority match.
president: President, CEO, Chairman
upper_management: Chief #{Something} Officer, Superintendent, Treasurer, Chief of Staff …
middle_management: VP, Vice President
lower_management: Director
management: Manager
senior: Senior, Sr.

Technology

Examples of technology objects

[{
  "id": "382484d0-aa3a-4af1-8e68-d81df9506b2e",
  "type": "technology",
  "attributes": {
    "categories": [
      "customer_messaging_platform",
      "chat_software"
    ],
    "domain": "intercom.com",
    "title": "Intercom",
    "url": "https://www.madkudu.com",
    "first_seen_at": "2016-08-10T23:19:46Z",
    "last_seen_at": "2019-01-14T21:06:07Z"
  }
},
  ...,
]
Attribute Description
id integer
Unique trigger identifier (unique across all trigger types).
categories array
Array of categories - full list below.
title string
Technology name.
url string
URL of the web page where the data was found.
first_seen_at datetime
Time & date (ISO 8601) of when the technology was first seen.
last_seen_at datetime
Time & date (ISO 8601) of when the technology was last seen.

Technology categories

['A/B Testing', 'ABM','Ad Servers','Advertising Networks','Advocacy Marketing','Affiliate Advertising Networks','Appointment Scheduling','Association Management Software','Call Tracking','Captcha','Comment Systems','Content Delivery Networks','Content Marketing','Customer Relationship Management','Customer Reviews','Data Management Platforms','Demand Side Platforms','Domain Name Services','E-commerce Platforms','E-commerce Tools','Education Management Software','Electronic Health Records','Electronic Signatures','Email Delivery','Email Marketing','Email Security','Enterprise Search','Event Management','Fonts','Food Ordering Services','Frameworks and Libraries','Fundraising','Healthсare Marketing','Hosted Email','Hosted Forms','Hotel PMS','Lead Generation','Live Chats','Live Streaming Platforms','Load Balancers','Logistics','Loyalty and Gamification','Mapping and GIS','Marketing Automation','Online Video Platforms','Payment Processing','Personalization','Programming Languages','Publisher Advertising Tools','Push Notifications','Real Estate Solutions','Recreation Management Software','Recruitment','Reservation Software','Retargeting','SSL Certificates','Search Marketing','Security Software','Site Delivery','Site Search','Site and Cart Abandonment','Small Business Marketing Software','Social Login','Social Media Marketing','Social Sharing','Stock Images Providers','Supply Side Platforms','Support and Feedback','Tag Management','Ticketing Systems','Translation','Video Advertising Networks','Web Accelerators','Web Analytics','Web Conferencing','Web Content Management Systems','Web Hosting','Web Performance Monitoring','Widgets']

Connection

Examples of connection objects

{
  "data": [{
    "id": "168d9d73-3a8b-492f-b5bc-35564a5ff1fe",
    "type": "connection",
    "attributes": {
      "category": "vendor",
      "source_category": "vendor_page",
      "source_url": "https://funnel.io/customers",
      "first_seen_at": "2021-08-23T09:08:38Z",
      "last_seen_at": "2021-10-18T11:30:23Z"
    },
    "relationships": {
      "company1": {
        "data": {
          "id": "1828101",
          "type": "company"
        }
      },
      "company2": {
        "data": {
          "id": "1464778",
          "type": "company"
        }
      }
    }
  },
    {
      "id": "d76d778a-06be-470f-b7f2-937a81b4b7d5",
      "type": "connection",
      "attributes": {
        "category": "partner",
        "source_category": "partner_page",
        "source_url": "https://1wirefiber.com",
        "first_seen_at": "2021-07-15T10:50:55Z",
        "last_seen_at": "2021-10-23T15:10:12Z"
      },
      "relationships": {
        "company1": {
          "data": {
            "id": "4965363",
            "type": "company"
          }
        },
        "company2": {
          "data": {
            "id": "1464778",
            "type": "company"
          }
        }
      }
    },
    ...,
  ],
  "included": [{
    "id": "1828101",
    "type": "company",
    "attributes": {
      "domain": "funnel.io",
      "company_name": "Funnel",
      "ticker": null
    }
  },{
    "id": "1464778",
    "type": "company",
    "attributes": {
      "domain": "pipedrive.com",
      "company_name": "Pipedrive, Inc.",
      "ticker": null
    }
  },{
    "id": "4965363",
    "type": "company",
    "attributes": {
      "domain": "1wirefiber.com",
      "company_name": "1Wire Communications",
      "ticker": null
    }
  }
    ...,
  ],
  "meta": {
    "count": 83
  }
}
Attribute Description
id integer
Unique connection identifier (unique across all trigger types).
category string
Connection category. See full list below.
companies > data string
Order of companies under data is guaranteed to be such that fits the category.
source_url string
URL where connection was found.
first_seen_at datetime
Time & date (ISO 8601) of when the connection was first seen.
last_seen_at datetime
Time & date (ISO 8601) of when the connection was last seen.
relationships hash
Company information: Company IDs and connection order. IDs are referenced in the included object.
included array
Includes references to the relationships object. It enables you to connect company IDs with related company domain name.

Connection category

Can be one of the following: "partner", "vendor", "purchaser", "integration", "investor", "sponsor", "holding", "parent", "rebranding", "other"

Subpage

Examples of website evolution objects

{
  "data": [{
    "id": "c626a256-e9e6-461b-9d28-b9a1d0f67d71",
    "type": "subpage",
    "attributes": {
      "category": "login",
      "url": "https://fly.io/docs/hands-on/start",
      "first_seen_at": "2020-07-05T18:25:39.792+02:00",
      "last_seen_at": "2021-02-13T04:24:15.252+01:00"
    },
    "relationships": {}
  },
    ...
  ]
}
Attribute Description
id integer
Unique connection identifier (unique across all trigger types).
type string
Type is: “subpage”.
category string
Subpage category. See full list below.
url string
Subpage URL.
first_seen_at datetime
Time & date (ISO 8601) of when the subpage was first seen.
last_seen_at datetime
Time & date (ISO 8601) of when the subpage was last seen.
relationships hash
Since there are not relationships between companies in this dataset it will be blank.

Subpage category

Can be one of the following: 'jobs', 'blog', 'news', 'press', 'pricing', 'case_studies', 'customers', 'testimonials', 'suppliers', 'partners', 'integrations', 'portfolio', 'contact', 'investors', 'leadership', 'support', 'login', 'products', 'solutions', 'status', 'demo', 'resources', 'events', 'developers', 'API', 'terms', 'privacy', 'trust', 'feedback', 'marketplace', 'store', 'community', 'retail', 'about'

Flag

If you come across any signal that seems wrong you can simply call the flag endpoint.

Optionally you can also append a message with the signal ID. The message can include info about why you flagged the product.

Our quality assurance analysts will review the signal and correct it.

curl -X POST “https://predictleads.com/api/v1/events/:id/flag?message=‘Just … plain … wrong!!!’”

{
  "meta": "Event flagged"
}

Errors

Our API returns standard HTTP success or error status codes. For errors, we also include extra information about what went wrong encoded in the response as JSON.

Status Code Meaning
200 SUCCESS - Request was successfully processed.
400 BAD REQUEST - Request message framing was invalid. The server cannot or will not process the request.
401 UNAUTHORIZED ACCESS - Authentication failed. Check again your credentials or contact us.
404 NOT FOUND - Specified company is not in our database. Check again in 24h.
500 INTERNAL SERVER ERROR – We had a problem with our server. Try again later.