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

# Get started with the API

The Stigg API lets you call Stigg from any language or platform over HTTPS. Use it when there's no SDK for your stack, for scripts and back-office jobs, or when you prefer to manage HTTP calls yourself. The examples below use the REST API; a GraphQL API is also available.

## What you need

* A Stigg account. Don't have one yet? [Create one free](https://app.stigg.io/signup).
* A way to make HTTPS requests, such as `curl`.

## Set up

<Steps>
  <Step title="Get your API key">
    In the [Stigg app](https://app.stigg.io), go to **Integrations > API keys** and copy the **Full access key** of the environment you want to use. Keep it on your server and never expose it in client-side code.
  </Step>

  <Step title="Provision a customer">
    ```bash theme={null}
    curl -X POST "https://api.stigg.io/api/v1/customers" \
      -H "X-API-KEY: $STIGG_SERVER_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "id": "customer-demo-01", "name": "Acme Corp" }'
    ```
  </Step>

  <Step title="Check an entitlement">
    ```bash theme={null}
    curl "https://api.stigg.io/api/v1/customers/customer-demo-01/entitlements/check?featureId=feature-api-calls&requestedUsage=1" \
      -H "X-API-KEY: $STIGG_SERVER_API_KEY"
    ```
  </Step>

  <Step title="Report usage">
    ```bash theme={null}
    curl -X POST "https://api.stigg.io/api/v1/usage" \
      -H "X-API-KEY: $STIGG_SERVER_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "usages": [{ "customerId": "customer-demo-01", "featureId": "feature-api-calls", "value": 1 }] }'
    ```
  </Step>
</Steps>

These three calls follow the [check, act, track](/documentation/introduction/the-problem#common-patterns-for-solving-it-check--act--track) pattern that every Stigg integration is built on.

<Tip>
  For entitlement checks in latency-sensitive paths, prefer a [backend SDK](/documentation/getting-started/get-started-with-sdks) or the [Sidecar](/documentation/high-availability-and-scale/sidecar/overview). They answer checks from a local cache instead of making a network call per request.
</Tip>

## Learn more

<CardGroup cols={2}>
  <Card title="REST API" icon="server" href="/api-and-sdks/api-reference/rest/introduction">
    Base URL, authentication, pagination, errors, and the full endpoint reference.
  </Card>

  <Card title="GraphQL API" icon="diagram-project" href="/api-and-sdks/api-reference/graphql/introduction">
    Queries, mutations, and subscriptions for full access to the Stigg platform.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/api-and-sdks/api-reference/webhooks/events">
    Subscribe to real-time events for changes across your Stigg account.
  </Card>

  <Card title="Rate limits" icon="gauge" href="/api-and-sdks/integration/rest/rate-limits">
    Limits per endpoint and how to stay within them at scale.
  </Card>
</CardGroup>


## Related topics

- [Get started with the SDKs](/documentation/getting-started/get-started-with-sdks.md)
- [Get started with the CLI](/api-and-sdks/cli.md)
- [Get started with AI](/documentation/getting-started/get-started-with-ai.md)
- [Bring Your Own Cloud (BYOC)](/documentation/high-availability-and-scale/byoc/overview.md)
- [Resource-specific credit pools](/documentation/modeling-your-pricing-in-stigg/credits/resource-specific-pools.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.