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

# OpenAPI Specifications

> Access machine-readable OpenAPI 3.0 specifications for the Everflow API to power AI tools and automation frameworks.

Every Everflow API endpoint is defined in **OpenAPI 3.0.3** YAML specification files. These specs are the source of truth for this documentation and can be loaded directly into AI assistants, code generators, and automation frameworks. For a full map of this entire documentation site optimized for AI context, use the [llms.txt](/llms.txt) file.

## What's included in the specs

Each specification file contains:

* **Endpoint paths** with HTTP methods
* **Request body schemas** with property types, descriptions, and required fields
* **Response schemas** with full object structures
* **Example payloads** for request bodies
* **Path and query parameters** with types and descriptions

## Using specs with AI assistants

### Claude Projects

1. Create a new [Claude Project](https://claude.ai)
2. Upload the relevant OpenAPI YAML files to the project knowledge
3. Ask Claude to generate API calls, write integration scripts, or explain endpoint behavior

### Custom GPTs

1. Go to [ChatGPT](https://chatgpt.com) and create a new GPT
2. Upload the spec files under **Knowledge**
3. Instruct the GPT to use the Everflow API specs to answer questions and generate code

### Cursor / VS Code

The spec files are already integrated into these docs. Use the **Open in Cursor** or **Open in VS Code** buttons on any endpoint page to load the spec directly into your editor with AI context.

## Using specs with agent frameworks

### LangChain

```python theme={null}
from langchain_community.agent_toolkits.openapi import planner
from langchain_community.utilities.requests import TextRequestsWrapper

# Load the OpenAPI spec
import yaml
with open("reporting-aggregated.yaml") as f:
    spec = yaml.safe_load(f)

# Create tools from the spec and use them in your agent chain
```

### Generic HTTP agent

Any framework that supports OpenAPI tool definitions can use the specs directly. The key fields an agent needs:

| Field           | Location in spec                               | Example                                         |
| --------------- | ---------------------------------------------- | ----------------------------------------------- |
| Base URL        | `servers[0].url`                               | `https://api.eflow.team/v1`                     |
| Authentication  | `security`                                     | `X-Eflow-API-Key` header                        |
| Endpoints       | `paths`                                        | `/networks/reporting/entity/table`              |
| Request format  | `requestBody.content.application/json.schema`  | JSON schema with types                          |
| Required fields | `schema.required`                              | `[from, to, timezone_id, currency_id, columns]` |
| Examples        | `requestBody.content.application/json.example` | Pre-filled JSON payloads                        |

## Spec file organization

All specification files live in the `openapi/` directory. They follow a consistent naming convention:

* **Network API** — files are named by resource (e.g. `offers.yaml`, `affiliates.yaml`, `webhooks.yaml`). Reporting is split by topic (e.g. `reporting-conversions.yaml`, `reporting-clicks.yaml`, `reporting-aggregated.yaml`). Some resources have a companion `-extras.yaml` file for additional endpoints.
* **Affiliate API** — files are prefixed with `affiliate-` (e.g. `affiliate-offers.yaml`, `affiliate-reporting.yaml`, `affiliate-postbacks.yaml`).
* **Advertiser API** — files are prefixed with `advertiser-` (e.g. `advertiser-offers.yaml`, `advertiser-reporting.yaml`).
* **Marketplace API** — files are prefixed with `marketplace-` (e.g. `marketplace-offers.yaml`, `marketplace-connections.yaml`, `marketplace-earnings.yaml`).
