Create Offer
POST/courses/offers
Create a membership offer. Requires a Location token with courses.write. Send Version: v3. Returns the full offer. source is always membership. locationId, userId, originId, and addProductToMembers are not accepted. Non-free type still requires payment integrations upstream.
Request
Version stringrequired
API Version
Available options
v3locationId stringrequired
Location id or sub-account id is required.
Possible values: non-empty
- application/json
- Body
- Example (auto)
Bodyrequired
descriptionstringnullable
typestring
Available options
freeonetimesubscriptionamountnumber
currencystring
priceDisplayOverridestringnullable
isLivePaymentModeboolean
intervalstring
Available options
weekmonthyeardayintervalCountnumber
trialDaysnumber
setupFeenumber
numberOfPaymentsnumber
visibilitystring
Available options
publisheddraftaccessDatestringnullable
daysOfAccessnumbernullable
customJsstringnullable
customCssstringnullable
customHeaderstringnullable
customFooterstringnullable
couponsstring[]
posterImagestringnullable
titlestringrequired
productIdsstring[]required
Product ids included in this offer
{
"description": "string",
"type": "free",
"amount": 0,
"currency": "USD",
"priceDisplayOverride": "string",
"isLivePaymentMode": true,
"interval": "week",
"intervalCount": 0,
"trialDays": 0,
"setupFee": 0,
"numberOfPayments": 0,
"visibility": "published",
"accessDate": "string",
"daysOfAccess": 0,
"customJs": "string",
"customCss": "string",
"customHeader": "string",
"customFooter": "string",
"coupons": [
"string"
],
"posterImage": "string",
"title": "Founding members",
"productIds": [
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
]
}
Created
- application/json
- Schema
- Example (auto)
Schema
idstringrequired
titlestringrequired
descriptionstringnullablerequired
typestringrequired
Available options
freeonetimesubscriptionsourcestringrequired
amountnumbernullablerequired
currencystringnullablerequired
priceDisplayOverridestringnullablerequired
isLivePaymentModebooleannullablerequired
intervalstringnullablerequired
Available options
weekmonthyeardayintervalCountnumbernullablerequired
trialDaysnumbernullablerequired
setupFeenumbernullablerequired
numberOfPaymentsnumbernullablerequired
visibilitystringrequired
Available options
publisheddraftaccessDatestringnullablerequired
daysOfAccessnumbernullablerequired
customJsstringnullablerequired
customCssstringnullablerequired
customHeaderstringnullablerequired
customFooterstringnullablerequired
couponsobject[]nullablerequired
posterImagestringnullablerequired
paymentProductIdstringnullablerequired
Read-only Payments catalog id generated by membership
paymentPriceIdstringnullablerequired
Read-only Payments price id generated by membership
productsobject[]required
createdAtstringrequired
updatedAtstringrequired
{
"id": "c3d4e5f6-7890-4123-cdef-123456789012",
"title": "Founding members",
"description": "string",
"type": "free",
"source": "membership",
"amount": 0,
"currency": "string",
"priceDisplayOverride": "string",
"isLivePaymentMode": true,
"interval": "week",
"intervalCount": 0,
"trialDays": 0,
"setupFee": 0,
"numberOfPayments": 0,
"visibility": "published",
"accessDate": "string",
"daysOfAccess": 0,
"customJs": "string",
"customCss": "string",
"customHeader": "string",
"customFooter": "string",
"coupons": [
{}
],
"posterImage": "string",
"paymentProductId": "string",
"paymentPriceId": "string",
"products": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"title": "Onboarding",
"description": "Start here"
}
],
"createdAt": "string",
"updatedAt": "string"
}