How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Elastic Path Offerings API

An offering is a combination of plans and pricing options; plans are combined with one or more pricing options to form an offering. For example, your company provides online streaming of movies, web-series, and music. Your customers can purchase these services through either a weekly or monthly pricing option.Offering plans can be either:- a subscription plan, created within an offering.- a Product Experience Manager product, see [**Create a product**](/docs/api/pxm/products/create-product)### Offering ExamplesOfferings can have any combination of plans and pricing options. The pricing of an offering is determined by the pricing you have configured for your plans and pricing options.| Example | Plan | Pricing options | Offering || --- | --- | --- | --- || Single plan and pricing option | One plan with a plan price of $50 | A monthly pricing option with a 5% discount | An offering with a monthly pricing option for $47.50 a month || Single plan with multiple pricing options | One plan with a plan price of $50 | A monthly pricing option with a 5% discountA yearly pricing option with a 10% discount | An offering with two pricing options: A monthly pricing option for $47.50 a monthA yearly pricing option for $45 a month || Multiple plans and pricing option | Two plans: One plan with a plan price of $50.One plan with a plan price of $75. | A monthly pricing option with a 5% discount. | An offering with a monthly pricing option for $118.75 a month. | | Multiple plans with multiple pricing options | Two plans: One plan with a plan price of $50.One plan with a plan price of $75. | A monthly pricing option with a 5% discountA yearly pricing option with a 10% discount | An offering with two pricing options: A monthly pricing option for $118.75 a monthA yearly pricing option for $112.50 a month | ### Building an OfferingWhen you are building an offering:- you can create new pricing options and plans.- you can modify existing plans and pricing options. For example, you can modify the plan price or any attributes of a pricing option included in the offering.Here's how you build an offering:When [**building your offerings**](/docs/api/subscriptions/build-offering) you must supply the plans and pricing options that a customer can choose. An offering can consist of many combinations of a plan or pricing options, depending on the plans and services you offer.Plans can either be subscription plans or Product Experience Manager products. To create a Product Experience Manager product, see [**Create a product**](/docs/api/pxm/products/create-product)Pricing options are the rules that govern your subscription, for example, any discount. - You can combine and reuse pricing options for as many plans as you want, making it quick and easy to create your subscription offerings. - An offering must have at least one pricing option. - Each plan must have the appropriate pricing option associated with itWhen a [**customer**](/docs/api/subscriptions/subscribers) chooses a plan and pricing option, a subscription is created. See [**Subscriptions**](/docs/api/subscriptions/subscriptions). Elastic Path Subscriptions manages the billing and recurring payments associated with the subscription. See [**Invoicing and Billing**](/docs/api/subscriptions/jobs).### Editing OfferingsAfter saving an offering, you can, at any time:- update an offering's details, for example, name or description. See [**Update an Offering**](/docs/api/subscriptions/update-offering).- update an existing plan in an offering. See [**Update a plan in an offering**](/docs/api/subscriptions/update-offering-plan)- add a new plan in an offering. See [**Create a plan inside an offering**](/docs/api/subscriptions/create-offering-plan)- remove plans. See [**Remove a plan from an offering**](/docs/api/subscriptions/delete-offering-plan).- update an existing pricing option in an offering. See [**Update a pricing option in an offering**](/docs/api/subscriptions/update-offering-pricing-option)- add a new pricing option to an offering. See [**Create a pricing option inside an offering**](/docs/api/subscriptions/create-offering-pricing-option).- remove pricing options. See [**Removing a pricing option from an offering**](/docs/api/subscriptions/delete-offering-plan).Any modifications that you make to offerings, and plans or pricing options in an offering, does not affect any active subscriptions. The changes take effect on all new subscriptions that are created.

Elastic Path Offerings API is one of 100 APIs that Elastic Path publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Offerings. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 25 operations across 11 paths, and defines 97 schemas. It is described by OpenAPI 3.2.0, at version 26.0427.7514362.

Requests are made against 2 base URLs: https://euwest.api.elasticpath.com, https://useast.api.elasticpath.com.

25 operations 11 paths 97 schemas 5 DELETE9 GET7 POST4 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
26.0427.7514362
Base URL
https://useast.api.elasticpath.com
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Elastic Path Offerings API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (BearerToken). By default, every request must be authenticated.

Paths & Operations 25

Across 11 paths, the API surfaces 25 operations — 5 DELETE, 9 GET, 7 POST, 4 PUT. Each is listed below with its method, path, parameters, and response codes.

Offerings 25

An offering is a combination of plans and pricing options; plans are combined with one or more pricing options to form an offering. For example, your company provides online strea…

POST
/v2/subscriptions/offerings
Create an offering
CreateOffering 1 param body → 201400500
GET
/v2/subscriptions/offerings
List offerings
ListOfferings 4 params → 200400500
POST
/v2/subscriptions/offerings/build
Build an offering
BuildOffering body → 201400500
GET
/v2/subscriptions/offerings/{offering_uuid}
Get offering
GetOffering 2 params → 200400404500
DELETE
/v2/subscriptions/offerings/{offering_uuid}
Delete offering
DeleteOffering 1 param → 204500
PUT
/v2/subscriptions/offerings/{offering_uuid}
Update an offering
UpdateOffering 1 param body → 200400403404409500
GET
/v2/subscriptions/offerings/{offering_uuid}/features/{feature_uuid}
Get a feature in an offering
GetOfferingFeature 2 params → 200400404500
PUT
/v2/subscriptions/offerings/{offering_uuid}/features/{feature_uuid}
Updates a feature in an offering
UpdateOfferingFeature 2 params body → 200400403404409500
DELETE
/v2/subscriptions/offerings/{offering_uuid}/features/{feature_uuid}
Remove a feature from an offering
DeleteOfferingFeature 2 params → 204400403
POST
/v2/subscriptions/offerings/{offering_uuid}/features/attach
Attach a feature
AttachOfferingFeature 1 param body → 200400403404500
GET
/v2/subscriptions/offerings/{offering_uuid}/pricing-options
List an offering's pricing options
ListOfferingPricingOptions 3 params → 200404500
POST
/v2/subscriptions/offerings/{offering_uuid}/pricing-options
Create a pricing option inside an offering
CreateOfferingPricingOption 1 param body → 201400403404409500
GET
/v2/subscriptions/offerings/{offering_uuid}/pricing-options/{pricing_option_uuid}
Get a pricing option in an offering
GetOfferingPricingOption 2 params → 200400404500
PUT
/v2/subscriptions/offerings/{offering_uuid}/pricing-options/{pricing_option_uuid}
Update a pricing option in an offering
UpdateOfferingPricingOption 2 params body → 200400403404409500
DELETE
/v2/subscriptions/offerings/{offering_uuid}/pricing-options/{pricing_option_uuid}
Remove a pricing option from an offering
DeleteOfferingPricingOption 2 params → 204400403
GET
/v2/subscriptions/offerings/{offering_uuid}/features
List an offering's features
ListOfferingFeatures 3 params → 200404500
POST
/v2/subscriptions/offerings/{offering_uuid}/features
Create a feature directly inside an offering
CreateOfferingFeature 1 param body → 201400403404409500
GET
/v2/subscriptions/offerings/{offering_uuid}/plans
List an offering's plans
ListOfferingPlans 3 params → 200404500
POST
/v2/subscriptions/offerings/{offering_uuid}/plans
Create a plan inside an offering
CreateOfferingPlan 1 param body → 201400403404409500
GET
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}
Get a plan in an offering
GetOfferingPlan 2 params → 200400404500
PUT
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}
Update a plan in an offering
UpdateOfferingPlan 2 params body → 200400403404409500
DELETE
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}
Remove a plan from an offering
DeleteOfferingPlan 2 params → 204400403
GET
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}/relationships/pricing_options
List the pricing options available to a plan in an offering
ListOfferingPlanPricingOptions 2 params → 200404500
POST
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}/relationships/pricing_options
Adds an offering's pricing options to the plan
AddOfferingPlanPricingOptions 2 params body → 200400403404409500
DELETE
/v2/subscriptions/offerings/{offering_uuid}/plans/{plan_uuid}/relationships/pricing_options
Removes an offering's pricing options from the plan
RemoveOfferingPlanPricingOptions 2 params body → 200400403404409500

Schemas 97

The contract defines 97 schemas that model the data the API accepts and returns. The most detailed are PricingOptionUpdateAttributes (15 properties), PricingOptionAttributes (15 properties), BuildOffering (9 properties), PlanUpdateAttributes (7 properties). Each schema is shown below with its type and property counts.

OfferingPlanResponseAttributes
OfferingCreate
object
3 properties 2 required
SubscriptionFeatureType
string
OfferingPlanExtraAttributes
object
1 property
Relationship
FeaturePromotion
object
3 properties 2 required
LeadTime
object
Configuration of the lead time to generate an invoice ahead of time in a pro-forma state
2 properties 2 required
OfferingPlanExternalRefMeta
string
The offerings plan externalref value
NullablePrice
objectnull
SubscriptionOfferingFeatureType
string
LinkObject
object
3 properties
OwnerMeta
string
The owner of a resource, either store or organization.
ExternalRefUpdate
stringnull
A unique attribute that you could use to contain information from another company system, for example. The maximum length is 2048 characters.
OfferingFeature
object
5 properties 3 required
Feature
object
4 properties 3 required
ExternalRef
string
A unique attribute that you could use to contain information from another company system, for example. The maximum length is 2048 characters.
OfferingPricingOptionPrices
object
The price of each plan within the offering that this pricing option may be applied to.
UUID
string
The unique identifier.
OfferingPricingOption
object
5 properties 3 required
FeatureAccessAttributes
object
2 properties 2 required
Offering
object
5 properties 3 required
Timestamps
object
2 properties 2 required
OfferingPlanAttributes
OfferingPlanUpdateExtraAttributes
object
1 property
ActivePlan
boolean
Whether a plan is active on a subscription using that offering. The activeplan attribute is null if a plan is not active in a subscription.
PricingOptionAttributes
object
15 properties 8 required
OfferingPlan
object
5 properties 3 required
OfferingBuildConfiguredFeatures
object
Map of feature configurations keyed by plan UUID or externalref
NullablePriceUnits
objectnull
The timeframe during which the plan price is applicable. For example, for a streaming service, the price is $12.99 and the unit is months and the amount is 1.…
2 properties 2 required
OfferingFeatureCreate
object
2 properties 2 required
PlanAttributes
object
7 properties 1 required
RelationshipsRequest
object
Enumerates a list of resources that are related.
1 property 1 required
RelationshipLinks
object
Links are used to allow you, as an API consumer, to move between requests. Single entities use a self parameter with a link to that specific resource. Sometime…
1 property
FeatureConfigPromotionAttributes
object
Configures a promotion feature against a plan in an offering, indicating that the referenced feature is a benefit of that plan. The tag of the specific promoti…
2 properties 2 required
OfferingUpdate
object
4 properties 2 required
ManyRelationship
object
The list of resources that are related.
2 properties
OfferingPlanPrices
object
A list of plan prices for each of its pricing options.
FeatureMeta
object
2 properties 2 required
FeatureResponseAttributes
PlanResponseAttributes
OfferingPlanResponseExtraAttributes
object
1 property 1 required
ProrationPolicyUpdateRelationshipAttributes
objectnull
2 properties 2 required
FeaturePromotionAttributes
object
2 properties 2 required
OfferingPricingOptionCreate
object
2 properties 2 required
OfferingUpdateAttributes
object
3 properties
FeatureTag
string
A tag to add to the customer's account when entitled to the feature.
OfferingIncludes
object
3 properties
OfferingBuildPricingOptionAssociations
object
A map of plans keyed by plan UUID or externalref to a list of associated pricing options, similarly keyed.
NullableLeadTime
objectnull
Configuration of the lead time to generate an invoice ahead of time in a pro-forma state
2 properties 2 required
NotificationSchedule
object
3 properties 3 required
OfferingPlanPriceForPricingOption
object
2 properties
OfferingPlanCreate
object
3 properties 2 required
FeatureAttributes
object
4 properties 2 required
FeaturePlanConfiguration
object
1 property 1 required
FeatureConfigAccessAttributes
object
Configures an access feature against a plan in an offering, indicating that the referenced feature is a benefit of that plan.
1 property 1 required
ProrationPolicyType
string
FeatureUsageAttributes
object
4 properties 4 required
Relationships
Relationships are established between different subscription entities. For example, a plan and a pricing option are related to an offering, as both are attache…
PriceUnits
object
The timeframe during which the plan price is applicable. For example, for a streaming service, the price is $12.99 and the unit is months and the amount is 1.…
2 properties 2 required
OfferingBuildPlanFeatures
object
A map of configurations indicating which features are available for the plan
SubscriptionOfferingPricingOptionType
string
SingleRelationship
object
The subscription resource that is related.
2 properties
PricingOptionResponseAttributes
BuildOffering
object
9 properties 3 required
FeatureConfigUsageAttributes
object
Configures a usage feature against a plan in an offering, indicating that the referenced feature is a benefit of that plan. The default value that the usage me…
2 properties 2 required
OfferingAttributes
object
3 properties 1 required
PlanUpdateAttributes
object
7 properties
Links
object
PlanMeta
object
5 properties 2 required
RelationshipData
object
2 properties 2 required
OfferingPricingOptionPriceForPlan
object
2 properties
SubscriptionOfferingType
string
LinkURI
stringnull
Link
OfferingPricingOptionUpdate
object
3 properties 3 required
OfferingPlanUpdate
object
3 properties 3 required
FeaturePlanConfigurationUpdate
objectnull
1 property 1 required
OfferingMeta
object
3 properties 3 required
SubscriptionOfferingPlanType
string
OfferingFeatureAttach
object
A list of feature IDs to attach to the offering. See [List Features](/docs/api/subscriptions/list-features).
1 property 1 required
Price
FeatureConfiguration
object
1 property 1 required
OfferingRelationships
object
1 property
OfferingPricingOptionMeta
object
6 properties 2 required
OfferingFeatureUpdate
object
3 properties 3 required
ProrationPolicyRelationshipAttributes
object
2 properties 2 required
Error
object
4 properties 2 required
OfferingUpdateRelationships
object
1 property
PriceFormatting
object
3 properties 3 required
FeatureUpdateAttributes
object
4 properties
OfferingResponseAttributes
OfferingPlanUpdateAttributes
ErrorResponse
object
1 property 1 required
ActivePricingOption
boolean
Whether a pricing option is active on a subscription using that offering. The activepricingoption attribute is null if a pricing option is not active in a subs…
DisplayPrice
object
3 properties
OfferingBuildPlanPricingOptions
array
PricingOptionUpdateAttributes
object
15 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

elastic-path-offerings-api-openapi.yml Raw ↑

Other APIs Elastic Path publishes across the network.

Elastic Path GraphQL API
Elastic Path Account Addresses API
Elastic Path Account Authentication Settings API
Elastic Path Account Cart Associations API
Elastic Path Account Management Authentication API
Elastic Path Account Members API
Elastic Path Account Membership API
Elastic Path Account Membership Settings API
Elastic Path Account Tags API
Elastic Path Accounts API
Elastic Path Administrator Latest Releases Catalog API API
Elastic Path Application Keys API
Where this information came from

This is an independent, third-party profile of Elastic Path Offerings API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.