Skip to content

API products ​

An API product groups related open APIs. Once access is enabled, an Application can call those APIs at the specified version. Each product provides a Base URL, audience, scopes, schemas, quotas, and support information.

Open APIs and permissions in the Developer Console to view products and request access. Product names and descriptions are available in Chinese and English; scope, audience, and route identifiers remain fixed.

Basic concepts ​

NameDescriptionExample
ApplicationIntegration configuration for a product in one environmentSandbox Application for acme-workflow
API productA group of APIs with versions, addresses, and call requirementsOEM Core API
API access grantOperations, data range, and quota available to the current identityRead-only billing access for application identity

After creating an Application, request API access separately. Each request also checks the access token, organization, and resource permissions.

One Application supports application (service/confidential) and user (public + PKCE) identities. Each has a separate OAuth client and API access grant. Their permission states and revocation actions are independent.

Request API access ​

  1. Sign in to the Developer Console and open APIs and permissions for the target Application.
  2. Select Application permissions or User permissions for your scenario.
  3. Select an API product and review its permissions, version, and environment.
  4. Click Request access, select the required scopes, and submit. Access is enabled after automatic validation succeeds.

Permission states mean:

StateMeaningNext step
AvailableThe Application has no subscription to this API ProductClick “Request access”, choose one or more published scopes, and submit the request
Configuration requiredA legacy request needs actual scope provisioningCheck it and select Configure and enable
EnabledThe scope is configured and callable in the current environmentUse the scope and the audience/routes from the issued contract
Suspended / RevokedThe current API access grant is suspended or revokedContact product support
Not includedThe API Product is subscribed, but this scope is outside the approved setThe Console does not append scopes to an existing subscription; follow the support process for a new product grant

Each retry-safe request is bound to the current Application, environment, identity, and API product. Once submitted, the page shows its status and available actions.

The platform binds the requested scopes and audience to the current identity's OAuth client. Start testing when the status is Bound. For Drifted or Temporarily unverifiable, check the configuration or retry later.

Map scopes to APIs, events and resources ​

  1. Filter scopes by identity, product, status or data sensitivity in APIs and permissions.
  2. Inspect related APIs, events and resource boundaries, then select the minimum set. Bulk selection affects currently available scopes; it does not extend active grants.
  3. Review the complete selection. After saving, check grant status and actual binding status separately.
InformationMeaning
Related APIsPublic method and route; calls still require current scopes and resource access
Related eventsInformational associations, not subscriptions; absent registration does not prove that a resource has no events
Data sensitivityData classification, not customer scope or resource authorization
Resource boundaryCurrent Application, environment and request-time rules, not a grant for a particular customer or resource
Customer resource authorizationCurrent customer authorization must cover requested resources; API scopes alone are insufficient

Configure reception separately with the event guide. A visible permission or Active label does not replace invocation checks. Recover original unknown requests; read current state after a conflict before confirming.

Get call configuration ​

The platform creates the OAuth client after configuration validation succeeds. Obtain the Client ID, issuer, audience, scopes, and credentials from the Developer Console for sign-in or API calls.

See Integration entry points and permissions for the authorization model.

Integration guides ​

Choose a guide for your task, then configure the required permissions in your Application's APIs and permissions page.

API productIntegration guide
SaaS subscription and payment APICatalog, checkout and subscriptions; Platform pages
Token Packages and Multimodal APIPurchase packages, read allowance and invoke models
Independent Order PaymentOne-time orders and original payment recovery

The guides describe supported calls. Access still depends on the product status, Application permissions and user authorization in the current environment. Product updates do not add permissions to existing Applications.

Shared endpoints and unavailable capabilities ​

Request access by product for SaaS commerce (including optional free activation), Token, independent order payment, order management, and business operations. Endpoints in the same product use their corresponding scopes.

The shared endpoints below use their own user authentication rules and require no separate commerce permission. See each guide for paths and scopes.

CapabilityIntegration guideStatus
Application directory (1 operation)Read applications visible to the current customerDefined public endpoint; use the current environment contract
User authorization (5 operations)Read options, create, list, check and revokeDefined public endpoints; verify current person and business Scopes on each request
User and customer spacePersonal spaces and multi-application user correlationCurrent Application user authentication; no additional API Product; see guide for availability
Product access snapshotInterface description and restrictionsNot available to standard applications; excluded from the 28 public operations

Capability catalog ​

The main integration capabilities are listed below. Enable the corresponding API product and permissions before making a call.

CapabilityRepresentative operationCurrent status
Product accessQuery organization product state and entitlementsOnly authorized status fields are returned
SaaS subscriptionQuery, cancel, or change planSandbox API Product is implemented; Production is not open
Payment/refund statusQuery Checkout Operations and receive payment/refund eventsImplemented in Sandbox; redacted status only
Asynchronous operationsQuery Checkout outcome by operation_idImplemented in Sandbox
WebhooksReceive subscribed subscription, payment, refund, and access eventsImplemented in Sandbox; Webhook endpoint verification and automatic configuration required

The stable Sandbox commerce routes are:

  • GET /open-platform/v1/products (commerce.catalog.read)
  • POST /open-platform/v1/checkout-sessions (commerce.checkout.create)
  • GET /open-platform/v1/operations/{id} (commerce.checkout.read)
  • GET /open-platform/v1/subscriptions, GET /open-platform/v1/subscriptions/{id} (commerce.subscription.read)
  • POST /open-platform/v1/subscriptions/{id}:cancel, POST /open-platform/v1/subscriptions/{id}:change-plan (commerce.subscription.manage)

These routes are callable only after the current Application receives the matching API Product, scope, audience, and environment grant. Production routes are not open. The platform verifies provider callbacks; third parties receive redacted payment.* and payment.refund.* events through an approved Webhook Subscription.

Call requirements ​

  • Use only the contract Base URL, version, routes, and schemas.
  • Send a token with the required audience and least-privilege scopes.
  • Include an Idempotency-Key on every command.
  • Pin a supported version and monitor deprecation notices.
  • Do not infer external routes from unpublished pages, source code, or service hostnames.
  • Access data through public APIs rather than connecting directly to GoodVision databases.

Product status and environment ​

The platform publishes API products with the service version. Developers do not create or manually publish products. active permits configuration and calls; deprecated means disabled until reactivated; revoked means withdrawn. Product updates and service restarts do not automatically restore disabled or revoked products.

Product status, Application API access, and user consent are checked separately. After Sandbox acceptance, configure a separate Production Application, credentials, and scopes, and use the Production API version.

Developer documentation. Internal operations access is not required.