Updates the metadata of a coupon. Other coupon details (currency, duration, amount_off) are, by design, not editable.
curl https://api.stripe.com/v1/coupons/25OFF \
-u STRIPE_SECRET_KEY: \
-d metadata[order_id]=6735 \
-X POST
Use ChilkatAx-9.5.0-win32.pkg
Procedure Test
Handle hoRest
Boolean iSuccess
Boolean iBTls
Integer iPort
Boolean iBAutoReconnect
String sStrResponseBody
Handle hoJsonResponse
String sId
String sObject
Boolean iAmount_off
Integer iCreated
Boolean iCurrency
String sDuration
Integer iDuration_in_months
Boolean iLivemode
Boolean iMax_redemptions
String sMetadataOrder_id
Integer iPercent_off
Boolean iRedeem_by
Integer iTimes_redeemed
Boolean iValid
String sTemp1
Integer iTemp1
Boolean bTemp1
Get Create (RefClass(cComChilkatRest)) To hoRest
If (Not(IsComObjectCreated(hoRest))) Begin
Send CreateComObject of hoRest
End
// URL: https://api.stripe.com/v1/coupons/25OFF
Move True To iBTls
Move 443 To iPort
Move True To iBAutoReconnect
Get ComConnect Of hoRest "api.stripe.com" iPort iBTls iBAutoReconnect To iSuccess
If (iSuccess <> True) Begin
Get ComConnectFailReason Of hoRest To iTemp1
Showln "ConnectFailReason: " iTemp1
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComSetAuthBasic Of hoRest "STRIPE_SECRET_KEY" "" To iSuccess
Get ComAddQueryParam Of hoRest "metadata[order_id]" "6735" To iSuccess
Get ComFullRequestFormUrlEncoded Of hoRest "POST" "/v1/coupons/25OFF" To sStrResponseBody
Get ComLastMethodSuccess Of hoRest To bTemp1
If (bTemp1 <> True) Begin
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResponse
If (Not(IsComObjectCreated(hoJsonResponse))) Begin
Send CreateComObject of hoJsonResponse
End
Get ComLoad Of hoJsonResponse sStrResponseBody To iSuccess
Get ComStringOf Of hoJsonResponse "id" To sId
Get ComStringOf Of hoJsonResponse "object" To sObject
Get ComIsNullOf Of hoJsonResponse "amount_off" To iAmount_off
Get ComIntOf Of hoJsonResponse "created" To iCreated
Get ComIsNullOf Of hoJsonResponse "currency" To iCurrency
Get ComStringOf Of hoJsonResponse "duration" To sDuration
Get ComIntOf Of hoJsonResponse "duration_in_months" To iDuration_in_months
Get ComBoolOf Of hoJsonResponse "livemode" To iLivemode
Get ComIsNullOf Of hoJsonResponse "max_redemptions" To iMax_redemptions
Get ComStringOf Of hoJsonResponse "metadata.order_id" To sMetadataOrder_id
Get ComIntOf Of hoJsonResponse "percent_off" To iPercent_off
Get ComIsNullOf Of hoJsonResponse "redeem_by" To iRedeem_by
Get ComIntOf Of hoJsonResponse "times_redeemed" To iTimes_redeemed
Get ComBoolOf Of hoJsonResponse "valid" To iValid
End_Procedure
{
"id": "25OFF",
"object": "coupon",
"amount_off": null,
"created": 1516662783,
"currency": null,
"duration": "repeating",
"duration_in_months": 3,
"livemode": false,
"max_redemptions": null,
"metadata": {
"order_id": "6735"
},
"percent_off": 25,
"redeem_by": null,
"times_redeemed": 0,
"valid": true
}