# Look up a tech stack, or companies using a technology, with Bytemine

Bytemine's technographics API works in two directions on one dataset: from a domain to its detected technology stack, or from a technology to the companies running it. A stack lookup costs $0.01, and a reverse lookup costs $0.01, billed per company returned. Send a JSON `POST` to the endpoint and pay the request's 402 price quote from a wallet; no account or API key is needed.

## At a glance

- **Stack lookup:** `POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/stack` with `{"domain": "<domain>"}`, at $0.01
- **Reverse lookup:** `POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/users` with `technology` (required) and optional `country`, `min_employees`, `max_employees`, `min_web_rank`, `max_web_rank`, `limit`, `offset`, `enrich`, `count`, at $0.01
- **Technology catalog:** `POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/catalog` with `q`, `category`, `limit`, `offset`. The catalog is listed as free and needs an agent credential.
- **Payment:** each request answers with a 402 price quote, paid from a wallet over x402 or MPP. A pay-as-you-go call can be paid by card only at $0.50 or more.
- **Responses:** a stack profile with `technologies`, `categories`, `stack_gaps`, `competing_vendors` and `stack_sophistication`, or a list of `sites` for a technology
- **Limits:** one domain or one technology per request. `limit` runs from 1 to 100 and defaults to 25.
- **Coverage:** 2,700 tracked technologies and 157M indexed sites
- **Full purchase flow:** [the buyer skill](https://agents.bytemine.ai/zcj/dunkgwu999qb/SKILL.md)

## Choose a direction

| You have | You want | Endpoint |
| --- | --- | --- |
| A company's domain | The technologies it runs | `/functions/v1/api-gateway/v1/tech/stack` |
| A technology | The companies running it | `/functions/v1/api-gateway/v1/tech/users` |
| A rough technology name | The exact name the reverse lookup expects | `/functions/v1/api-gateway/v1/tech/catalog` |

## Look up a domain's tech stack

1. Send the domain:

   ```bash
   curl -s -X POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/stack \
     -H 'Content-Type: application/json' \
     -d '{"domain": "shopify.com"}'
   ```

   The storefront answers with a 402 price quote for $0.01.

2. Pay the quote with an x402 or MPP client and retry the same request with the proof attached. The example request for `shopify.com` paid $0.01.

3. Read the profile. The response holds these fields:

   | Field | Contents |
   | --- | --- |
   | `found`, `domain`, `company.name` | Whether the domain was profiled, and its company name |
   | `web_rank`, `web_authority` | Numbers for the site |
   | `detection` | `live_source`, `live_status`, `live_detected`, `index_detected`, `bytes_analyzed`, `page_title` |
   | `technology_count`, `categories_detected` | Counts |
   | `technologies` | One object per technology, with `technology`, `slug`, `category`, `vendor`, `confidence`, `confidence_level`, `fingerprints_seen`, `source` and `evidence` |
   | `categories` | Each category name mapped to a list of technology names |
   | `stack_sophistication` | The stack sophistication score |
   | `stack_gaps` | Adoption gaps, as strings |
   | `competing_vendors` | Objects with `category` and a list of `vendors` |

Each `technologies[].technology` and `slug` is written in the form the reverse lookup accepts.

## Find every company using a technology

1. Get the technology's exact name. Search the catalog with an agent credential:

   ```bash
   curl -s -X POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/catalog \
     -H 'Content-Type: application/json' \
     -H "Authorization: Bearer $ACCESS_TOKEN" \
     -d '{"q": "hubspot", "limit": 5}'
   ```

   The response has a `total` and a `technologies` list. Each entry carries `technology`, `slug`, `category`, `description` and `domains_using`. A request without a credential answers `401 bearer_required`. [The identity recipe](https://agents.bytemine.ai/zcj/dunkgwu999qb/auth.md) issues the credential through anonymous registration, which needs no email. You can also take the name from a stack lookup's `technologies` list.

2. Optionally, size the list first. Add `"count": true` to the reverse lookup body to get a free count only.

3. Send the reverse lookup with the exact name or slug and your filters:

   ```bash
   curl -s -X POST https://agents.bytemine.ai/zcj/dunkgwu999qb/functions/v1/api-gateway/v1/tech/users \
     -H 'Content-Type: application/json' \
     -d '{"technology": "<exact technology name or slug>", "limit": 3}'
   ```

   The 402 can be a ceiling: it quotes the most the call can cost, and Bytemine bills per company returned. Pay it and retry.

4. Read the result. The response has `found`, `technology`, `slug`, `category`, `vendor_url`, `description`, `total`, `offset`, `returned` and `sites`. `total` counts every tracked site running the technology, and `returned` says how many records this call sent back. Each site carries `domain`, `company_name`, `country`, `industry`, `employee_count` and `web_rank`. Set `"enrich": true` to attach firmographics to each company. To page through results, raise `offset`.

## Budget a lookup

| Request | Cost |
| --- | --- |
| One stack lookup | $0.01 |
| Stack lookups for 50 domains (50 requests) | $0.50 |
| Reverse lookup with `limit` 3 | Up to $0.03 |
| Reverse lookup at the default `limit` of 25 | Up to $0.25 |
| Reverse lookup with `limit` 100 | Up to $1 |
| Reverse lookup with `count: true` | Free |

A single call under $0.50 cannot be paid by card on its own. To pay by card, prepay Credits instead: they start at $0.50 and need an agent credential. Calls then draw down the balance. [The buyer skill](https://agents.bytemine.ai/zcj/dunkgwu999qb/SKILL.md) has the purchase steps, and [How to pay](https://agents.bytemine.ai/zcj/dunkgwu999qb/payment.md) covers each rail.

## Limits

- The stack lookup takes one `domain` per request and no other field. There is no batch call.
- The reverse lookup takes one `technology` per request, as its exact tracked name or slug.

## Errors

| Response | Meaning | Action |
| --- | --- | --- |
| `402` with a `payment` block | The price quote | Pay it and retry the same request, or stop |
| `401 bearer_required` | The call needs an agent credential, such as a catalog search or a Credits purchase | Register at [auth.md](https://agents.bytemine.ai/zcj/dunkgwu999qb/auth.md) and send `Authorization: Bearer <token>` |
| `404` "Unknown technology" | The name is not a tracked technology | Find the exact name in the catalog or in a stack lookup |
| `settlement_failed` | The payment did not settle | Fix the wallet, then send a fresh request for a new quote |
| `usage_exhausted` | The Credits balance ran out | Top up with `POST https://agents.bytemine.ai/zcj/dunkgwu999qb/extend` |

## Frequently asked questions

### Can one request return the tech stack for several domains?

No. The stack endpoint takes a single `domain` field. Profiling a list of domains takes one request per domain, each billed at $0.01.

### How do I find the exact technology name for the reverse lookup?

Search the technology catalog with `q`, or take the `technology` or `slug` value from a stack lookup's `technologies` list. A name that is not tracked answers `404` "Unknown technology".

### Is the technology catalog free?

The catalog is listed as free, and it needs an agent credential sent as `Authorization: Bearer <token>`. Anonymous registration issues one with no email and no human step.

### Can I see how many companies use a technology before paying?

Yes. Send the reverse lookup with `"count": true` to get a count only, which is free. Then send the same filters without `count` to get the records, billed per company returned.

### Can I pay for a technographics lookup by card?

Not for a single call under $0.50. Buy Credits by card from $0.50 and let each call draw down the balance, or pay per call over x402 or MPP.

## Keep reading

- [Buyer skill](https://agents.bytemine.ai/zcj/dunkgwu999qb/SKILL.md): the full purchase flow
- [How to pay](https://agents.bytemine.ai/zcj/dunkgwu999qb/payment.md): x402, MPP, card and Credits
- [Identity](https://agents.bytemine.ai/zcj/dunkgwu999qb/auth.md): register an agent credential
- [Technographics API reference](https://agents.bytemine.ai/zcj/dunkgwu999qb/services/technographics/openapi.json): every field of the three requests
- [Error reference](https://agents.bytemine.ai/zcj/dunkgwu999qb/errors.md): every error code

---

Updated 2026-10-16. All Bytemine guides: https://agents.bytemine.ai/guides.md. Storefront: https://agents.bytemine.ai/zcj/dunkgwu999qb/llms.txt.
