Virto Commerce · Authentication Profile
Virto Commerce Authentication
Authentication
Virto Commerce secures its APIs with apiKey, http, and oauth2 across 5 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the clientCredentials and password flow(s).
B2B eCommerceCatalog ManagementOrder ManagementPricingInventoryShopping CartCustomer ManagementMarketingPaymentsShippingSubscriptionHeadless CommerceOpen-Source.NETWebhookEvent-DrivenCloudEventsGraphQLReturnsMCPB2B Quotes
Methods: apiKey, http, oauth2
Schemes: 5
OAuth flows: clientCredentials, password
API key in: header, query
Security Schemes
oauth2 oauth2
· flows: password, clientCredentials
api_key apiKey
· in: query (api_key)
api_key_header apiKey
· in: header (api_key)
http-signature http
scheme: signature
basic http
scheme: basic
Source
Authentication Profile
generated: '2026-08-13'
method: searched
source: 'openapi/virto-commerce-catalog-api-openapi.yml, openapi/virto-commerce-companies-and-contacts-api-openapi.yml,
openapi/virto-commerce-event-bus-api-openapi.yml, openapi/virto-commerce-inventory-api-openapi.yml,
openapi/virto-commerce-marketing-api-openapi.yml, openapi/virto-commerce-order-management-api-openapi.yml,
openapi/virto-commerce-pricing-api-openapi.yml, openapi/virto-commerce-quotes-api-openapi.yml, openapi/virto-commerce-returns-api-openapi.yml,
openapi/virto-commerce-shopping-cart-api-openapi.yml, openapi/virto-commerce-store-api-openapi.yml,
openapi/virto-commerce-virtocommerce-platform-api-openapi.yml ...
; upgraded 2026-08-13 from the live discovery document https://virtostart-demo-admin.govirto.com/.well-known/openid-configuration
(HTTP 200, captured in well-known/virto-commerce-openid-configuration.json) and https://docs.virtocommerce.org/platform/developer-guide/Fundamentals/Security/authentication/api-key-authentication/'
summary:
types:
- apiKey
- http
- oauth2
api_key_in:
- header
- query
oauth2_flows:
- clientCredentials
- password
schemes:
- name: oauth2
type: oauth2
flows:
- flow: password
tokenUrl: /connect/token
scopes: 0
- flow: clientCredentials
tokenUrl: /connect/token
scopes: 0
description: OAuth2 Resource Owner Password Grant flow
sources:
- openapi/virto-commerce-catalog-api-openapi.yml
- openapi/virto-commerce-companies-and-contacts-api-openapi.yml
- openapi/virto-commerce-event-bus-api-openapi.yml
- openapi/virto-commerce-inventory-api-openapi.yml
- openapi/virto-commerce-marketing-api-openapi.yml
- openapi/virto-commerce-order-management-api-openapi.yml
- openapi/virto-commerce-pricing-api-openapi.yml
- openapi/virto-commerce-quotes-api-openapi.yml
- openapi/virto-commerce-returns-api-openapi.yml
- openapi/virto-commerce-shopping-cart-api-openapi.yml
- openapi/virto-commerce-store-api-openapi.yml
- openapi/virto-commerce-virtocommerce-platform-api-openapi.yml
- openapi/virto-commerce-webhooks-api-openapi.yml
- name: api_key
type: apiKey
in: query
parameter: api_key
description: API Key authentication
sources:
- openapi/virto-commerce-catalog-api-openapi.yml
- openapi/virto-commerce-companies-and-contacts-api-openapi.yml
- openapi/virto-commerce-event-bus-api-openapi.yml
- openapi/virto-commerce-inventory-api-openapi.yml
- openapi/virto-commerce-marketing-api-openapi.yml
- openapi/virto-commerce-order-management-api-openapi.yml
- openapi/virto-commerce-pricing-api-openapi.yml
- openapi/virto-commerce-quotes-api-openapi.yml
- openapi/virto-commerce-returns-api-openapi.yml
- openapi/virto-commerce-shopping-cart-api-openapi.yml
- openapi/virto-commerce-store-api-openapi.yml
- openapi/virto-commerce-virtocommerce-platform-api-openapi.yml
- openapi/virto-commerce-webhooks-api-openapi.yml
- name: api_key_header
type: apiKey
in: header
parameter: api_key
description: API Key authentication (alternative via header)
sources:
- openapi/virto-commerce-catalog-api-openapi.yml
- openapi/virto-commerce-companies-and-contacts-api-openapi.yml
- openapi/virto-commerce-event-bus-api-openapi.yml
- openapi/virto-commerce-inventory-api-openapi.yml
- openapi/virto-commerce-marketing-api-openapi.yml
- openapi/virto-commerce-order-management-api-openapi.yml
- openapi/virto-commerce-pricing-api-openapi.yml
- openapi/virto-commerce-quotes-api-openapi.yml
- openapi/virto-commerce-returns-api-openapi.yml
- openapi/virto-commerce-shopping-cart-api-openapi.yml
- openapi/virto-commerce-store-api-openapi.yml
- openapi/virto-commerce-virtocommerce-platform-api-openapi.yml
- openapi/virto-commerce-webhooks-api-openapi.yml
- name: http-signature
type: http
scheme: signature
description: HTTP Signature authentication using Authorization header
sources:
- openapi/virto-commerce-catalog-api-openapi.yml
- openapi/virto-commerce-companies-and-contacts-api-openapi.yml
- openapi/virto-commerce-event-bus-api-openapi.yml
- openapi/virto-commerce-inventory-api-openapi.yml
- openapi/virto-commerce-marketing-api-openapi.yml
- openapi/virto-commerce-order-management-api-openapi.yml
- openapi/virto-commerce-pricing-api-openapi.yml
- openapi/virto-commerce-quotes-api-openapi.yml
- openapi/virto-commerce-returns-api-openapi.yml
- openapi/virto-commerce-shopping-cart-api-openapi.yml
- openapi/virto-commerce-store-api-openapi.yml
- openapi/virto-commerce-virtocommerce-platform-api-openapi.yml
- openapi/virto-commerce-webhooks-api-openapi.yml
- name: basic
type: http
scheme: basic
description: Basic authentication using username and password
sources:
- openapi/virto-commerce-catalog-api-openapi.yml
- openapi/virto-commerce-companies-and-contacts-api-openapi.yml
- openapi/virto-commerce-event-bus-api-openapi.yml
- openapi/virto-commerce-inventory-api-openapi.yml
- openapi/virto-commerce-marketing-api-openapi.yml
- openapi/virto-commerce-order-management-api-openapi.yml
- openapi/virto-commerce-pricing-api-openapi.yml
- openapi/virto-commerce-quotes-api-openapi.yml
- openapi/virto-commerce-returns-api-openapi.yml
- openapi/virto-commerce-shopping-cart-api-openapi.yml
- openapi/virto-commerce-store-api-openapi.yml
- openapi/virto-commerce-virtocommerce-platform-api-openapi.yml
- openapi/virto-commerce-webhooks-api-openapi.yml
docs: https://docs.virtocommerce.org/platform/developer-guide/Fundamentals/Security/authentication/api-key-authentication/
deployment_note: 'Virto Commerce is self-hosted: the authorization server is the operator''s own platform
instance, running OpenIddict. All endpoints below are relative to that host. The issuer recorded here
is Virto''s own public reference deployment.'
discovery:
openid_configuration: well-known/virto-commerce-openid-configuration.json
oauth_authorization_server: well-known/virto-commerce-oauth-authorization-server.json
issuer: https://virtostart-demo-admin.govirto.com/
authorization_endpoint: /connect/authorize
token_endpoint: /connect/token
userinfo_endpoint: /connect/userinfo
end_session_endpoint: /connect/logout
jwks_uri: /.well-known/jwks
jwks_note: Non-conventional path — /.well-known/jwks, not jwks.json. Served, HTTP 200.
grant_types_supported:
- password
- refresh_token
- client_credentials
- authorization_code
- impersonate
- external_sign_in
grant_types_note: impersonate and external_sign_in are Virto-specific grants beyond the four the OpenAPI
declares; the spec only shows password and client_credentials.
code_challenge_methods_supported:
- plain
- S256
token_endpoint_auth_methods_supported:
- client_secret_post
- private_key_jwt
- client_secret_basic
id_token_signing_alg_values_supported:
- RS256
response_types_supported:
- code
scopes_supported:
- openid
- offline_access
require_pushed_authorization_requests: false
mtls_bound_tokens: false
api_key:
schemes:
- api_key_header (header)
- api_key (query string)
recommended: api_key_header
warning: The query-string variant places a credential in access logs and proxy history; prefer the header.
used_by: Virto's own MCP adapter authenticates with a platform API key in the api_key header.
authorization_model:
mechanism: platform permissions, not OAuth scopes
note: scopes_supported is openid + offline_access only. Access control is Virto's fine-grained permission
system — colon-namespaced strings such as webhooks:read, webhooks:update, webhooks:feed:read — granted
to roles. Permissions are NOT expressed in the OpenAPI, so a client cannot discover the permission
an operation needs; a 403 comes back with an empty body.
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/virto-commerce-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.