Api Endpoint

Pubrio

Returns one company's expansion profile by domain, LinkedIn URL or Pubrio id: stage per market, signals, market presence, stage history and expansion score, for one market or all markets, with an optional AI summary against your query. Each call is 5 credits.

Open interactive test console

Offering

Provider
agents.pubrio.com
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Business And Commerce
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://agents.pubrio.com/expansions/companies/lookup
MIME type
Not provided
First seen
2026-10-16T01:52:52.778Z
Last seen
Tags
market expansion, sales intelligence, company data, people data, lead enrichment

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.05 USDC
Atomic price: 50000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "50000",
    "payTo": "0xa330fbe0cdcf75e09b2f1c94c108be5aba31e322"
  }
]

Observed health

Status
Reachable
Latest latency
131 ms
Average latency
328 ms
HTTP status
400
Last checked
Reachability
100% over 6 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "anyOf": [
        {
          "required": [
            "domain_search_id"
          ]
        },
        {
          "required": [
            "domain"
          ]
        },
        {
          "required": [
            "linkedin_url"
          ]
        }
      ],
      "example": {
        "domain": "stripe.com",
        "is_all_markets": true,
        "summary_only": true
      },
      "properties": {
        "country_code": {
          "description": "Target market as an ISO 3166-1 alpha-2 (cca2) country code. Omit to auto-pick the company's single most active market; set is_all_markets for a cross-market view of every market.",
          "example": "US",
          "type": "string"
        },
        "domain": {
          "description": "A company domain used for company search operations. If we receive a URL such as www.pubrio.com or https://docs.pubrio.com/, the system will convert it to pubrio.com for processing.",
          "example": "pubrio.com",
          "type": "string"
        },
        "domain_search_id": {
          "description": "A unique identifier for the company search operation.",
          "format": "uuid",
          "type": "string"
        },
        "is_all_markets": {
          "description": "Return the company's entire expansion footprint across ALL markets in one call, rather than a single market. When true, country_code is ignored, the home market is excluded from the signal aggregates when it can be identified, data becomes a company-level rollup (dominant stage, total signals, date span, top expansion score), and markets_summary lists every market. Defaults to false.",
          "example": false,
          "type": "boolean"
        },
        "is_explain_match": {
          "description": "When true and a query is supplied, summary returns a single AI summary of this company's expansion activity in the current scope (the selected market, or all foreign markets when is_all_markets is true), read against your query and grounded in the company's real signals with [n] citations.",
          "example": true,
          "type": "boolean"
        },
        "is_include_established": {
          "description": "Include the established stage (long-standing operators with no active expansion signals). Defaults to false.",
          "example": false,
          "type": "boolean"
        },
        "is_include_metadata": {
          "description": "Return the full detail payload. API-key traffic is lean by default: the model block, the confidence figures (stage.confidence on Company Expansion Detail, confidence_score on other_markets[] and on Rankings markers[]) and the established_min / share_of_detected / has_known_office fields are all omitted unless this is true.",
          "example": true,
          "type": "boolean"
        },
        "linkedin_url": {
          "description": "The fully formed URL of the LinkedIn company profile. URL begin with http and contain linkedin.com/company/",
          "example": "https://www.linkedin.com/company/pubrio",
          "type": "string"
        },
        "markets_summary_full": {
          "description": "Include the full ranked market set as markets_summary alongside the capped other_markets list.",
          "example": true,
          "type": "boolean"
        },
        "page": {
          "default": 1,
          "description": "Page number, starting at 1.",
          "example": 1,
          "type": "integer"
        },
        "per_page": {
          "default": 25,
          "description": "Records per page, 1 to 25. Defaults to 25.",
          "example": 25,
          "maximum": 25,
          "type": "integer"
        },
        "query": {
          "description": "Plain-language description of what you sell, or the buyer profile you're evaluating this company against. Used only to ground the AI summary (see is_explain_match); unlike the company search, it is NOT interpreted into filters here.",
          "example": "We sell Employer-of-Record and local payroll; best-fit buyers hire in a new market before setting up a legal entity.",
          "type": "string"
        },
        "signal_type": {
          "description": "Filter the returned signals to a single type.",
          "enum": [
            "AD",
            "AUDIENCE",
            "DNS",
            "ENTITY",
            "EVENT",
            "EVENT_PLUS",
            "EXEC",
            "HIRE",
            "INFRA",
            "IP",
            "NEWS",
            "OFFICE",
            "PARTNER",
            "PRODUCT",
            "REG",
            "SCALE",
            "TECH"
          ],
          "example": "EXEC",
          "type": "string"
        },
        "summary_only": {
          "description": "Return the stage summary block (data, company, markets_summary, signal_weekly_totals, recent_signals, expansion_score, summary) and skip the paginated signal list and its aggregates.",
          "example": true,
          "type": "boolean"
        },
        "transitioned_dates": {
          "description": "ISO [from, to] date range for the signal/transition window. Takes precedence over window_days when both are supplied.",
          "example": [
            "2026-04-01",
            "2026-06-29"
          ],
          "items": {
            "format": "date",
            "type": "string"
          },
          "type": "array"
        },
        "window_days": {
          "default": 90,
          "description": "Optional. Rolling window (in days) that bounds the AI summary feed. Defaults to 90 when neither this nor transitioned_dates is supplied. Does not affect the paginated signals list (full history).",
          "example": 90,
          "type": "integer"
        }
      },
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST",
        "PUT",
        "PATCH"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "anyOf": [
            {
              "required": [
                "domain_search_id"
              ]
            },
            {
              "required": [
                "domain"
              ]
            },
            {
              "required": [
                "linkedin_url"
              ]
            }
          ],
          "example": {
            "domain": "stripe.com",
            "is_all_markets": true,
            "summary_only": true
          },
          "properties": {
            "country_code": {
              "description": "Target market as an ISO 3166-1 alpha-2 (cca2) country code. Omit to auto-pick the company's single most active market; set is_all_markets for a cross-market view of every market.",
              "example": "US",
              "type": "string"
            },
            "domain": {
              "description": "A company domain used for company search operations. If we receive a URL such as www.pubrio.com or https://docs.pubrio.com/, the system will convert it to pubrio.com for processing.",
              "example": "pubrio.com",
              "type": "string"
            },
            "domain_search_id": {
              "description": "A unique identifier for the company search operation.",
              "format": "uuid",
              "type": "string"
            },
            "is_all_markets": {
              "description": "Return the company's entire expansion footprint across ALL markets in one call, rather than a single market. When true, country_code is ignored, the home market is excluded from the signal aggregates when it can be identified, data becomes a company-level rollup (dominant stage, total signals, date span, top expansion score), and markets_summary lists every market. Defaults to false.",
              "example": false,
              "type": "boolean"
            },
            "is_explain_match": {
              "description": "When true and a query is supplied, summary returns a single AI summary of this company's expansion activity in the current scope (the selected market, or all foreign markets when is_all_markets is true), read against your query and grounded in the company's real signals with [n] citations.",
              "example": true,
              "type": "boolean"
            },
            "is_include_established": {
              "description": "Include the established stage (long-standing operators with no active expansion signals). Defaults to false.",
              "example": false,
              "type": "boolean"
            },
            "is_include_metadata": {
              "description": "Return the full detail payload. API-key traffic is lean by default: the model block, the confidence figures (stage.confidence on Company Expansion Detail, confidence_score on other_markets[] and on Rankings markers[]) and the established_min / share_of_detected / has_known_office fields are all omitted unless this is true.",
              "example": true,
              "type": "boolean"
            },
            "linkedin_url": {
              "description": "The fully formed URL of the LinkedIn company profile. URL begin with http and contain linkedin.com/company/",
              "example": "https://www.linkedin.com/company/pubrio",
              "type": "string"
            },
            "markets_summary_full": {
              "description": "Include the full ranked market set as markets_summary alongside the capped other_markets list.",
              "example": true,
              "type": "boolean"
            },
            "page": {
              "default": 1,
              "description": "Page number, starting at 1.",
              "example": 1,
              "type": "integer"
            },
            "per_page": {
              "default": 25,
              "description": "Records per page, 1 to 25. Defaults to 25.",
              "example": 25,
              "maximum": 25,
              "type": "integer"
            },
            "query": {
              "description": "Plain-language description of what you sell, or the buyer profile you're evaluating this company against. Used only to ground the AI summary (see is_explain_match); unlike the company search, it is NOT interpreted into filters here.",
              "example": "We sell Employer-of-Record and local payroll; best-fit buyers hire in a new market before setting up a legal entity.",
              "type": "string"
            },
            "signal_type": {
              "description": "Filter the returned signals to a single type.",
              "enum": [
                "AD",
                "AUDIENCE",
                "DNS",
                "ENTITY",
                "EVENT",
                "EVENT_PLUS",
                "EXEC",
                "HIRE",
                "INFRA",
                "IP",
                "NEWS",
                "OFFICE",
                "PARTNER",
                "PRODUCT",
                "REG",
                "SCALE",
                "TECH"
              ],
              "example": "EXEC",
              "type": "string"
            },
            "summary_only": {
              "description": "Return the stage summary block (data, company, markets_summary, signal_weekly_totals, recent_signals, expansion_score, summary) and skip the paginated signal list and its aggregates.",
              "example": true,
              "type": "boolean"
            },
            "transitioned_dates": {
              "description": "ISO [from, to] date range for the signal/transition window. Takes precedence over window_days when both are supplied.",
              "example": [
                "2026-04-01",
                "2026-06-29"
              ],
              "items": {
                "format": "date",
                "type": "string"
              },
              "type": "array"
            },
            "window_days": {
              "default": 90,
              "description": "Optional. Rolling window (in days) that bounds the AI summary feed. Defaults to 90 when neither this nor transitioned_dates is supplied. Does not affect the paginated signals list (full history).",
              "example": 90,
              "type": "integer"
            }
          },
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST",
            "PUT",
            "PATCH"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}