Mail-in-a-Box

Mail-in-a-Box provides an easy-to-deploy, self-hosted mail server solution that includes a web-based control panel and a RESTful HTTP API for managing email accounts, DNS records, backups, and system monitoring. It aims to give users control over their email infrastructure while simplifying setup and maintenance.

Mail-in-a-Box publishes 7 API contracts indexed on the APIs.io network, including DNS API, Mail API, MFA API, and 4 more. Tagged areas include Company, Email, Self-hosted, Open-source, and Automation.

The Mail-in-a-Box catalog on APIs.io includes 1 JSON-LD context and 1 Spectral governance ruleset.

Mail-in-a-Box’s developer surface includes authentication and 15 more developer resources.

29.8/100 thin Agent 23/100 agent aware Full breakdown ↓
scored 2026-10-31 · rubric v0.25.0 · Show this score on your site →
1 published contract 5 Agent Skills
CompanyEmailSelf-hostedOpen-sourceAutomationPrivacy

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-10-31 · rubric v0.25.0
Regulatory Posture applies to this provider. Its tags matched the Horizontal (data, software, accessibility, platform) regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
Create-or-Update Ergonomics could not be measured. We hold no machine-readable contract for this provider to read, so there is nothing to measure a write surface against. Excluded rather than scored zero: never-measured and measured-empty are different facts. Publishing an OpenAPI is what makes this facet — and several others — scorable at all.
The six quality facets above are damped to 85 points between them, because the conditional facet above carries the other 15. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 85% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Show this score on your site. Kin Score badge preview for Mail-in-a-Box It updates itself when the score changes. Paste this where you link to your API docs:
<a href="https://apis.io/providers/mail-in-a-box/"><img src="https://apis.io/badge/mail-in-a-box/card.svg" alt="Mail-in-a-Box on APIs.io — Kin Score by API Evangelist"></a>
Other styles, a README pill and a shields.io endpoint are on the badge page.
Raise your score.
Agent readiness — checks not met, largest first (exact, from this profile):
  • MCP Server +12 pts — deployment.mode + probe verdict on the mcp/ manifest, not the pointer; an unprobed slug falls back to authorship
  • Idempotency +9 pts — OpenAPI mutating operations declare an idempotency key — a header, a request-body property, or a named de-duplication token whose own description says so (verified); else common[].type matches /idempoten/i (documented)
  • A2A Agent Card +8 pts — a2a/-a2a.yml manifest, graded on conformance.grade against A2A 1.0.0
  • Rate-Limit Signaling +7 pts — OpenAPI responses document X-RateLimit-* / RateLimit headers (verified), else a rate_limits artifact or RateLimits link (documented)
  • Delegated User Identity +6 pts — a served discovery document listing authorization_code in grant_types_supported (served), else an oauth2 authorizationCode flow or openIdConnect declared in an OpenAPI (documented)
  • Registration Without a Human +6 pts — a `registration_endpoint` in the served RFC 8414 / OIDC discovery document
9 more unmet checks in the Agent Readiness table above.
Kin Score — facets with the most composite points still available (weight × headroom):
Each check links to what satisfies it. Publish the artifact, or tell us where it already lives, and the score moves on the next scoring run.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from the provider profile at artifacts.apis.io/mail-in-a-box/apis.yml: open an issue on github.com/api-evangelist/mail-in-a-box to ask a question or point us at an artifact you publish. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

APIs 7

Individual APIs this provider publishes, each with its own machine-readable definition.

Mail-in-a-Box DNS API

DNS operations, which include adding custom records, adding a secondary nameserver and viewing all DNS records.

Mail-in-a-Box Mail API

Mail operations, which include getting all users, getting all aliases, adding/updating/removing users and aliases and getting all mail domains.

Mail-in-a-Box MFA API

Manage multi-factor authentication schemes. Currently, only TOTP is supported.

Mail-in-a-Box SSL API

TLS (SSL) Certificates operations, which include checking certificate status and installing custom certificates.

Mail-in-a-Box System API

System operations, which include system status checks, new version checks and reboot status.

Mail-in-a-Box User API

Endpoints related to user authentication.

Mail-in-a-Box Web API

Static web hosting operations, which include getting domain information and updating domain root directories.

Scroll for all 7

Agent Skills 5

Packaged agent skills for driving this provider's APIs from an AI assistant.

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Mail In A Box Context

43 classes · 60 properties

JSON-LD

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

Mail-in-a-Box API Rules

17 rules · 12 errors 4 warnings 1 info

SPECTRAL

JSON Schema 6

Standalone JSON Schema definitions for this provider's data models.

MailAliasUpsertRequest

4 properties

JSON SCHEMA

SSLCertificateInstallRequest

3 properties

JSON SCHEMA

SSLCSRGenerateResponse

0 properties

JSON SCHEMA

SystemBackupConfigResponse

7 properties

JSON SCHEMA

SystemUpdatePackagesResponse

0 properties

JSON SCHEMA

WebDomain

5 properties

JSON SCHEMA

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Mail In A Box Authentication

http · 1 scheme

SECURITY

Mail In A Box Domain Security

TLSv1.3 · HSTS · DNSSEC · DMARC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Mail In A Box Agentic Access

49 operations · 28 acting · 2 human-in-the-loop

49 operations · 28 acting

AGENTIC

Resources

Agent Surfaces 3

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 6

Pagination, idempotency, versioning, errors, and events

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Company 1

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: mail-in-a-box
name: Mail-in-a-Box
description: Mail-in-a-Box provides an easy-to-deploy, self-hosted mail server solution that includes a web-based control
  panel and a RESTful HTTP API for managing email accounts, DNS records, backups, and system monitoring. It aims to give users
  control over their email infrastructure while simplifying setup and maintenance.
url: https://raw.githubusercontent.com/api-evangelist/mail-in-a-box/refs/heads/main/apis.yml
x-type: company
x-source: harvest:new-submission
x-tier: profiled
x-tier-reason: enrichment pass 2026-10-28 (modular-v1; was harvest)
specificationVersion: '0.20'
created: '2026-10-27'
modified: '2026-10-27'
tags:
- Company
- Email
- Self-hosted
- Open-source
- Automation
- Privacy
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
- FN: APIs.json
  email: info@apis.io
common:
- type: AgenticAccess
  url: agentic-access/mail-in-a-box-agentic-access.yml
- type: Spectral
  url: rules/mail-in-a-box-rules.yml
- type: JSONLD
  url: json-ld/mail-in-a-box-context.jsonld
- type: Vocabulary
  url: vocabulary/mail-in-a-box-vocabulary.yml
- type: AgentSkill
  url: skills/_index.yml
- type: DataModel
  url: data-model/mail-in-a-box-data-model.yml
- type: ErrorCatalog
  url: errors/mail-in-a-box-problem-types.yml
- type: Conformance
  url: conformance/mail-in-a-box-conformance.yml
- type: LLMsTxt
  url: llms/mail-in-a-box-llms.txt
- type: Hosts
  url: hosts/mail-in-a-box-hosts.yml
- type: SDKs
  url: packages/mail-in-a-box-packages.yml
- type: Packages
  url: packages/mail-in-a-box-packages.yml
- type: GitHubOrganization
  url: https://github.com/JoshData
- type: Authentication
  url: authentication/mail-in-a-box-authentication.yml
- type: DomainSecurity
  url: security/mail-in-a-box-domain-security.yml
- type: Website
  url: https://mailinabox.email/
apis:
- aid: mail-in-a-box:mail-in-a-box-dns-api
  name: Mail-in-a-Box DNS API
  description: DNS operations, which include adding custom records, adding a secondary nameserver and viewing all DNS records.
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - DNS
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-dns-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-mail-api
  name: Mail-in-a-Box Mail API
  description: Mail operations, which include getting all users, getting all aliases, adding/updating/removing users and aliases
    and getting all mail domains.
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - Mail
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-mail-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-mfa-api
  name: Mail-in-a-Box MFA API
  description: Manage multi-factor authentication schemes. Currently, only TOTP is supported.
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - MFA
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-mfa-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-ssl-api
  name: Mail-in-a-Box SSL API
  description: 'TLS (SSL) Certificates operations, which include checking certificate status

    and installing custom certificates.'
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - SSL
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-ssl-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-system-api
  name: Mail-in-a-Box System API
  description: 'System operations, which include system status checks, new version checks

    and reboot status.'
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - System
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-system-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-user-api
  name: Mail-in-a-Box User API
  description: Endpoints related to user authentication.
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - User
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-user-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
- aid: mail-in-a-box:mail-in-a-box-web-api
  name: Mail-in-a-Box Web API
  description: Static web hosting operations, which include getting domain information and updating domain root directories.
  humanURL: https://mailinabox.email/api-docs.html
  baseURL: https://mailinabox.email/admin
  tags:
  - Web
  properties:
  - type: OpenAPI
    url: openapi/mail-in-a-box-web-api-openapi.yml
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcertificate-install-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-mail-alias-upsert-request-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-sslcsrgenerate-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-update-packages-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-system-backup-config-response-schema.json
  - type: JSONSchema
    url: json-schema/mail-in-a-box-web-domain-schema.json
x-submission-probe: 200, 2026-10-26
x-enrichment:
  date: '2026-10-28'
  status: enriched
  artifacts_added: 26
  pass: modular-v1
  engine: identity=local,contract=local,surfaces=local,docs=local,regulatory=local

Mail-in-a-Box API — frequently asked questions

Does Mail-in-a-Box have an API?

Yes. APIs.io lists 7 APIs from Mail-in-a-Box, including Mail-in-a-Box DNS API, Mail-in-a-Box Mail API and Mail-in-a-Box MFA API, and 4 more.

Is there an OpenAPI specification for the Mail-in-a-Box API?

Yes. APIs.io indexes 7 OpenAPI specifications for Mail-in-a-Box, each linked for download from this page.

How do I authenticate with the Mail-in-a-Box API?

Mail-in-a-Box uses bearer-token authentication (http · 1 scheme). The details are profiled on APIs.io as Mail In A Box Authentication.

Is the Mail-in-a-Box API ready for AI agents?

Mail-in-a-Box has a Kin Score of 29.8 out of 100 (thin) and an Agent Readiness score of 22.6 (agent-aware), scored by API Evangelist on 2026-10-31.

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/mail-in-a-box"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/mail-in-a-box/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/mail-in-a-box/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.