Pulse IntelligenceAPI Docs

Quickstart

Make your first request to the Pulse public API

This guide walks through your first request to the Pulse public API: screening companies by market cap.

Prerequisites

You'll need an organization API key. If you don't have one, ask an admin on your Pulse organization to create one from Settings → API Keys — see Authentication for the full flow. Every request below assumes you have a valid key in the pulse_... placeholder.

Search companies

POST /v1/companies/search/ screens companies against a set of filters and returns matching rows. A search request takes filters, logic, and columns — see Filters for the full shape of each.

For a first request, let's screen for companies with a market cap of at least $100M, using a single gte (greater-than-or-equal) filter on market_cap_in_usd:

{
  "filters": [
    { "field": "market_cap_in_usd", "operator": "gte", "value": 100000000 }
  ]
}

The trailing slash on /v1/companies/search/ is required — a request to /v1/companies/search (no slash) doesn't redirect, it 404s. Every example below uses the slash form; keep it when you adapt these.

curl

curl https://api.pulseintelligence.com/v1/companies/search/ \
  -H "Authorization: Bearer pulse_a1b2c3d4_<secret>" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": [
      { "field": "market_cap_in_usd", "operator": "gte", "value": 100000000 }
    ]
  }'

Python

import requests

response = requests.post(
    "https://api.pulseintelligence.com/v1/companies/search/",
    headers={"Authorization": "Bearer pulse_a1b2c3d4_<secret>"},
    json={
        "filters": [
            {"field": "market_cap_in_usd", "operator": "gte", "value": 100000000},
        ],
    },
)
response.raise_for_status()
data = response.json()

Read the response

The response is a flat object — not the paginated shape you may be used to from other APIs:

{
  "results": [
    {
      "id": 1,
      "name": "Example Mining Corp",
      "symbol": "EXM",
      "market_cap_in_usd": 245000000
    }
  ],
  "count": 1,
  "truncated": false
}
  • results — the matching rows, shaped by whatever columns you requested (or the default set if you didn't request any). name, symbol, and market_cap_in_usd above are typical company fields.
  • count — how many rows matched.
  • truncatedtrue if there were more matches than the page returned in results. Search endpoints cap how many rows come back in one call, so a true here means you'd need to narrow your filters to see the rest rather than paginate through them.

Go deeper

  • Filters covers the full filter vocabulary, available operators, combining filters with logic and expression, and discovering filterable fields via GET /v1/filters/{resource}/.
  • Rate limits and errors covers quota headers, 429 responses, and the error envelope shape.
  • The API Reference has the full request/response schema for this endpoint, plus every other endpoint on the API.

On this page