Xero · Authentication Profile

Xero Authentication

Authentication

Xero secures its APIs with http and oauth2 across 3 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode and clientCredentials flow(s).

AccountingBank FeedsFinanceFinancial ServicesInvoicingPayrollSmall Business
Methods: http, oauth2 Schemes: 3 OAuth flows: authorizationCode, clientCredentials API key in:

Security Schemes

OAuth2 oauth2
· flows: authorizationCode
OAuth2 oauth2
· flows: clientCredentials
BasicAuth http
scheme: basic

Source

Authentication Profile

Raw ↑
generated: '2026-10-20'
method: searched
source: openapi/xero-account-data-api-openapi.yml, openapi/xero-accounting-api-openapi.yml, openapi/xero-app-store-api-openapi.yml, openapi/xero-asset-api-openapi.yml, openapi/xero-bank-feeds-api-openapi.yml,
  openapi/xero-bank-feeds-v2-api-openapi.yml, openapi/xero-files-api-openapi.yml, openapi/xero-finance-api-openapi.yml, openapi/xero-identity-api-openapi.yml, openapi/xero-payrollau-api-openapi.yml, openapi/xero-payrollau-v2-api-openapi.yml,
  openapi/xero-payrollnz-api-openapi.yml ...
summary:
  types:
  - http
  - oauth2
  oauth2_flows:
  - authorizationCode
  - clientCredentials
schemes:
- name: OAuth2
  type: oauth2
  flows:
  - flow: authorizationCode
    authorizationUrl: https://login.xero.com/identity/connect/authorize
    tokenUrl: https://identity.xero.com/connect/token
    scopes: 3
  description: For more information visit https://developer.xero.com/documentation/oauth2/overview
  sources:
  - openapi/xero-account-data-api-openapi.yml
  - openapi/xero-accounting-api-openapi.yml
  - openapi/xero-asset-api-openapi.yml
  - openapi/xero-bank-feeds-api-openapi.yml
  - openapi/xero-bank-feeds-v2-api-openapi.yml
  - openapi/xero-files-api-openapi.yml
  - openapi/xero-finance-api-openapi.yml
  - openapi/xero-identity-api-openapi.yml
  - openapi/xero-payrollau-api-openapi.yml
  - openapi/xero-payrollau-v2-api-openapi.yml
  - openapi/xero-payrollnz-api-openapi.yml
  - openapi/xero-payrolluk-api-openapi.yml
  - openapi/xero-project-api-openapi.yml
- name: OAuth2
  type: oauth2
  flows:
  - flow: clientCredentials
    tokenUrl: https://identity.xero.com/connect/token
    scopes: 1
  description: For more information
  sources:
  - openapi/xero-app-store-api-openapi.yml
- name: BasicAuth
  type: http
  scheme: basic
  sources:
  - openapi/xero-identity-api-openapi.yml
docs: https://developer.xero.com/documentation/guides/oauth2/overview/
documented_flows:
- flow: authorization code (web apps)
  docs: https://developer.xero.com/documentation/guides/oauth2/auth-flow/
- flow: PKCE (mobile/desktop/CLI)
  docs: https://developer.xero.com/documentation/guides/oauth2/pkce-flow/
- flow: client credentials (Custom Connections)
  docs: https://developer.xero.com/documentation/guides/oauth2/custom-connections/
tenant_header: xero-tenant-id (from the Connections endpoint after authorisation)
refresh: offline_access scope required for a refresh token

Work with this as data

Every security artifact 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 security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • 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 security artifact
curl "https://apis.io/api/v1/security/xero-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.