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

# API & Automation Overview

> Use Nubis programmatically with API keys, service accounts, webhooks, and SDKs.

## Build on Nubis without clicking through the Console

Every major Nubis workflow is designed to be scriptable. The control plane routes in this repo are versioned under `/api/v1` and are organized around organizations, projects, and resource families.

<CardGroup cols={2}>
  <Card title="Authentication" icon="key-round" href="/api-reference/authentication">
    Learn how Nubis authenticates personal API keys and automated workloads.
  </Card>

  <Card title="Instances API" icon="server" href="/api-reference/instances">
    Provision and manage compute resources scoped to a project.
  </Card>

  <Card title="Networking API" icon="network" href="/api-reference/networking">
    Automate networks, firewalls, floating IPs, DNS, and load balancers.
  </Card>

  <Card title="Billing API" icon="wallet" href="/api-reference/billing">
    Track subscriptions, invoices, payment methods, usage, and spend controls.
  </Card>
</CardGroup>

## Automation building blocks

* **Personal API keys** for user-scoped automation.
* **Service accounts** for CI/CD, bots, and background integrations.
* **Outgoing webhooks** for lifecycle and mutation events in your own systems.
* **SDKs** when you want typed clients instead of raw HTTP calls.

## Resource model

Nubis APIs generally follow this pattern:

* **Organization-scoped routes** for membership, billing, limits, IAM, and support.
* **Project-scoped routes** for compute, storage, networking, databases, Kubernetes, templates, and domains.
* **Account-scoped routes** for API keys and audit logs.

Example authentication pattern:

```bash theme={null}
curl https://api.usenubis.com/api/v1/api-keys \
  -H "Authorization: Bearer NUBIS_API_KEY"
```

## Recommended starting points

* Start with [API Authentication](/api-reference/authentication) to choose the right credential model.
* Use [Webhooks](/developers/webhooks) when you want Nubis to push state changes into your own systems.
* Explore the [JavaScript SDK](/developers/sdk-js) or [Rust SDK](/developers/sdk-rust) for typed integrations.
