Batch Create Coupons
curl --request POST \
--url https://{defaultHost}/v1/imports/coupons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"import": {
"data": [
{
"name": "Test Coupon",
"amount_off": 500
}
]
}
}
'import requests
url = "https://{defaultHost}/v1/imports/coupons"
payload = { "import": { "data": [
{
"name": "Test Coupon",
"amount_off": 500
}
] } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({import: {data: [{name: 'Test Coupon', amount_off: 500}]}})
};
fetch('https://{defaultHost}/v1/imports/coupons', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{defaultHost}/v1/imports/coupons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'import' => [
'data' => [
[
'name' => 'Test Coupon',
'amount_off' => 500
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{defaultHost}/v1/imports/coupons"
payload := strings.NewReader("{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}")
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(string(body))
}HttpResponse<String> response = Unirest.post("https://{defaultHost}/v1/imports/coupons")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{defaultHost}/v1/imports/coupons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "bce88bfe-0367-4125-a965-ad65a9fd65ce",
"object": "import",
"import_type": "coupon",
"live_mode": true,
"rows_imported": 0,
"rows_uploaded": 0,
"status": "pending",
"created_at": 1782485837,
"updated_at": 1782485837
}Imports
Batch Create Coupons
Creates multiple coupons in batch.
POST
/
v1
/
imports
/
coupons
Batch Create Coupons
curl --request POST \
--url https://{defaultHost}/v1/imports/coupons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"import": {
"data": [
{
"name": "Test Coupon",
"amount_off": 500
}
]
}
}
'import requests
url = "https://{defaultHost}/v1/imports/coupons"
payload = { "import": { "data": [
{
"name": "Test Coupon",
"amount_off": 500
}
] } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({import: {data: [{name: 'Test Coupon', amount_off: 500}]}})
};
fetch('https://{defaultHost}/v1/imports/coupons', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{defaultHost}/v1/imports/coupons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'import' => [
'data' => [
[
'name' => 'Test Coupon',
'amount_off' => 500
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{defaultHost}/v1/imports/coupons"
payload := strings.NewReader("{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}")
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(string(body))
}HttpResponse<String> response = Unirest.post("https://{defaultHost}/v1/imports/coupons")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{defaultHost}/v1/imports/coupons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"import\": {\n \"data\": [\n {\n \"name\": \"Test Coupon\",\n \"amount_off\": 500\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "bce88bfe-0367-4125-a965-ad65a9fd65ce",
"object": "import",
"import_type": "coupon",
"live_mode": true,
"rows_imported": 0,
"rows_uploaded": 0,
"status": "pending",
"created_at": 1782485837,
"updated_at": 1782485837
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Show child attributes
Show child attributes
Response
200 - application/json
Success
The UUID of the specific object.
A string describing the object type returned.
The type of record imported – one of customer, product, coupon, purchase, or subscription.
A list of associated import rows.
The number of rows successfully imported.
The status of the import – one of completed, invalid, pending, or processing.
Time at which the object was created. Measured in seconds since the Unix epoch.
Time at which the object was last updated. Measured in seconds since the Unix epoch.
Was this page helpful?
⌘I