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

# Astro v1 Labs API overview

The Astro v1 Labs API is a REST API for experimental, preview-stage features. It uses the same authentication as the generally available Astro API but runs at a separate base URL and follows its own release lifecycle.

<Warning>
  Labs endpoints can change frequently, sometimes in breaking ways, so they aren't a good fit for production integrations. To learn what the Labs stage means for stability, support, and SLAs, see [Astronomer feature lifecycle](/docs/astro/feature-previews).
</Warning>

## Base URL

The base URL for the v1 Labs API is:

```text wrap theme={null}
https://api.astronomer.io/labs/v1/
```

## Authentication

All requests to the Labs API must be authenticated. Use [bearer authentication](https://swagger.io/docs/specification/authentication/bearer-authentication/) with a [Workspace API token](/docs/astro/workspace-api-tokens), [Organization API token](/docs/astro/organization-api-tokens), or [Deployment API token](/docs/astro/deployment-api-tokens). Add the token to the `Authorization` header of each request:

```bash wrap theme={null}
curl --location 'https://api.astronomer.io/labs/v1/examples/demo' \
--header 'Authorization: Bearer <your-api-token>'
```

A token can access a Labs endpoint only if its role grants the permission that the endpoint requires.

## Version pinning

The v1 Labs API uses `major.minor` versioning. The major version is part of the base URL (`/labs/v1/`), and you can pin a specific minor version with the `X-Labs-API-Version` header:

```bash wrap theme={null}
curl --location 'https://api.astronomer.io/labs/v1/examples/demo' \
--header 'Authorization: Bearer <your-api-token>' \
--header 'X-Labs-API-Version: 1.0'
```

If you omit the `X-Labs-API-Version` header, your requests use the latest minor version. Pinning a minor version keeps a stable request and response shape even after Astronomer ships a newer minor version that changes a field.

The `Example` endpoint exists only to demonstrate this behavior. The latest minor version returns the field `proofOfConcept`, and version `1.0` returns the same value as `name`. A client pinned to `1.0` keeps receiving `name` after the field is renamed in a later version.

## Errors

Error responses use a consistent shape with a `message`, a `statusCode`, and a `requestId`. Share the `requestId` with [Astronomer support](https://support.astronomer.io) when you report a problem. Requests that exceed an endpoint's rate limit return `429 Too Many Requests`.

## Download OpenAPI specification

To use the Labs API specification in another tool, such as Postman or Swagger, download the YAML from the following page:

[Astro API v1labs](https://api.astronomer.io/spec/labs/v1)
