Canopy Connect · Authentication Profile

Canopy Authentication

Authentication

Canopy Connect secures its APIs with http and oauth2 across 2 declared security schemes, as derived from its OpenAPI definitions.

Auto InsuranceCasualtyFinancial-ServicesHomeowners InsuranceInsuranceInsurance VerificationProperty
Methods: http, oauth2 Schemes: 2 OAuth flows: API key in:

Security Schemes

BasicAuth http
scheme: basic
CanopyAppsOAuth2 oauth2

Source

Authentication Profile

Raw ↑
generated: '2026-09-05'
method: searched
source: https://docs.usecanopy.com/reference/authentication-guide
docs:
  - https://docs.usecanopy.com/reference/authentication-guide
  - https://docs.usecanopy.com/reference/apps-authorization
  - https://docs.usecanopy.com/reference/apps-api-requests
spec: openapi/canopy-openapi.json
summary:
  types:
    - http
    - oauth2
  primary: HTTP Basic (Client ID as username, Client Secret as password)
  transport: HTTPS only; TLS 1.2 and above. HTTP and TLS below 1.2 are rejected.
  key_management: https://app.usecanopy.com/dashboard/settings/api-settings
  environments:
    - name: sandbox
      note: Sandbox API keys work only against sandbox links/widgets and cannot read production data.
    - name: production
      note: Production API keys work only against production links and cannot read sandbox data.
schemes:
  - name: BasicAuth
    type: http
    scheme: basic
    declared_in: openapi/canopy-openapi.json
    applied: global (security[] on the document root)
    username: Client ID
    password: Client Secret
    header: 'Authorization: Basic <base64(client_id:client_secret)>'
    description: >-
      HTTP Basic authentication over HTTPS. Create the key pair in the Canopy
      Connect dashboard under Settings > API. The Client Secret is shown once at
      creation and cannot be re-retrieved; losing it requires creating a new key
      with a new Client ID. Canopy explicitly warns the secret is server-side
      only and must never be embedded in browser or mobile code.
    alternate_headers:
      - x-canopy-client-id
      - x-canopy-client-secret
    alternate_note: >-
      The Apps guide states that x-canopy-client-id / x-canopy-client-secret are
      an alternative to the Authorization header for calls against your own
      Team, and that sending them alongside a Bearer token causes the
      Authorization header to be ignored.
    sources:
      - openapi/canopy-openapi.json
      - https://docs.usecanopy.com/reference/authentication-guide
  - name: CanopyAppsOAuth2
    type: oauth2
    flow: authorizationCode
    pkce: required
    pkce_methods:
      - S256
      - plain
    pkce_note: S256 strongly recommended by the provider; plain accepted.
    authorization_url: https://app.usecanopy.com/oauth2/authorize
    token_header: 'Authorization: Bearer <access_token>'
    response_modes:
      - query
      - fragment
      - form_post
    state: supported and recommended (CSRF nonce / round-trip state)
    scopes_artifact: scopes/canopy-scopes.yml
    declared_in: docs only
    description: >-
      OAuth 2.0 authorization-code flow with mandatory PKCE, used by Canopy
      Connect Apps to act on another Team's behalf. This flow is NOT declared in
      the provider's published OpenAPI - the spec carries only BasicAuth - so it
      is recorded here from the docs and mirrored in
      overlays/canopy-openapi-overlay.yaml.
    sources:
      - https://docs.usecanopy.com/reference/apps-authorization
      - https://docs.usecanopy.com/reference/apps-api-requests
failures:
  - status: 401
    code: UNAUTHORIZED
    meaning: Missing, malformed, or invalid credentials, or an inactive key.
  - status: 403
    code: FORBIDDEN
    meaning: Authenticated but not permitted for this resource.
  - status: 403
    code: SUBSCRIPTION_INACTIVE
    meaning: The Team's Canopy Connect subscription is not active.
  - status: 400
    code: INCORRECT_API_KEY_TYPE
    meaning: A sandbox key was used against a production link, or vice versa.
gaps:
  - The OpenAPI declares no oauth2 securityScheme, so scope requirements are invisible to any generated client.
  - No /.well-known/oauth-authorization-server or /.well-known/openid-configuration is served on any host (probed 2026-09-05, 404 on usecanopy.com, www and docs).
maintainers:
  - FN: Kin Lane
    email: kin@apievangelist.com

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/canopy-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 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.