Lili · Authentication Profile

Lili Authentication

Authentication

Lili secures its APIs with apiKey and oauth2 across 2 declared security schemes, as derived from its OpenAPI definitions.

BankingBusiness BankingFinancial-ServicesFintechEmbedded FinanceOnboardingKYCWebhookMCPagent-nativeInvoicingBill PayAccountingSmall Business
Methods: apiKey, oauth2 Schemes: 2 OAuth flows: API key in: header

Security Schemes

accessKey apiKey
· in: header (Authorization)
mcp-oauth2 oauth2

Source

Authentication Profile

Raw ↑
generated: '2026-08-25'
method: searched
source: https://dev.lili.co/guides/lili-quick-start
also:
- https://dev.lili.co/guides/lili-mcp-connect
- https://mcp.lili.co/.well-known/oauth-authorization-server
- openapi/lili-application-api-openapi.yml
- openapi/lili-customer-management-api-openapi.yml
- openapi/lili-webhooks-api-openapi.yml
docs: https://dev.lili.co/guides/lili-quick-start
summary:
  types:
  - apiKey
  - oauth2
  api_key_in:
  - header
  note: >-
    Two credential models for two audiences. The partner REST APIs use a static accessKey/secretKey
    pair in a custom Authorization scheme; the MCP server uses full OAuth 2.0 authorization code
    with PKCE and dynamic client registration. Neither carries scopes.
schemes:
- name: accessKey
  surface: REST
  type: apiKey
  in: header
  parameter: Authorization
  scheme_word: Lili
  value_format: 'Lili <accessKey>:<secretKey>'
  description: |-
    The authorization in the format:<br/>
    Authorization: Lili accessKey:secretKey
  example_from_docs: 'curl -X GET https://prod.lili.co/lili/api/v1/webhooks -H "Authorization: Lili accessKey:secretKey"'
  issuance:
    self_serve: false
    process: Contact dev-resources@lili.co. Lili issues an access/secret key pair per environment on account creation.
    environments: [sandbox, production]
    key_prefix_convention: none
    key_prefix_note: >-
      There is no test/live prefix. A sandbox key and a production key are indistinguishable by
      inspection, so environment binding has to be enforced by the integrator's own configuration.
  rotation_policy: not published
  applies_to:
  - openapi/lili-application-api-openapi.yml
  - openapi/lili-customer-management-api-openapi.yml
  - openapi/lili-webhooks-api-openapi.yml
  operations: all
  scopes: none
- name: mcp-oauth2
  surface: MCP
  type: oauth2
  flow: authorization_code
  pkce: S256
  issuer: https://mcp.lili.co
  authorization_endpoint: https://mcp.lili.co/oauth/authorize
  token_endpoint: https://mcp.lili.co/oauth/token
  revocation_endpoint: https://mcp.lili.co/oauth/revoke
  registration_endpoint: https://mcp.lili.co/oauth/register
  dynamic_client_registration: true
  token_endpoint_auth_methods_supported: [none]
  bearer_methods_supported: [header]
  grant_types: [authorization_code, refresh_token]
  refresh_tokens: true
  scopes: none
  scopes_note: The authorization-server metadata declares no scopes_supported. See scopes/lili-scopes.yml.
  subject: >-
    Tokens are scoped to the authenticated Lili user. Differentiation is by USER TYPE (business
    owner vs accountant), enforced server-side, not by scope.
  discovery:
  - well-known/lili-mcp-oauth-authorization-server.json
  - well-known/lili-mcp-oauth-protected-resource.json
  applies_to:
  - https://mcp.lili.co/mcp
webhook_authentication:
  direction: inbound-to-partner
  v2: 'Authorization: Bearer <token issued at webhook creation>'
  v1: 'lili-secret: <token issued at webhook creation>  (deprecated)'
  ip_allowlist_published: true
  signature: none
  detail: asyncapi/lili-webhooks.yml
embedded_authentication:
  mechanism: JWT
  detail: >-
    The Create Application response returns a `token` (JWT) that is passed to the embedded
    onboarding loader as `data-token`. It authorises exactly one applicant's onboarding session.
  detail_file: components/lili-components.yml
mfa: not applicable to the API surfaces
mtls: false
openid_connect: false

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/lili-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

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

Get an API key

Free tier, no email required.

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