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

# Introduction

> The TenantCore API gives you programmatic control over Microsoft 365 tenant infrastructure — provisioning, domain management, mailbox creation, and send enforcement.

## Overview

The TenantCore API is a REST API that exposes the same infrastructure operations available in the TenantCore app. You can use it to:

* **Manage tenants** — list, inspect, and deprovision connected Microsoft 365 tenants
* **Manage domains** — add custom domains to tenants and retrieve their DNS records
* **Manage mailboxes** — provision shared mailboxes, set and update send limits, and query daily usage
* **Query enforcement** — retrieve the full audit log of send enforcement events across all mailboxes

## Base URL

All API requests are made to:

```
https://api.tenantcore.io
```

All public API endpoints are versioned under `/v1`:

```
https://api.tenantcore.io/v1
```

## Request format

The API accepts and returns JSON. Set `Content-Type: application/json` on all `POST` and `PATCH` requests.

## Response format

All successful responses return a JSON object. Errors follow a consistent shape:

```json theme={null}
{
  "detail": {
    "message": "Human-readable description of what went wrong",
    "code": "machine_readable_error_code"
  }
}
```

## Rate limits

Rate limits are not currently enforced at the API level, but your plan's tenant ceiling is enforced on every request. Requests that would exceed your ceiling return `402 Payment Required`.

## Infrastructure notes

* Exchange Online propagation after mailbox provisioning takes **2–5 minutes**. Plan your integrations accordingly.
* Domain DNS records are queried live from public resolvers — results reflect what is publicly visible, not what Microsoft has cached internally.
* All tenant operations are scoped to your account. You cannot access or modify tenants connected by other users.

## Getting started

1. Purchase an API plan at [app.tenantcore.io/api](https://app.tenantcore.io/api)
2. Your API key is provisioned automatically — reveal it from the API page
3. Pass the key as a Bearer token on every request
4. Start with `GET /v1/tenants` to list your connected tenants
