API Product
What Is It For?
- Presents gateway APIs as products on the portal storefront
- Packages multiple proxies/proxy groups into one product
- Defines Free / Flat rate / Metered / Tiered plans with quota, rate limit, and approval
- Separates discoverability (visibility) from access (plan approval)
- Tracks subscriptions through organization-owned applications
Who Uses It?
-
Portal / product administrators: To create, package, plan, and publish products
-
Developers: To discover products and subscribe with an app + plan
-
Support / operations: To verify subscription and usage summaries
bilgi
Packaging inventory (which proxy is in which product?) → API Catalog.
App lifecycle / Unregister → Application Management.
Test→Prod → Application Promote.
Live quota/traffic → Traffic & Usage.
:::
Access
- Manager: Portal → API Products
- Developer Portal storefront: top menu APIs
- Requires portal product-management roles
Model
API Catalog (proxy / proxy group)
│ Select APIs from the Catalog
▼
API Product (proxyRefs + OpenAPI + Plans)
│ subscribe
▼
Portal App (organization) + Plan → ApiProductAppRegister
│
▼
App credential + ACL (packaged proxies)
- A subscription = (application, this product, chosen plan)
- Quota applies per subscription
- The same proxy can belong to multiple products
- With live WAITING/APPROVED subscriptions you cannot remove APIs from the package; you can only add
Create (wizard)
Creates an unpublished product. Typical steps: General → APIs → API Spec → Plans → Environment → Summary.
| Topic | Code reality |
|---|---|
| API selection | 1..n proxyRefs from Catalog (proxies and/or groups together) |
| Spec | Product-owned uploaded OpenAPI (JSON/YAML). Multi-proxy cannot derive from a single proxy swagger |
| Publish | After create the product is Unpublished; publish separately |
Manager detail tabs
API Specification and test console
Documentation management
| Tab | Contents |
|---|---|
| API Specification | Product OpenAPI / endpoints |
| Documentation | Portal documentation pages |
| Files | Downloadable files |
| Plans | Active/Retired plans; Duplicate; quota/rate limit/approval/pricing; on exceed Block 429 or Continue & charge |
| Subscriptions (N) | Read-only: org → app → plan + status + usage summary |
| Security | Consistent ACL-managed auth across packaged proxies; publish blocked when not ready |
| Visibility | Discoverability (access/approval stays on plans) |
| Danger Zone | Unpublish / Delete |
Manual plan approvals are not done on the product Subscriptions overview; they are under API Product App Registers / Approval Requests.
Plan types
| UI (EN) | Meaning |
|---|---|
| Free | Free |
| Flat rate | Fixed fee (not labeled “Subscription”) |
| Metered | Usage-based |
| Tiered | Tiered pricing |
Consumers pick exactly one plan per subscription. Approval is per plan: Auto approval / Approval Required. Product-level auto-approve is deprecated and should not be taught.
Visibility
| Type | Meaning |
|---|---|
| Public | Discoverable by everyone |
| Only logged in Organizations | Discoverable to signed-in orgs |
| Authorized Organizations | Discoverable to an authorized org list |
Visibility = discovery. Subscribe approval is on the plan.
Danger Zone
- Unpublish: Hides from the storefront; existing subscriptions may keep working
- Delete: Blocked while active subscriptions exist
Developer Portal product page
| Tab | Gate |
|---|---|
| Overview | Description + plan cards |
| API Specification | Auth summary, endpoints, Try It |
| Documentation | Published docs; locked if unpublished |
| Applications & Plans | Signed in — Register / + Add plan / Unregister by app |
| Dashboard & Traffic | Signed in + Features Analytics on — dashboard + traffic table |
| Files | File list |
Subscriptions start on the consumer side (product page or My Apps wizards). Manager app edit only supports Unregister.
Publish checklist
- Package APIs from Catalog
- Upload OpenAPI
- Define at least one Active plan (quota/rate/approval)
- Ensure Security is ready
- Set Visibility
- Publish
- Optionally verify packaging on API Catalog