---
title: "List the ways an inbox can be connected"
method: GET
path: "/api/emails/connect/providers"
tags: ["Email"]
---

# List the ways an inbox can be connected

`GET /api/emails/connect/providers`

## Request

- Base URL: `https://domani.run`
- URL: `https://domani.run/api/emails/connect/providers`
- Auth: HTTP bearer

One row per provider (Gmail, Outlook, any inbox by forwarding, an address hosted here): how the connection starts (a consent screen, a forwarding rule, an address created), what the connection can do (read, or read and write), whether it imports older mail, and whether this server is set up for it. Show a connect button only when `configured` is true; `reason` names the missing variable for the operator. Requires `email:read`.

## Response `200`

The providers

- object
  - `providers` MailProvider[], required
    - `id` 'gmail' | 'outlook' | 'forwarding' | 'hosted', required
    - `name` string, required
    - `kind` 'gmail' | 'graph' | 'forwarding' | 'hosted', required: The connector behind it
    - `connect` 'oauth' | 'forwarding' | 'create', required: How the connection starts
    - `path` string, required: What to POST to (or, for hosted, where an address is created)
    - `access` string[], required
    - `imports_history` boolean, required: Lists older mail after an import bound and syncs continuously
    - `configured` boolean, required: This server can start the connection now
    - `reason` string, nullable, required: Why not, for the operator

## Other responses

- `401`: Missing or invalid API key
- `429`: Rate limit exceeded - wait and retry

---

[API](https://skmtc.dev/domani/apis/domani-run-api.md) · [All operations](https://skmtc.dev/domani/apis/domani-run-api/llms.txt) · [OpenAPI document](https://skmtc.dev/domani/apis/domani-run-api/revisions/7679f8159533?raw)
