Inbox Zero Stats API
The Stats API from Inbox Zero — 2 operation(s) for stats.
The Stats API from Inbox Zero — 2 operation(s) for stats.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/getinboxzero-com:getinboxzero-com-stats-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a 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.
openapi: 3.2.0
info:
title: Inbox Zero Stats API
version: 1.0.0
description: 'Programmatic access to Inbox Zero inbox stats, automation rules, and sender unsubscribe. Docs: https://docs.getinboxzero.com/api-reference/introduction Machine-readable schema: /openapi.json Authenticate with an account-scoped API key via the API-Key header. Errors return JSON with error.code, error.message, and error.hint.'
servers:
- url: https://www.getinboxzero.com/api/v1
description: Primary server
security:
- ApiKeyAuth: []
tags:
- name: Stats
paths:
/stats/by-period:
get:
operationId: getStatsByPeriod
description: Get email statistics grouped by time period. Returns counts of emails by status (all, sent, read, unread, archived, unarchived) for each period.
security:
- ApiKeyAuth:
- STATS_READ
x-required-scopes:
- STATS_READ
parameters:
- schema:
type: string
enum:
- day
- week
- month
- year
default: week
required: false
name: period
in: query
- schema:
type:
- number
- 'null'
required: false
name: fromDate
in: query
- schema:
type:
- number
- 'null'
required: false
name: toDate
in: query
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
result:
type: array
items:
type: object
properties:
startOfPeriod:
type: string
All:
type: number
Sent:
type: number
Read:
type: number
Unread:
type: number
Unarchived:
type: number
Archived:
type: number
required:
- startOfPeriod
- All
- Sent
- Read
- Unread
- Unarchived
- Archived
allCount:
type: number
inboxCount:
type: number
readCount:
type: number
sentCount:
type: number
required:
- result
- allCount
- inboxCount
- readCount
- sentCount
'400':
description: Invalid query, path, or request body
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'401':
description: Missing, invalid, or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'403':
description: API key lacks a required scope or is not account-scoped
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'405':
description: HTTP method is not supported for this route
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'429':
description: Rate limited by the API or email provider
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'500':
description: Unexpected server error
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
tags:
- Stats
summary: Get stats by period
x-summary-source: derived
/stats/response-time:
get:
operationId: getStatsResponseTime
description: Get email response time statistics. Returns summary stats, distribution, and trend data showing how quickly you respond to emails.
security:
- ApiKeyAuth:
- STATS_READ
x-required-scopes:
- STATS_READ
parameters:
- schema:
type:
- number
- 'null'
required: false
name: fromDate
in: query
- schema:
type:
- number
- 'null'
required: false
name: toDate
in: query
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
summary:
type: object
properties:
medianResponseTime:
type: number
averageResponseTime:
type: number
within1Hour:
type: number
previousPeriodComparison:
type:
- object
- 'null'
properties:
medianResponseTime:
type: number
percentChange:
type: number
required:
- medianResponseTime
- percentChange
required:
- medianResponseTime
- averageResponseTime
- within1Hour
- previousPeriodComparison
distribution:
type: object
properties:
lessThan1Hour:
type: number
oneToFourHours:
type: number
fourTo24Hours:
type: number
oneToThreeDays:
type: number
threeToSevenDays:
type: number
moreThan7Days:
type: number
required:
- lessThan1Hour
- oneToFourHours
- fourTo24Hours
- oneToThreeDays
- threeToSevenDays
- moreThan7Days
trend:
type: array
items:
type: object
properties:
period:
type: string
periodDate:
type:
- string
- 'null'
format: date-time
medianResponseTime:
type: number
count:
type: number
required:
- period
- periodDate
- medianResponseTime
- count
emailsAnalyzed:
type: number
maxEmailsCap:
type: number
required:
- summary
- distribution
- trend
- emailsAnalyzed
- maxEmailsCap
'400':
description: Invalid query, path, or request body
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'401':
description: Missing, invalid, or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'403':
description: API key lacks a required scope or is not account-scoped
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'405':
description: HTTP method is not supported for this route
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'429':
description: Rate limited by the API or email provider
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
'500':
description: Unexpected server error
content:
application/json:
schema:
$ref: '#/components/schemas/PublicApiError'
tags:
- Stats
summary: Get stats response time
x-summary-source: derived
components:
schemas:
PublicApiError:
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- BAD_REQUEST
- UNAUTHORIZED
- FORBIDDEN
- NOT_FOUND
- METHOD_NOT_ALLOWED
- RATE_LIMITED
- INTERNAL_ERROR
message:
type: string
hint:
type: string
required:
- code
- message
- hint
required:
- error
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: API-Key
description: 'Account-scoped API key created in Settings.
Operations declare the scopes they require.
Available scopes:
- RULES_READ: List and inspect automation rules for this inbox.
- RULES_WRITE: Create, update, and delete automation rules for this inbox.
- STATS_READ: Read aggregated inbox statistics for this inbox.
- SENDERS_UNSUBSCRIBE: Unsubscribe from senders for this inbox.'
x-scopes:
RULES_READ: List and inspect automation rules for this inbox.
RULES_WRITE: Create, update, and delete automation rules for this inbox.
STATS_READ: Read aggregated inbox statistics for this inbox.
SENDERS_UNSUBSCRIBE: Unsubscribe from senders for this inbox.