Reference, v1

Customers (resellers)

Calls are made to https://api.footer365.net with an API key as a bearer token. This page is generated from the API's own description, which you can download.

GET /v1/customers

Lists the customers the key reaches

Every customer your reseller account manages, and a distributor's resellers' customers too, by name, in one response, with each one's subscription and seats. A customer that has not yet set Footer365 up, and so not yet accepted you, is not listed. search narrows the list by name or domain. Needs a reseller key with customers.read.

ParameterInTypeAbout it
search (optional)querystringPart of a name or domain to narrow the list by, or null.

Answers 200 with CustomerList.

GET /v1/customers/{id}

Reads one customer the key reaches

One customer by its Footer365 id. A customer you do not manage, or that has not accepted you, is not found. Needs a reseller key with customers.read.

ParameterInTypeAbout it
idpathstring (uuid)The customer's Footer365 id.

Answers 200 with CustomerDetail.

GET /v1/customers/{id}/seats

Reads one customer's seats

The seats the customer's subscription is for, any change to them already scheduled, and the user mailboxes counted in its directory at the last sync. Needs a reseller key with customers.read.

ParameterInTypeAbout it
idpathstring (uuid)The customer's Footer365 id.

Answers 200 with CustomerSeats.

Types

CustomerList

PropertyTypeAbout it
items array of CustomerDetail Each customer, by name.

CustomerDetail

PropertyTypeAbout it
id string (uuid) The customer's Footer365 id.
name string The organisation's name.
domain string Its primary domain.
microsoftTenantId string, or null Its Microsoft 365 tenant id.
reseller CustomerReseller, or null
status string Its subscription: trial, active, pastDue, unpaid, cancelled, paused, awaitingSetup, or none.
setupComplete boolean Whether Microsoft 365 consent is in place and the customer's way of adding signatures is set up: mail flow, or the Outlook add-in only.
enabled boolean Whether signatures are switched on for it.
deleting boolean Whether its account is being deleted.
billing string Who it is billed through: reseller (on your invoice) or direct.
plan string, or null Its billing cycle: monthly, annual, twoYear or threeYear; null without a subscription.
trialEndsAt string (date-time), or null When its trial ends, in UTC, while it is on one.
renewsAt string (date-time), or null When its current period ends, in UTC, while it is active.
customerSince string (date-time) When it was added, in UTC.
seats CustomerSeats Its seats.

CustomerSeats

PropertyTypeAbout it
subscribed integer, or null The seats its subscription is for, or null without a subscription.
scheduled integer, or null The seats a change already scheduled will set, or null.
scheduledFrom string (date-time), or null When that change takes effect, in UTC, or null.
mailboxes integer, or null The user mailboxes counted in its directory at the last sync, or null before the first.
mailboxesCountedAt string (date-time), or null When they were counted, in UTC, or null.
mailboxCountBasis string, or null confirmed (from licence data) or estimated (from accounts that can sign in), or null.

CustomerReseller

PropertyTypeAbout it
id string (uuid) The reseller's id.
name string The reseller's name.

Errors are written the same way for every call; see Errors. Answers may gain fields within a version, so ignore any you do not recognise.