Yappes OAuth¶
Overview¶
Yappes OAuth is a platform-managed OAuth 2.0 authentication model. The platform admin configures the OAuth server in the Admin Console; API providers enable Yappes OAuth on APIs and define scopes per endpoint; consumers receive per-application client credentials after subscription.
Open flows in API Manager under Manage APIs, Application, API Marketplace → My Subscriptions, and Approval Workflow → Pending Approvals.
Note
Before you proceed as an API provider, ensure a platform-admin has completed OAuth 2.0 Configuration in the Admin Console. Without it, Yappes OAuth cannot be selected during API onboarding.
Why This Matters¶
- Platform-managed token issuance and validation — no external OAuth server required.
- Fine-grained access control through per-endpoint scopes.
- Consumers select scopes when creating applications; approvers can review scope selections.
- Gateway-enforced protection for subscribed APIs (not limited to Tryout).
Yappes OAuth vs OAuth 2 (upstream):
| Concept | OAuth 2 (API Authentication) | Yappes OAuth |
|---|---|---|
| Token server | Provider-configured external URL | Platform-managed (Admin Console) |
| Grant type | Client Credentials or Authorization Code | Client Credentials only |
| Scopes | Single scope field on auth form | Per-endpoint scopes; consumer selects at app creation |
| Credentials | Provider enters upstream client ID/secret | Issued per application after subscription |
| Protection | Tryout only | Full subscription + gateway enforcement |
Roles¶
| Role | Responsibility |
|---|---|
| platform-admin | Configure OAuth 2.0 server in Admin Console |
| api-developer / api-product-manager | Enable Yappes OAuth on APIs; define endpoint scopes |
| api-consumer | Create applications; select scopes; use client credentials |
| Approver | Review and approve requested OAuth scopes |
End-to-End Flow¶
sequenceDiagram
participant Admin as Platform Admin
participant Provider as API Provider
participant Consumer as Consumer
participant Approver as Approver
participant Platform as Platform OAuth Server
Admin->>Platform: Configure OAuth 2.0 in Admin Console
Provider->>Provider: Enable Yappes OAuth on API
Provider->>Provider: Define scopes per endpoint
Consumer->>Consumer: Create application and select scopes
Approver->>Consumer: Approve scope selections
Consumer->>Platform: Request token with client credentials
Platform->>Consumer: Return access token
Consumer->>Provider: Call API with Bearer token
- Admin configures token endpoints in OAuth 2.0 Configuration.
- Provider enables
Yappes OAuthon the API (Step 2 → Authentication). - Provider adds scopes per endpoint (Step 2 → Endpoint Details →
OAuthtab). - Consumer creates an application and selects scopes per OAuth-enabled API.
- Approver reviews scope selections (if an approval workflow is attached).
- Consumer views credentials in
My Subscriptions → Security. - Consumer uses
Sample Request(auto-generated Bearer token) or calls the token URL manually.
Provider: Enable Yappes OAuth on an API¶
Path: Manage APIs → My APIs → edit API → Step 2
Roles: api-developer, api-product-manager, or platform-admin
- Go to the
Authenticationsection and clickAdd. - Select
Yappes OAuthas the authentication type. - Review the prefilled, read-only fields:
Access Token URL— from Admin Console OAuth configRefresh Token URL— from Admin Console OAuth configAvailable Scopes— auto-populated from endpoint scopes (read-only multiselect)- Click
Add Authentication.
Info
If OAuth 2.0 is not configured in the Admin Console, a warning appears: "OAuth configuration is not set up by your administrator." You cannot save Yappes OAuth until the admin completes configuration.
For general onboarding context, see Onboard APIs.
Provider: Define OAuth Scopes¶
Path: Step 2 → Endpoint Details → OAuth tab
The OAuth tab is visible only when the API authentication type is Yappes OAuth.
- Open the
OAuthtab for an endpoint. - Click
Add Scope. - Enter scope details:
| Field | Rules |
|---|---|
| Scope name * | Required; must match ^[a-zA-Z][a-zA-Z0-9._-]*$ |
| Description * | Required; maximum 500 characters |
- Click
Addto save the scope. - Repeat for each endpoint that requires scoped access.
- To remove a scope from an unpublished API, use
Deleteon the scope row.
Note
Scopes are tied to individual endpoints. Display labels may include the endpoint name as a prefix.
Provider: Tryout with Yappes OAuth¶
Path: Step 2 → Tryout
When Yappes OAuth is enabled:
- An info banner explains that you need an application subscription with client credentials.
- Open the Tryout
Authmodal and enterClient IDandClient Secretfrom a subscribed application. - On successful authentication, the Bearer token is applied to Tryout requests.
- Until authenticated, the request shows a placeholder
[your auth token].
Consumer: Create Application with Scopes¶
Path: Manage APIs → Application → Create Application
Roles: api-consumer, api-developer, or organization owner
For the full step-by-step walkthrough, see Creating an application.
Attach to API¶
- Select
Attach to → APIand choose one or more APIs. - Select a rate plan for each API.
- For OAuth-enabled APIs, click the API pill under
OAuth enabled API (Click API to view the Scopes). - In the
Api Scope Detailsmodal, check or uncheck scopes, then clickSave. - Click
Submit for Approval.
Attach to API Group¶
- Select
Attach to → API Groupand choose one or more groups. - Select a rate plan for each group.
- For groups containing OAuth-enabled APIs, click the pill for each OAuth API within the group.
- Configure scopes in the
Api Scope Detailsmodal for each API. - Click
Submit for Approval.
Note
If you never open the scope modal, all scopes for that API are included by default on submit. Scope IDs are sent as scopeIds on each entry in the application's selectedIds payload.
Edit Application Scopes¶
Path: Manage APIs → Application → View → Details
Consumers can update OAuth scope selections on an existing application using the same Api Scope Details modal as create. Click an OAuth API pill, adjust scopes, click Save, then Update.
There is no read-only scope summary on the consumer Details tab. Approvers review scope selections in Pending Approvals.
For field-level details, see Application Details.
Approver: Review OAuth Scopes¶
Path: Approval Workflow → Pending Approvals
When reviewing an application subscription request:
- Open the approval modal for the application subscription.
- OAuth-enabled APIs appear as selectable pills.
- Select or unselect scopes per OAuth API.
- Approve or reject the request with optional comments.
For general approval workflow guidance, see Pending Approvals.
Consumer: Credentials and API Access¶
Path: API Marketplace → My Subscriptions
After subscribing with a Yappes OAuth-enabled API:
Security tab¶
The Security tab shows read-only fields with copy buttons:
| Field | Description |
|---|---|
| Access Token URL | Platform token endpoint |
| Refresh Token URL | Platform refresh endpoint |
| Client ID | Application client identifier |
| Client Secret | Application client secret |
Sample Request tab¶
For Yappes OAuth subscriptions, the Sample Request tab automatically:
- Retrieves client credentials for the application.
- Requests an access token using the
client_credentialsgrant. - Injects the Bearer token into the sample cURL command.
Manual token request¶
You can also request a token directly:
curl -X POST "<access_token_url>" \
-H "Content-Type: application/json" \
-d '{"grant_type":"client_credentials","client_id":"<client_id>","client_secret":"<client_secret>"}'
Use the returned access_token in API requests:
curl -X GET "<api_endpoint_url>" \
-H "Authorization: Bearer <access_token>"
For subscription management details, see My Subscriptions.