> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apiosk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sources

> Browse the directory and inspect currently executable operations.

Browsing is free. The directory covers verified listings; it does not imply
that every upstream endpoint has an accepted execution contract.

## List sources

```http theme={null}
GET /v2/sources
```

Requires <code>sources:read</code>.

| Query                   | Type                           | Meaning                                                                      |
| ----------------------- | ------------------------------ | ---------------------------------------------------------------------------- |
| <code>search</code>     | String, at most 200 characters | Name, description, category, tags, sectors and capabilities                  |
| <code>category</code>   | String                         | Exact returned category                                                      |
| <code>tag</code>        | String                         | Exact returned tag                                                           |
| <code>sector</code>     | String                         | Exact returned sector                                                        |
| <code>capability</code> | String                         | Sources advertising that capability; check execution availability separately |
| <code>offset</code>     | Integer                        | Page start; continue with <code>next\_offset</code>                          |
| <code>limit</code>      | Integer 1–50                   | Page size, default 20                                                        |

```bash theme={null}
curl -G https://gateway.apiosk.com/v2/sources \
  -H "Authorization: Bearer $APIOSK_KEY" \
  --data-urlencode "search=company registry"
```

The response has <code>sources</code>, <code>total</code> for this
filter, <code>catalog\_total</code> for the entire directory and
<code>next\_offset</code> for pagination. Counts are live and can change.
Each provider group is counted once. Pulse Network can contain many nested
services; <code>service\_count</code> is the full number and
<code>services</code> contains the matching services in this query.

For each row:

* <code>endpoint\_count</code> counts registered endpoints, including
  endpoints that cannot currently run.
* <code>capabilities</code> can include advertised capabilities.
* <code>executable\_capabilities</code> lists capabilities accepted by the
  current runtime.
* <code>available\_in\_v2</code> is true when at least one operation in the
  source group can run.
* <code>readiness</code> describes contract and evidence coverage. An
  unmeasured endpoint is not proof of reliable execution.

## Read one executable source

```http theme={null}
GET /v2/sources/{source_id}
```

Requires <code>sources:read</code>. Use a source's returned slug, for
example:

```bash theme={null}
curl https://gateway.apiosk.com/v2/sources/kvk-dutch-business-register \
  -H "Authorization: Bearer $APIOSK_KEY"
```

The response lists only currently executable <code>operations</code>.
Each operation includes its <code>id</code>, <code>source\_id</code>,
input fields and schemas, outputs, current buyer price and optional
variants. For a provider group, each operation names the member service
that actually runs it. Use that operation and its inputs in
[Call a source](/api/execute).

A directory entry with no accepted operation can return
<code>404 source\_not\_found</code> on this detail route. It remains
discoverable so you can see its published metadata; it cannot be bought
through the buyer API until a contract is accepted.

## Browse endpoints inside a source

The compact endpoint index is useful when a provider publishes many services:

```http theme={null}
GET /v2/sources/{source_id}/endpoints?search=filings&limit=40&offset=0
```

Requires <code>sources:read</code>. The response contains
<code>total</code>, <code>items</code> and
<code>next\_offset</code>. Each item names the service
<code>slug</code> and <code>listing</code>, then a compact endpoint
with its id, method, path, description, category, tags and use cases.
<code>endpoint.planner\_available</code> tells you whether that exact
endpoint has a runtime-accepted planner contract. A listed endpoint
without that flag cannot be quoted or executed through the buyer API.
Search and paginate rather than downloading every endpoint at once.

For Pulse Network, use <code>pulsenetwork</code> as the source id to
browse endpoints across its nested services.

## Check readiness without a key

<code>GET /v1/source-readiness</code> returns aggregate, public contract
coverage and recorded execution outcomes. It is a diagnostic snapshot,
not a live test of every endpoint or a guarantee about source data.
