Skip to content
looot docs
Esc
↑↓navigate↵open⌘Jpreview
On this page

Aviato / Enrich a company from its website or LinkedIn

Aviato tool aviato-company-enrich on looot: input fields, $0.05 per call, output shape, and code to run it with curl, JavaScript or Python.

Looks up a company. Send one identifier: website, linkedinURL, linkedinID, crunchbaseID, twitterID or Aviato’s own id. Returns the company’s name, description, location, industries, headcount and links (website, LinkedIn, Crunchbase, Twitter and more).

Inputs

Name Type Required Description
angellistID string no
crunchbaseID string no
dealroomID string no
facebookID string no
full boolean no When true, returns all relational data including funding rounds, investments, acquisitions, founders, and funds.
goldenID string no
id string no
linkedinID string no
linkedinNumID string no
linkedinURL string no LinkedIn URL, accepts company URLs like linkedin.com/company/google or linkedin.com/company/1441
maxDataAgeDays integer no The threshold / amount of days to consider data stale and trigger an automatic rescrape (if supplied but rescrape parameter is false, expect a bad request error).
pitchbookID string no
preview boolean no When true, returns only minimal identification info (id, name, URLs) without charging a credit.
producthuntID string no
require array no List of top-level response fields that must each have a non-empty value, otherwise a 404 is returned and no credit is charged. Example: ?require=description&require=industryList. Ignored when preview=true.
rescrape boolean no Whether or not to automatically rescrape entities with stale data (specified by the maxDataAgeDays parameter).
twitterID string no
website string no Example: “example.com”
wellfoundID string no

Output

Shape of the run’s result, checked against 1 real answer:

Record<string, Record<string, { id, name, geometry: { ... }, placeType }> | { url, date, title, votes, author, source, address: { city, line1, country, postalCode, geographicArea }, country, imageID, linkUrl, tagline, isRemote, latitude, createdAt, locations: {}, longitude, percentage, productURL, description, headquarter, productName, localizedName, producthuntURL, productCategories: string[] }[]>

Run it

Every call needs your API token in LOOOT_TOKEN; Sign in shows how to get one. Each run also needs a new idempotency key, so a retry never pays twice. With wait: 30 the answer comes back inline when the run ends within 30 seconds. Otherwise you get the running run back: poll GET /v1/runs/<runId>.

Example input with placeholder values:

curl -X POST "https://api.looot.ai/v1/runs" \
  -H "Authorization: Bearer $LOOOT_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"endpointId":"aviato-company-enrich","input":{"website":"example.com"},"wait":30}'
const response = await fetch("https://api.looot.ai/v1/runs", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.LOOOT_TOKEN}`,
    "Content-Type": "application/json",
    "Idempotency-Key": crypto.randomUUID(),
  },
  body: JSON.stringify({
    endpointId: "aviato-company-enrich",
    input: {
      website: "example.com",
    },
    wait: 30,
  }),
});
const run = await response.json();
console.log(run.status, run.result);
import os
import uuid

import requests

response = requests.post(
    "https://api.looot.ai/v1/runs",
    headers={
        "Authorization": f"Bearer {os.environ['LOOOT_TOKEN']}",
        "Idempotency-Key": str(uuid.uuid4()),
    },
    json={
        "endpointId": "aviato-company-enrich",
        "input": {
            "website": "example.com",
        },
        "wait": 30,
    },
    timeout=90,
)
run = response.json()
print(run["status"], run.get("result"))

To let looot pick among every provider of this job instead, send job:company.enrich as endpointId; see the job page.

Was this page helpful?