Reserve coupon
POST
/api/v2.0/stores/{storeId}/members/{memberId}/coupons/{couponCode}/reserve
using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Post, RequestUri = new Uri("https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve"), Headers = { { "Authorization", "Bearer <token>" }, }, Content = new StringContent("{ \"channel\": \"example\", \"external_product_id\": \"example\", \"external_transaction_id\": \"example\", \"redeemed_value\": 1 }") { Headers = { ContentType = new MediaTypeHeaderValue("application/json") } }};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve"
payload := strings.NewReader("{ \"channel\": \"example\", \"external_product_id\": \"example\", \"external_transaction_id\": \"example\", \"redeemed_value\": 1 }")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");RequestBody body = RequestBody.create(mediaType, "{ \"channel\": \"example\", \"external_product_id\": \"example\", \"external_transaction_id\": \"example\", \"redeemed_value\": 1 }");Request request = new Request.Builder() .url("https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve") .post(body) .addHeader("Authorization", "Bearer <token>") .addHeader("Content-Type", "application/json") .build();
Response response = client.newCall(request).execute();import axios from 'axios';
const options = { method: 'POST', url: 'https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, data: { channel: 'example', external_product_id: 'example', external_transaction_id: 'example', redeemed_value: 1 }};
try { const { data } = await axios.request(options); console.log(data);} catch (error) { console.error(error);}const url = 'https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"channel":"example","external_product_id":"example","external_transaction_id":"example","redeemed_value":1}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.diller.app/api/v2.0/stores/your-store-id/members/m_nsr714RRBEHX/coupons/WELCOME15/reserve \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "channel": "example", "external_product_id": "example", "external_transaction_id": "example", "redeemed_value": 1 }'This endpoint enables users to reserve a coupon for their pending orders, thereby ensuring that the coupon cannot be used for any other transactions.
Call the /cancel-reservation endpoint after completing or cancelling a transaction to release the coupon reservation and make it available for other transactions.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”storeId
required
string
The storeId
Example
your-store-idmemberId
required
string
The memberId
Example
m_nsr714RRBEHXcouponCode
required
string
The coupon code
Example
WELCOME15Request Body
Section titled “Request Body”Details of the coupon reservation request
object
channel
string
external_product_id
string
external_transaction_id
string
redeemed_value
number format: double
Examplegenerated
{ "channel": "example", "external_product_id": "example", "external_transaction_id": "example", "redeemed_value": 1}object
channel
string
external_product_id
string
external_transaction_id
string
redeemed_value
number format: double
Examplegenerated
{ "channel": "example", "external_product_id": "example", "external_transaction_id": "example", "redeemed_value": 1}object
channel
string
external_product_id
string
external_transaction_id
string
redeemed_value
number format: double
Examplegenerated
{ "channel": "example", "external_product_id": "example", "external_transaction_id": "example", "redeemed_value": 1}Responses
Section titled “Responses”OK
Media typeapplication/json
object
is_ok
boolean
details
string
Examplegenerated
{ "is_ok": true, "details": "example"}Bad Request
Media typeapplication/json
object
type
string
title
string
status
integer format: int32
detail
string
instance
string
errors
object
key
additional properties
Array<string>
key
additional properties
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example", "errors": { "additionalProperty": [ "example" ] }}