Skip to content

Coupon.create

POST /{namespace}/coupons

Creates a Coupon.

Noun
Coupon
Mode
do
Event
Coupon.created

Create makes a new Coupon from the inputs below. It is inherited: every Noun has get, list, create, update and delete.

Inputs

InputTypeRequiredDescription
percentOffnumberThe percent taken off each charge it applies to; set this or amountOff. Never randomized.
amountOffmoneyThe fixed amount taken off each charge it applies to. Never randomized.
durationstringrequiredHow long it applies: once, repeating for months, or forever.
monthsintegerHow many months a repeating Coupon applies.
codestringThe promotion code a buyer types at checkout, when the Coupon has one.
redeemBydatetimeThe last moment it can be redeemed.
maxRedemptionsintegerHow many times it can be redeemed across all Customers.

Outputs

OutputTypeRequiredDescription
couponCouponrequiredThe Coupon.

Effects

  • Emits Coupon.created.
  • Two-way: try, send, do.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.Coupon.create

When it waits

GateDefault
Decision classLow: two-way, nothing at stake
Delay windowNone: it runs once review passes.
LimitThe call Limit of the Permission it runs under.
Over the LimitIt waits pending for an Approval from the Founder. Approved, it runs; refused, it ends refused with limit-exceeded; unanswered by its deadline, it ends canceled.