---
name: company-readiness
description: Read the demand side of the API market — what technologies a company is investing in, where it is thin, and which catalog providers are already in its stack. Use for account research, sales targeting, or to find where demand outruns supply.
license: CC-BY-NC-SA-4.0
---

# company-readiness

Most of apis.io describes **supply** — what providers publish. The insights surface
describes **demand** — what companies are actually hiring and building for, extracted from
their own job postings and publications.

## When to use this skill

Use for "what is JP Morgan investing in", "who should we sell our API to", "where is demand
outrunning coverage", "what does this account already use". For the supply-side view of the
same market use `explore-cohort`.

## Access

Every insights route needs the **Understanding** plan. Send `x-api-key: <key>`. Without one
the API answers `401` with `"tier": "pro"`, a `resolution` (how a person signs up) and an
`accepts` block for paying a single call with x402. A self-registered OAuth client gets read
access only and does not unlock it. See https://apis.io/developer/plans/.

The current read is **Q3 2026**, the first quarter in the series. There is no movement to
report until Q4 lands in November.

## Find the company

```bash
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/insights/companies?q=morgan&limit=5" \
  | jq '{n: .meta.total, sample: [.data[] | {slug, name, industry, readiness_total}]}'
```

Slugs are hyphenated: `jp-morgan-chase`, `goldman-sachs-group`. Filter with `q` or
`industry`. Slugs can change between quarters, so look a company up rather than reusing a
slug from an old note.

## The profile

```
GET https://apis.io/api/v1/insights/company/{slug}
```

```json
{ "slug": "jp-morgan-chase", "name": "JP Morgan Chase",
  "industry": "Financial Services", "sub_sector": "Banking",
  "source": "jobs+blogs", "confidence": "high",
  "current": { "total": 2656,
               "dimensions": [ { "key": "data", "score": 282 },
                               { "key": "cloud", "score": 174 },
                               { "key": "operations", "score": 164 } ] },
  "quarters": { "q3-2026": { "total": 2656, "dims": { "...": 0 },
                             "top_services": ["Microsoft Excel", "Amazon Web Services", "Databricks", "..."],
                             "top_tools": ["Python", "React", "Apache Kafka", "..."],
                             "top_standards": ["Agile", "SQL", "..."] } } }
```

Read `source` and `confidence` before quoting any of it. `jobs+blogs` with `high` confidence
is a real signal; a thin source with low confidence is not something to build a pitch on.

`current.total` (`readiness_total` in lists) is a **volume** measure — the aggregate signal
across dimensions. A big company generates more signal than a small one, so compare
dimensions *within* a company, or compare companies of similar size. It is not a quality
score and is not the Kin Score.

## The dimension space

```bash
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/insights/dimensions?limit=50" \
  | jq '[.data[] | {dimension, total_signal, companies_with_signal}]'
```

41 dimensions in the current quarter, each with total market signal — the map of where the
whole market is investing. Pair it with a company's dimensions to see where that company is
ahead of or behind its market.

## Adoption and industries

```bash
# What products companies name, with a Thoughtworks-style radar ring
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/insights/adoption?type=service&limit=10" \
  | jq '[.data[] | {name, companyCount, companyCountJobs, radarRing}]'

# Demand by vertical — size a cohort on profiled_count, not company_count
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/insights/industries" \
  | jq '[.data[] | {name, company_count, profiled_count}]'
```

`companyCount` counts every source (job postings and provider blogs). `companyCountJobs` is
job postings only — use it when the claim is about hiring.

## Gaps and the join

| Call | Adds |
|---|---|
| `GET /insights/company/{slug}/gaps` | The dimensions where the company is weakest — the openings. |
| `GET /insights/company/{slug}/match` | Catalog providers whose product is already in its stack. |

`/match` is the supply↔demand join — the answer to "who is already inside this account".

MCP equivalents (`https://apis.io/mcp`, same plan): `insights_overview`,
`find_company_insights`, `get_company_insight`, `insights_dimensions`, `insights_adoption`,
`insights_industries`, `company_gaps`, `match_providers`. Or run the `company_readiness` /
`demand_vs_supply` prompts.

## Demand vs supply

The most useful thing here is the join against the supply side:

```bash
# 1. Where is the market investing?
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/insights/dimensions" \
  | jq -r '.data[:10][] | "\(.dimension)\t\(.total_signal)"'

# 2. How well is that covered by the catalog?
curl -s -H "x-api-key: $APISIO_KEY" "https://apis.io/api/v1/cohorts?kind=industry&limit=100" \
  | jq -r '.data[] | "\(.slug)\t\(.provider_count)"'
```

High demand signal against thin provider coverage is a gap worth naming — for a product
decision, a story, or a market entry.

## Honesty rules

This data is **inferred from public job postings and publications**, not declared by the
companies. Say so.

- Quote `source`, `confidence`, and the quarter whenever you cite a number.
- A job posting is hiring intent, not production use. Never present it as a stated intent,
  a budget, or a commitment.
- `readiness_total` compares dimensions within a company, not companies against each other
  unless they're comparable in size.
- Q3 2026 is a single point. Do not describe anything as rising, falling or trending.

## Output format

1. **The company** — industry, sub-sector, source, confidence.
2. **Where it's investing** — top dimensions with scores, read against the market's
   `insights/dimensions`.
3. **Where it's thin** — the `/gaps` list.
4. **Already inside** — providers in its stack, from `/match`.
5. **The opening** — one line on where a provider could sell in or partner, grounded in a
   named dimension.

## Related skills

- `explore-cohort` — the supply side of the same market.
- `score-my-api` — how a provider selling into these accounts rates.
- `resolve-provider` — insights slugs are company slugs, not provider slugs; resolve
  separately when crossing between the two.
