Float Financial · Authentication Profile

Float Financial Authentication

Authentication

Float Financial secures its APIs with http across 1 declared security scheme, as derived from its OpenAPI definitions.

spend-managementcorporate-cardsexpense-managementaccounts-payablebill-payreimbursementsbusiness-bankingaccounting-integrationfintechcanadapaymentserp-integration
Methods: http Schemes: 1 OAuth flows: API key in:

Security Schemes

bearerToken http
scheme: bearer · in: header (Authorization)

Source

Authentication Profile

Raw ↑
generated: '2026-08-16'
method: searched
source: openapi/float-financial-openapi.yml
docs: https://help.floatfinancial.com/hc/en-us/articles/38048585600404-Get-Started-with-Float-s-Public-API
searched_sources:
- https://help.floatfinancial.com/hc/en-us/articles/38048585600404-Get-Started-with-Float-s-Public-API
- https://docs.floatfinancial.com/docs/accounting
- live probe of https://api.floatfinancial.com/v1/cards (HTTP 401)
api: Float Public API
summary:
  types:
  - http
  scopes: false
  oauth2: false
  oidc: false
  mtls: false
  multi_environment: false
schemes:
- name: bearerToken
  type: http
  scheme: bearer
  in: header
  parameter: Authorization
  format: 'Authorization: Bearer <api_token>'
  sources:
  - openapi/float-financial-openapi.yml
  description: >-
    A single static per-business API token. Float's OpenAPI declares this scheme in
    components.securitySchemes but declares NO top-level `security` and no per-operation `security`, so the
    contract never states which operations require it — a generated client sends no credential at all. In
    practice every operation except getOpenAPI requires the token.
token_issuance:
  self_serve: true
  console: https://app.floatfinancial.com/
  path: Settings > scroll to "Business Settings" > Developers
  role_required: Administrator
  verbatim: >-
    "To create and manage API tokens, log-in to app.floatfinancial.com as an Administrator and navigate to
    Settings > scroll to 'Business Settings' > Developers."
  source: https://help.floatfinancial.com/hc/en-us/articles/38048585600404-Get-Started-with-Float-s-Public-API
token_properties:
  scope: business
  granularity: all-or-nothing
  prefix: none published
  expiry: not documented
  rotation: not documented
  test_variant: none
  note: >-
    There are no scopes, no permissions and no read-only token type. A token that can read every card
    transaction can also issue cards (createCard), create card limits (createCardLimit), create users
    (createUser) and delete tax codes and custom fields. For a spend-management platform that is a wide blast
    radius from one secret, and it is the strongest authorization finding in this profile.
environments:
- name: production
  base_url: https://api.floatfinancial.com
  token_type: live
  note: >-
    The only environment. Float's FAQ states it offers no sandbox or test environment, so there is no test-mode
    key and no prefix by which a leaked token could be triaged as harmless.
anonymous_endpoints:
- operationId: getOpenAPI
  path: /v1/openapi
  method: GET
  status: 200
  note: The OpenAPI document is served without credentials — the only anonymous operation.
failure_behaviour:
  status: 401
  body: '{"error":"UNAUTHORIZED","message":"Incorrect authentication credentials.","docs":"https://docs.floatfinancial.com"}'
  observed_from: live GET https://api.floatfinancial.com/v1/cards with no Authorization header
  declared_in_spec: false
  note: 401 is returned live but is not declared on any of the 71 operations in the spec.
oauth:
  supported: false
  discovery_probes:
  - url: https://floatfinancial.com/.well-known/oauth-authorization-server
    status: 404
  - url: https://api.floatfinancial.com/.well-known/oauth-authorization-server
    status: 404
  - url: https://floatfinancial.com/.well-known/openid-configuration
    status: 404
  - url: https://api.floatfinancial.com/.well-known/openid-configuration
    status: 404
  note: >-
    No OAuth and no OIDC. scopes/float-financial-scopes.yml is deliberately not written — there is no scope
    surface to record.
platform_sso:
  saml: true
  mfa: true
  note: >-
    SAML SSO (Professional and Enterprise plans) and MFA (all plans) secure the Float web app for humans. They
    do not apply to API tokens, which remain unscoped static secrets.
  source: https://floatfinancial.com/pricing
remediation_for_provider:
- >-
  Declare a global `security` requirement referencing bearerToken so generated clients actually send the
  credential — the scheme is defined but never applied.
- Declare the 401 response with a schema on every authenticated operation.
- Introduce scoped or read-only tokens; today one token grants card issuance and user creation.
- Publish token expiry and rotation guidance, and a token prefix so leaks are identifiable.