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

# API Overview

> Overview of the ARGOS Omni API — base URL, authentication, and common patterns.

## Base URL

```
http://client-omni-api.argosidentity.com/v1
```

<Info>
  If your organization restricts outbound traffic with a firewall or proxy, add **`client-omni-api.argosidentity.com`** to your allowlist for HTTP (**port 80**). Add **port 443** if you use HTTPS.
</Info>

## Authentication

All requests require the `x-api-key` header:

```bash theme={null}
-H "x-api-key: your-api-key-here"
```

See [Authentication](/en/omni/getting-started/authentication) for details on obtaining your API key.

## API Structure

The Omni API follows the data hierarchy:

```
Project → Workflow → Profile → Folder → Item → Analysis
```

| Resource                                        | Key Endpoints                             |
| ----------------------------------------------- | ----------------------------------------- |
| [Project](/en/omni/api-reference/get-project)   | `GET /v1/projects/:projectId`             |
| [Workflow](/en/omni/api-reference/get-workflow) | `GET /v1/workflows/:workflowId`           |
| [Profile](/en/omni/api-reference/post-profile)  | `POST`, `GET`, `PATCH`, `DELETE`          |
| [Folder](/en/omni/api-reference/post-folder)    | `POST`, `GET`, `PATCH`, `DELETE`          |
| [Item](/en/omni/api-reference/post-item)        | `POST` (upload), `GET`, `PATCH`, `DELETE` |

## Common Response Format

All successful responses follow this pattern:

```json theme={null}
{
  "success": true,
  "data": { ... }
}
```

## Error Response Format

```json theme={null}
{
  "error": {
    "code": "ERROR_CODE",
    "status": 400,
    "message": "Human-readable error description"
  }
}
```

### Error Codes

| Status | Code                | Description                          |
| ------ | ------------------- | ------------------------------------ |
| 401    | `UNAUTHORIZED`      | Invalid or missing API key           |
| 404    | `NOT_FOUND`         | Resource does not exist              |
| 409    | `CONFLICT`          | Duplicate resource or limit exceeded |
| 413    | `PAYLOAD_TOO_LARGE` | File size exceeds 10MB limit         |
| 415    | `UNSUPPORTED_MEDIA` | Unsupported file type                |

### Resource-Specific Error Codes

| Code                    | Description                           |
| ----------------------- | ------------------------------------- |
| `ITEM_LIMIT_EXCEEDED`   | More than 5 items in a single folder  |
| `FILE_TOO_LARGE`        | Uploaded file exceeds 10MB            |
| `UNSUPPORTED_FILE_TYPE` | File format not in the supported list |

## Pagination

List endpoints return paginated results with a default page size of **50 items**.

```bash theme={null}
GET /v1/workflows/{workflowId}/profiles?page=1&size=50
```
