Bluefish AI · Authentication Profile

Bluefish Ai Authentication

Authentication

Bluefish AI secures its APIs with oauth2 and openIdConnect across 2 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode flow(s).

CompanyMarketingArtificial IntelligenceGenerative Engine OptimizationBrand SafetyAgentic CommerceAnalyticsMCPAgents
Methods: oauth2, openIdConnect Schemes: 2 OAuth flows: authorizationCode API key in:

Security Schemes

BluefishOAuth2 oauth2
· flows: authorizationCode
BluefishOIDC openIdConnect

Source

Authentication Profile

bluefish-ai-authentication.yml Raw ↑
generated: '2026-08-13'
method: probed
source: https://auth.bluefishai.com/.well-known/oauth-authorization-server
note: >-
  Not derived from an OpenAPI — Bluefish publishes no spec. This profile is read
  directly from the provider's own live OAuth 2.0 Authorization Server Metadata
  (RFC 8414), OpenID Connect Discovery document, and the RFC 9728 protected-resource
  metadata for the MCP endpoint. Every value below is copied from a 200 response
  captured in well-known/. Bluefish does not document authentication anywhere on its
  public site, so these machine-readable discovery documents are the only published
  description of how to authenticate, and they are complete enough to implement
  against.
summary:
  types: [oauth2, openIdConnect]
  api_key_in: []
  oauth2_flows: [authorizationCode]
  protected_resources: [https://platform.bluefishai.com/mcp]
  public_self_service: false
  public_self_service_note: >-
    The authorization endpoint sits on the authenticated customer platform at
    /connected-apps/authorize (307s to login when anonymous), so obtaining a token
    requires an existing Bluefish customer account. Dynamic client registration is
    open, but consent is customer-gated.
schemes:
- name: BluefishOAuth2
  type: oauth2
  sources: [well-known/bluefish-ai-oauth-authorization-server.json]
  issuer: https://auth.bluefishai.com
  flows:
  - flow: authorizationCode
    authorizationUrl: https://platform.bluefishai.com/connected-apps/authorize
    tokenUrl: https://auth.bluefishai.com/v1/oauth2/token
    refreshUrl: https://auth.bluefishai.com/v1/oauth2/token
    scopes_count: 7
  grant_types: [authorization_code, refresh_token, 'urn:ietf:params:oauth:grant-type:jwt-bearer']
  response_types: [code, code token]
  pkce:
    required_methods: [S256]
    plain_supported: false
  token_endpoint_auth_methods: [client_secret_basic, client_secret_post, none]
  dynamic_client_registration:
    supported: true
    registration_endpoint: https://auth.bluefishai.com/v1/oauth2/register
    spec: RFC 7591
  client_id_metadata_document_supported: true
- name: BluefishOIDC
  type: openIdConnect
  sources: [well-known/bluefish-ai-openid-configuration.json]
  openIdConnectUrl: https://auth.bluefishai.com/.well-known/openid-configuration
  issuer: https://auth.bluefishai.com
  userinfo_endpoint: https://auth.bluefishai.com/v1/oauth2/userinfo
  end_session_endpoint: https://platform.bluefishai.com/connected-apps/authorize
  jwks_uri: https://auth.bluefishai.com/.well-known/jwks.json
  id_token_signing_alg_values_supported: [RS256]
  subject_types_supported: [public]
  response_types: [code]
  grant_types: [authorization_code]
token_presentation:
  style: bearer
  header: Authorization
  evidence: >-
    POST https://platform.bluefishai.com/mcp without credentials returns 401 with
    WWW-Authenticate: Bearer error="invalid_token",
    error_description="No authorization provided".
divergences:
- field: grant_types_supported
  note: >-
    The RFC 8414 document advertises three grants (authorization_code, refresh_token,
    jwt-bearer) while the OIDC document advertises only authorization_code. The OIDC
    document also lists a full_access scope the OAuth document omits, and the OAuth
    document omits profile/email/phone. The two discovery documents are not in sync;
    recorded as observed rather than merged silently.
x-evidence:
  fetched: '2026-08-13'
  probes:
  - {url: 'https://auth.bluefishai.com/.well-known/oauth-authorization-server', status: 200}
  - {url: 'https://auth.bluefishai.com/.well-known/openid-configuration', status: 200}
  - {url: 'https://auth.bluefishai.com/.well-known/jwks.json', status: 200}
  - {url: 'https://platform.bluefishai.com/.well-known/oauth-protected-resource/mcp', status: 200}
  - {url: 'https://platform.bluefishai.com/mcp', status: 401}
  - {url: 'https://platform.bluefishai.com/connected-apps/authorize', status: 307}