ApiSubscription Configuration

Configure API subscriptions to control access and usage

ApiSubscription Configuration

Defines a subscription to one or more APIs, controlling access permissions and settings for API consumers.

Schema Properties

PropertyTypeRequiredDefaultDescription
Apisstring[]Yes-Array of API names that this subscription grants access to
IsActiveboolNotrueWhether the subscription is active
ParametersDictionary<string, object>No{}Additional configuration parameters for the subscription
AdditionalHeadersDictionary<string, object>No{}HTTP headers to include in requests made under this subscription
VariablesDictionary<string, string>No{}Variables specific to this subscription

YAML Example

apiVersion: weik.io/v1
kind: ApiSubscription
metadata:
  name: partner-subscription
spec:
  Apis:
    - northwind-api
    - products-api
    - orders-api
  IsActive: true
  Parameters:
    RateLimit: 1000
    RateLimitPeriod: hour
    MaxConcurrentRequests: 10
    EnableCaching: true
  AdditionalHeaders:
    X-Partner-Id: partner-123
    X-Request-Source: partner-portal
    X-Environment: production
  Variables:
    SubscriptionTier: premium
    DataCenter: us-east

Usage Notes

Use ApiSubscription configuration to manage access to your APIs. Each subscription can grant access to multiple APIs and can include subscription-specific settings.

The Apis array lists the API names that subscribers can access. Ensure these API names match existing API configurations.

The AdditionalHeaders are automatically included in all requests made under this subscription. Use this to add tracking headers, authentication context, or routing information.

Common parameters include:

  • RateLimit - Maximum number of requests allowed
  • RateLimitPeriod - Time period for rate limiting (second, minute, hour, day)
  • MaxConcurrentRequests - Maximum simultaneous requests
  • EnableCaching - Whether to cache responses for this subscription

Subscriptions can be deactivated by setting IsActive to false without deleting the configuration.