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

# Getting started

> Learn how to authenticate and make your first Seekr API request.

The SeekrFlow API provides programmatic access to train, validate, deploy, and manage AI models. You can use the API to build applications across financial services, customer support, risk management, and compliance workflows.

This guide shows you how to authenticate and make your first API request. To use the Python SDK instead, see the [Developer Guide](/flow/sdk/getting-started).

## Prerequisites

Before you begin, you need a SeekrFlow account. If you don't have one, [sign up for SeekrFlow](https://apps.seekr.com/flow).

## Get your API key

<Steps>
  <Step>
    Sign in to the [SeekrFlow dashboard](https://apps.seekr.com/flow).
  </Step>

  <Step>From the user menu, go to **My Account**.</Step>
  <Step>From the **My Account** page, go to **API Key**.</Step>
  <Step>Generate and copy a new key.</Step>
</Steps>

<Danger>
  Keep your API key secure. Don't share it in publicly accessible areas such as GitHub, client-side code, or support channels.
</Danger>

## Base URL

All API requests use this base URL:

```
https://flow.seekr.com/v1
```

## Authentication

All API requests require authentication. Include your API key in the `Authorization` header:

```
Authorization: YOUR_API_KEY
```

## Selecting a team

Resources belong to a team. To scope a request to a specific team, include the `x-team-id` header with the team's ID:

```
x-team-id: YOUR_TEAM_ID
```

If you omit the header, the request uses your personal workspace. You can find your team IDs on the [Teams Settings page](/flow/app/manage-permissions#find-a-team-id) in the SeekrFlow web interface. For the underlying access model, see [Role-based access control](/flow/role-based-access-control).

## Request and response format

For `POST` and `PUT` requests, send data as JSON and include the `Content-Type` header:

```bash cURL theme={null}
curl --location 'https://flow.seekr.com/v1/flow/agents/create' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: YOUR_API_KEY' \
--data '{
  "name": "EXAMPLE",
  "instructions": "EXAMPLE",
  "tools": [
    {
      "name": "web_search",
      "tool_env": {
        "WEB_SEARCH_TOOL_DESCRIPTION": "TESTING"
      }
    }
  ],
  "model_id": "43"
}'
```

All responses use JSON format. Each endpoint's response schema is documented in the [SeekrFlow API](/flow/reference/delete_v1_flow_agents__agent_id__delete).

## Versioning

The API version is included in the URL path (`v1`). When breaking changes are introduced:

1. A new API version is released.
2. The current version continues to function.
3. You receive notification with migration timelines before deprecation.

This approach ensures your application continues to work while you migrate to a new version.
