Skip to main content
PUT
/
coupons
/
{code}
LAGO_URL="https://api.getlago.com"
API_KEY="__YOUR_API_KEY__"

curl --location --request PUT "$LAGO_URL/api/v1/coupons/:code" \
  --header "Authorization: Bearer $API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "coupon": {
      "name": "Startup Deal",
      "code": "startup_deal",
      "amount_cents": 5000,
      "amount_currency": "USD",
      "coupon_type": "fixed_amount",
      "frequency": "recurring",
      "frequency_duration": 6,
      "reusable": true,
      "expiration": "time_limit",
      "expiration_at": "2022-08-08T23:59:59Z"
    }
  }'
from lago_python_client.client import Client
from lago_python_client.exceptions import LagoApiError
from lago_python_client.models import Coupon

client = Client(api_key='__YOUR_API_KEY__')

update_params = Coupon(name='new name')

try:
    client.coupons.update(update_params, 'code')
except LagoApiError as e:
    repair_broken_state(e)  # do something on error or raise your own exception
require 'lago-ruby-client'

client = Lago::Api::Client.new(api_key: '__YOUR_API_KEY__')

update_params = {name: 'new name'}
client.coupons.update(update_params, 'code_bm')
await client.coupons.updateCoupon("code", { coupon: { name: "new name" } });
import "fmt"
import "github.com/getlago/lago-go-client"

func main() {
lagoClient := lago.New().
    SetApiKey("__YOUR_API_KEY__")

expirationAt := time.Date(2022, 8, 8, 23, 59, 59, 0, time.UTC)
couponInput := &lago.CouponInput{
    Name:               "Coupon",
    Code:               "coupon",
    AmountCents:        1500,
    AmountCurrency:     lago.EUR,
    Expiration:         lago.CouponExpirationTimeLimit,
    ExpirationAt:       &expirationAt,
}

coupon := lagoClient.Coupon().Update(couponInput)
if err != nil {
    // Error is *lago.Error
    panic(err)
}

// coupon is *lago.Coupon
fmt.Println(coupon)
}
{
  "coupon": {
    "lago_id": "1a901a90-1a90-1a90-1a90-1a901a901a90",
    "name": "Startup Deal",
    "code": "startup_deal",
    "coupon_type": "fixed_amount",
    "reusable": true,
    "limited_plans": true,
    "limited_billable_metrics": false,
    "frequency": "recurring",
    "expiration": "time_limit",
    "created_at": "2022-04-29T08:59:51Z",
    "description": "I am a coupon description",
    "amount_cents": 5000,
    "amount_currency": "USD",
    "plan_codes": [
      "startup_plan"
    ],
    "billable_metric_codes": [],
    "percentage_rate": null,
    "frequency_duration": 6,
    "expiration_at": "2022-08-08T23:59:59Z",
    "terminated_at": "2022-08-08T23:59:59Z"
  }
}
{
"status": 400,
"error": "Bad request"
}
{
"status": 401,
"error": "Unauthorized"
}
{
"status": 404,
"error": "Not Found",
"code": "object_not_found"
}
{
"status": 422,
"error": "Unprocessable entity",
"code": "validation_errors",
"error_details": {}
}
LAGO_URL="https://api.getlago.com"
API_KEY="__YOUR_API_KEY__"

curl --location --request PUT "$LAGO_URL/api/v1/coupons/:code" \
  --header "Authorization: Bearer $API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "coupon": {
      "name": "Startup Deal",
      "code": "startup_deal",
      "amount_cents": 5000,
      "amount_currency": "USD",
      "coupon_type": "fixed_amount",
      "frequency": "recurring",
      "frequency_duration": 6,
      "reusable": true,
      "expiration": "time_limit",
      "expiration_at": "2022-08-08T23:59:59Z"
    }
  }'
from lago_python_client.client import Client
from lago_python_client.exceptions import LagoApiError
from lago_python_client.models import Coupon

client = Client(api_key='__YOUR_API_KEY__')

update_params = Coupon(name='new name')

try:
    client.coupons.update(update_params, 'code')
except LagoApiError as e:
    repair_broken_state(e)  # do something on error or raise your own exception
require 'lago-ruby-client'

client = Lago::Api::Client.new(api_key: '__YOUR_API_KEY__')

update_params = {name: 'new name'}
client.coupons.update(update_params, 'code_bm')
await client.coupons.updateCoupon("code", { coupon: { name: "new name" } });
import "fmt"
import "github.com/getlago/lago-go-client"

func main() {
lagoClient := lago.New().
    SetApiKey("__YOUR_API_KEY__")

expirationAt := time.Date(2022, 8, 8, 23, 59, 59, 0, time.UTC)
couponInput := &lago.CouponInput{
    Name:               "Coupon",
    Code:               "coupon",
    AmountCents:        1500,
    AmountCurrency:     lago.EUR,
    Expiration:         lago.CouponExpirationTimeLimit,
    ExpirationAt:       &expirationAt,
}

coupon := lagoClient.Coupon().Update(couponInput)
if err != nil {
    // Error is *lago.Error
    panic(err)
}

// coupon is *lago.Coupon
fmt.Println(coupon)
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

code
string
required

Unique code used to identify the coupon.

Example:

"startup_deal"

Body

application/json

Coupon payload

coupon
object
required

Response

Coupon updated

coupon
object
required