G2 · Authentication Profile
G2 Authentication
Authentication
G2 secures its APIs with http, oauth2, and openIdConnect across 3 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode flow(s).
B2BSoftware DiscoverySoftware ReviewsBuyer IntentMarket IntelligenceProduct CatalogCompetitive IntelligenceReviewsData SolutionsMCP
Methods: http, oauth2, openIdConnect
Schemes: 3
OAuth flows: authorizationCode
API key in:
Security Schemes
AccountAPIToken http
scheme: bearer
G2OAuth oauth2
· flows: authorizationCode
OpenID Connect openIdConnect
Source
Authentication Profile
generated: '2026-08-29'
method: searched
source: >-
openapi/g2-api-v2-openapi.yaml, openapi/g2-data-solutions-openapi.yaml,
well-known/g2-openid-configuration.json,
https://documentation.g2.com/docs/developer-portal
docs: https://documentation.g2.com/docs/developer-portal
provider: G2
providerId: g2
summary:
types: [http, oauth2, openIdConnect]
oauth2_flows: [authorizationCode]
default_posture: >-
Every operation in both specs is protected. Operations declare AccountAPIToken and G2OAuth
together, so a caller may present either a Developer Portal account token or an OAuth
bearer token.
schemes:
- name: AccountAPIToken
type: http
scheme: bearer
header: 'Authorization: Bearer <token>'
issued_at: https://my.g2.com/developers
resource_owner: user | organization
expiry: One year after creation; regenerate to continue access.
permissions: >-
Per-endpoint Access selection made at token creation. Endpoints left unselected are not
accessible with that token, which is why a 403 here is frequently a token-configuration
problem rather than a plan problem.
revocation: Managed in the Developer Portal Access Tokens panel.
sources: [openapi/g2-api-v2-openapi.yaml, openapi/g2-data-solutions-openapi.yaml]
- name: G2OAuth
type: oauth2
flows:
- flow: authorizationCode
authorizationUrl: https://www.g2.com/oauth/authorize
tokenUrl: https://www.g2.com/oauth/token
revocationUrl: https://www.g2.com/oauth/revoke
introspectionUrl: https://www.g2.com/oauth/introspect
userinfoUrl: https://www.g2.com/oauth/userinfo
jwksUri: https://www.g2.com/oauth/discovery/keys
pkce: S256
refresh_token: supported
scopes: see scopes/g2-scopes.yml
client_registration:
dynamic: false
manual: https://my.g2.com/developers
confidential_clients: supported
redirect_uri_matching: exact
note: >-
Dynamic Client Registration (RFC 7591) is explicitly unsupported; clients must be
pre-registered. The authorization callback returns `code` WITHOUT `state`, which breaks
MCP SDK examples that require it.
sources: [openapi/g2-api-v2-openapi.yaml, openapi/g2-data-solutions-openapi.yaml]
- name: OpenID Connect
type: openIdConnect
discovery: https://www.g2.com/.well-known/openid-configuration
issuer: https://g2.com
id_token_alg: RS256
subject_types: [pairwise]
grant_types: [authorization_code, implicit_oidc, refresh_token]
token_endpoint_auth: [client_secret_basic, client_secret_post]
file: well-known/g2-openid-configuration.json
note: >-
Declared as an OIDC provider through discovery rather than as an openIdConnect
securityScheme in the OpenAPI; the OpenAPI models the same authorization server as
oauth2 + the `openid`/`profile` scopes.
mcp_authentication:
endpoint: https://mcp.g2.com/mcp
type: oauth2
flow: authorization_code_pkce
token_validation: >-
The MCP server validates access tokens against G2's introspection endpoint using its own
server-side credentials. Cross-application token introspection may need to be enabled on
the caller's OAuth app, otherwise a valid OAuth flow still yields 401 from the MCP server.
see_also: mcp/g2-mcp.yml
failure_modes:
- status: 401
title: Bad Credentials
causes: [missing token, malformed token, expired token (1-year account-token life), revoked token]
- status: 403
title: 'Missing <scope> scope'
causes: [OAuth app permission not enabled, scope not requested at authorization time]
- status: 403
title: Your current plan does not provide access to this resource
causes: [subscription entitlement, not authorization]
note: Not retryable. See errors/g2-problem-types.yml.
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.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/g2-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.