Harri · Authentication Profile

Harri Authentication

Authentication

Harri secures its APIs with oauth2 across 1 declared security scheme, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the clientCredentials flow(s).

Human ResourcesWorkforce ManagementHospitalityRestaurantSchedulingTime and AttendancePayrollTalent AcquisitionLabor ComplianceHCM
Methods: oauth2 Schemes: 1 OAuth flows: clientCredentials API key in:

Security Schemes

oAuth2ClientCredentials oauth2
· flows: clientCredentials

Source

Authentication Profile

Raw ↑
generated: '2026-08-04'
method: searched
source: openapi/harri-employee-openapi.yml, openapi/harri-employer-openapi.json
docs: https://developer.harri.com/authentication/
summary:
  types:
  - oauth2
  oauth2_flows:
  - clientCredentials
  api_key_in: []
  token_transport: 'Authorization: Bearer <access_token>'
schemes:
- name: oAuth2ClientCredentials
  type: oauth2
  flows:
  - flow: clientCredentials
    tokenUrl: https://oauth.harri.com/oauth2/token
    scopes: 0
  sources:
  - openapi/harri-employee-openapi.yml
  - openapi/harri-employer-openapi.json
flow_detail:
  grant_type: client_credentials
  token_endpoint: https://oauth.harri.com/oauth2/token
  method: POST
  content_type: application/x-www-form-urlencoded
  request_parameters:
  - client_id
  - client_secret
  - grant_type
  credential_issuance: client_id and client_secret are issued by Harri; there is no self-service key page
  response_fields:
  - access_token
  - expires_in
  - token_type
  token_type: Bearer
  token_format: JWT
  token_lifetime_seconds: 1800
  usage: 'Authorization: Bearer <access_token> on every request to https://gateway.harri.com/open-api-hub'
  reuse_guidance: Harri explicitly instructs callers to mint one token per expiry window and reuse it;
    generating a token per request is discouraged.
  failure: HTTP 401 Unauthorized on a bad client_id/client_secret, malformed Authorization header, or
    expired token
  refresh: None — the client-credentials grant issues no refresh token; re-request from the token endpoint.
scoping:
  mechanism: Authorization is bound to the credential, not to a scope string. A set of corporate IDs is
    associated with each API credential by Harri Support; calling with an unassociated corporate ID returns
    422 on the Employer API. Franchisee access is expressed in the URI path (/franchisees/{franchiseeId}/...),
    not in the token.
  detail: scopes/harri-scopes.yml
deviations:
- id: employer-spec-staging-token-url
  note: openapi/harri-employer-openapi.json declares tokenUrl https://oauth.harristaging.com/oauth2/token
    — a staging host — while the production token endpoint documented at https://developer.harri.com/authentication/
    is https://oauth.harri.com/oauth2/token. The Employee spec declares the production URL correctly.
- id: no-authorization-server-metadata
  note: oauth.harri.com serves no RFC 8414 /.well-known/oauth-authorization-server document (404, probed
    2026-08-04).
- id: no-security-applied-per-operation
  note: The security scheme is declared in components but the specs apply it globally rather than per
    operation.

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