Documentation IndexFetch the complete documentation index at: /llms.txtUse this file to discover all available pages before exploring further.
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Contact support
Update the details of an existing promotion code.
cURL
curl --request PATCH \ --url https://api.hyperline.co/v1/promotion-codes/{id} \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "code": "PROMO123", "customer_id": "cus_DKL4Xcb5VSa8CQ", "plan_id": "plan_DKL4Xcb5VSa8CQ", "product_id": "itm_DKL4Xcb5VSa8CQ", "expires_at": "2021-01-01T00:00:00.000Z", "max_redemptions": 10, "current_redemptions": 0, "duration_count": 1, "duration_period": "months", "only_for_first_time_order": false } '
import requests url = "https://api.hyperline.co/v1/promotion-codes/{id}" payload = { "code": "PROMO123", "customer_id": "cus_DKL4Xcb5VSa8CQ", "plan_id": "plan_DKL4Xcb5VSa8CQ", "product_id": "itm_DKL4Xcb5VSa8CQ", "expires_at": "2021-01-01T00:00:00.000Z", "max_redemptions": 10, "current_redemptions": 0, "duration_count": 1, "duration_period": "months", "only_for_first_time_order": False } headers = { "Authorization": "Bearer <token>", "Content-Type": "application/json" } response = requests.patch(url, json=payload, headers=headers) print(response.text)
const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: JSON.stringify({ code: 'PROMO123', customer_id: 'cus_DKL4Xcb5VSa8CQ', plan_id: 'plan_DKL4Xcb5VSa8CQ', product_id: 'itm_DKL4Xcb5VSa8CQ', expires_at: '2021-01-01T00:00:00.000Z', max_redemptions: 10, current_redemptions: 0, duration_count: 1, duration_period: 'months', only_for_first_time_order: false }) }; fetch('https://api.hyperline.co/v1/promotion-codes/{id}', 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://api.hyperline.co/v1/promotion-codes/{id}", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "PATCH", CURLOPT_POSTFIELDS => json_encode([ 'code' => 'PROMO123', 'customer_id' => 'cus_DKL4Xcb5VSa8CQ', 'plan_id' => 'plan_DKL4Xcb5VSa8CQ', 'product_id' => 'itm_DKL4Xcb5VSa8CQ', 'expires_at' => '2021-01-01T00:00:00.000Z', 'max_redemptions' => 10, 'current_redemptions' => 0, 'duration_count' => 1, 'duration_period' => 'months', 'only_for_first_time_order' => false ]), 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://api.hyperline.co/v1/promotion-codes/{id}" payload := strings.NewReader("{\n \"code\": \"PROMO123\",\n \"customer_id\": \"cus_DKL4Xcb5VSa8CQ\",\n \"plan_id\": \"plan_DKL4Xcb5VSa8CQ\",\n \"product_id\": \"itm_DKL4Xcb5VSa8CQ\",\n \"expires_at\": \"2021-01-01T00:00:00.000Z\",\n \"max_redemptions\": 10,\n \"current_redemptions\": 0,\n \"duration_count\": 1,\n \"duration_period\": \"months\",\n \"only_for_first_time_order\": false\n}") req, _ := http.NewRequest("PATCH", 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.patch("https://api.hyperline.co/v1/promotion-codes/{id}") .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .body("{\n \"code\": \"PROMO123\",\n \"customer_id\": \"cus_DKL4Xcb5VSa8CQ\",\n \"plan_id\": \"plan_DKL4Xcb5VSa8CQ\",\n \"product_id\": \"itm_DKL4Xcb5VSa8CQ\",\n \"expires_at\": \"2021-01-01T00:00:00.000Z\",\n \"max_redemptions\": 10,\n \"current_redemptions\": 0,\n \"duration_count\": 1,\n \"duration_period\": \"months\",\n \"only_for_first_time_order\": false\n}") .asString();
require 'uri' require 'net/http' url = URI("https://api.hyperline.co/v1/promotion-codes/{id}") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Patch.new(url) request["Authorization"] = 'Bearer <token>' request["Content-Type"] = 'application/json' request.body = "{\n \"code\": \"PROMO123\",\n \"customer_id\": \"cus_DKL4Xcb5VSa8CQ\",\n \"plan_id\": \"plan_DKL4Xcb5VSa8CQ\",\n \"product_id\": \"itm_DKL4Xcb5VSa8CQ\",\n \"expires_at\": \"2021-01-01T00:00:00.000Z\",\n \"max_redemptions\": 10,\n \"current_redemptions\": 0,\n \"duration_count\": 1,\n \"duration_period\": \"months\",\n \"only_for_first_time_order\": false\n}" response = http.request(request) puts response.read_body
{ "id": "promo_DKL4Xcb5VSa8CQ", "code": "PROMO123", "coupon_id": "cou_DKL4Xcb5VSa8CQ", "client_id": "cli_DKL4Xcb5VSa8CQ", "customer_id": "cus_DKL4Xcb5VSa8CQ", "plan_id": "plan_DKL4Xcb5VSa8CQ", "product_id": "itm_DKL4Xcb5VSa8CQ", "created_at": "2021-01-01T00:00:00.000Z", "updated_at": "2021-01-01T00:00:00.000Z", "expires_at": "2021-01-01T00:00:00.000Z", "max_redemptions": 10, "current_redemptions": 0, "duration_count": 1, "duration_period": "months", "only_for_first_time_order": false }
{ "message": "<string>" }
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Bearer <token>
<token>
Promotion code.
"PROMO123"
If a customer_id is set, this promotion code will only be available to this customer.
customer_id
"cus_DKL4Xcb5VSa8CQ"
If a plan_id is set, this promotion code will only be available for subscriptions with this plan ID.
plan_id
"plan_DKL4Xcb5VSa8CQ"
If a product_id is set, this promotion code will only be available for subscriptions with this product ID.
product_id
"itm_DKL4Xcb5VSa8CQ"
Date and time when the promotion code expires.
"2021-01-01T00:00:00.000Z"
Maximum number of redemptions for the promotion code. Independent from coupon's max redemptions.
10
Current number of redemptions for the promotion code.
0
Duration count applied to the subscription for the promotion code. 0 or null for once
once
x >= 1
1
Duration period applied to the subscription for the promotion code for the promotion code. Valid values are once, days, weeks, months, years
days
weeks
months
years
"months"
Whether the promotion code is only for first time orders. Defaults to false
false
Promotion code ID.
"promo_DKL4Xcb5VSa8CQ"
Coupon ID.
"cou_DKL4Xcb5VSa8CQ"
Client ID.
"cli_DKL4Xcb5VSa8CQ"
Promotion code creation date. UTC date time string in the ISO 8601 format.
Promotion code last edition date. UTC date time string in the ISO 8601 format.
Was this page helpful?