Créer une remise pour une organisation
curl --request POST \
--url https://server.chataigne.ai/v1/organizations/{organization_id}/discounts \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"benefit": {
"type": "percentage",
"percentage": 50
},
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": true,
"visibility": "public",
"combinable": true,
"once_per_customer": true,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": {
"amount": 1073741824
},
"first_order_only": false,
"required_items": [],
"locations": [
{
"location_id": "<string>",
"required_items": [],
"reward_items": []
}
]
}
'import requests
url = "https://server.chataigne.ai/v1/organizations/{organization_id}/discounts"
payload = {
"name": "<string>",
"benefit": {
"type": "percentage",
"percentage": 50
},
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": True,
"visibility": "public",
"combinable": True,
"once_per_customer": True,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": { "amount": 1073741824 },
"first_order_only": False,
"required_items": [],
"locations": [
{
"location_id": "<string>",
"required_items": [],
"reward_items": []
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
benefit: {type: 'percentage', percentage: 50},
description: '<string>',
code: '<string>',
image_url: '<string>',
enabled: true,
visibility: 'public',
combinable: true,
once_per_customer: true,
starts_on: '2023-12-25',
ends_on: '2023-12-25',
minimum_order: {amount: 1073741824},
first_order_only: false,
required_items: [],
locations: [{location_id: '<string>', required_items: [], reward_items: []}]
})
};
fetch('https://server.chataigne.ai/v1/organizations/{organization_id}/discounts', 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://server.chataigne.ai/v1/organizations/{organization_id}/discounts",
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([
'name' => '<string>',
'benefit' => [
'type' => 'percentage',
'percentage' => 50
],
'description' => '<string>',
'code' => '<string>',
'image_url' => '<string>',
'enabled' => true,
'visibility' => 'public',
'combinable' => true,
'once_per_customer' => true,
'starts_on' => '2023-12-25',
'ends_on' => '2023-12-25',
'minimum_order' => [
'amount' => 1073741824
],
'first_order_only' => false,
'required_items' => [
],
'locations' => [
[
'location_id' => '<string>',
'required_items' => [
],
'reward_items' => [
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://server.chataigne.ai/v1/organizations/{organization_id}/discounts"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://server.chataigne.ai/v1/organizations/{organization_id}/discounts")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://server.chataigne.ai/v1/organizations/{organization_id}/discounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "discount",
"name": "<string>",
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": true,
"visibility": "public",
"negotiation_difficulty": "easy",
"combinable": true,
"once_per_customer": true,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": {
"amount": 1073741824,
"currency": "CHF"
},
"first_order_only": true,
"benefit": {
"type": "percentage",
"percentage": 50
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"organization_id": "<string>",
"target_summary": {
"active": 1,
"retired": 1,
"needs_attention": 1
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}Remises
Créer une remise pour une organisation
POST
/
v1
/
organizations
/
{organization_id}
/
discounts
Créer une remise pour une organisation
curl --request POST \
--url https://server.chataigne.ai/v1/organizations/{organization_id}/discounts \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"benefit": {
"type": "percentage",
"percentage": 50
},
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": true,
"visibility": "public",
"combinable": true,
"once_per_customer": true,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": {
"amount": 1073741824
},
"first_order_only": false,
"required_items": [],
"locations": [
{
"location_id": "<string>",
"required_items": [],
"reward_items": []
}
]
}
'import requests
url = "https://server.chataigne.ai/v1/organizations/{organization_id}/discounts"
payload = {
"name": "<string>",
"benefit": {
"type": "percentage",
"percentage": 50
},
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": True,
"visibility": "public",
"combinable": True,
"once_per_customer": True,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": { "amount": 1073741824 },
"first_order_only": False,
"required_items": [],
"locations": [
{
"location_id": "<string>",
"required_items": [],
"reward_items": []
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
benefit: {type: 'percentage', percentage: 50},
description: '<string>',
code: '<string>',
image_url: '<string>',
enabled: true,
visibility: 'public',
combinable: true,
once_per_customer: true,
starts_on: '2023-12-25',
ends_on: '2023-12-25',
minimum_order: {amount: 1073741824},
first_order_only: false,
required_items: [],
locations: [{location_id: '<string>', required_items: [], reward_items: []}]
})
};
fetch('https://server.chataigne.ai/v1/organizations/{organization_id}/discounts', 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://server.chataigne.ai/v1/organizations/{organization_id}/discounts",
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([
'name' => '<string>',
'benefit' => [
'type' => 'percentage',
'percentage' => 50
],
'description' => '<string>',
'code' => '<string>',
'image_url' => '<string>',
'enabled' => true,
'visibility' => 'public',
'combinable' => true,
'once_per_customer' => true,
'starts_on' => '2023-12-25',
'ends_on' => '2023-12-25',
'minimum_order' => [
'amount' => 1073741824
],
'first_order_only' => false,
'required_items' => [
],
'locations' => [
[
'location_id' => '<string>',
'required_items' => [
],
'reward_items' => [
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://server.chataigne.ai/v1/organizations/{organization_id}/discounts"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://server.chataigne.ai/v1/organizations/{organization_id}/discounts")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://server.chataigne.ai/v1/organizations/{organization_id}/discounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"benefit\": {\n \"type\": \"percentage\",\n \"percentage\": 50\n },\n \"description\": \"<string>\",\n \"code\": \"<string>\",\n \"image_url\": \"<string>\",\n \"enabled\": true,\n \"visibility\": \"public\",\n \"combinable\": true,\n \"once_per_customer\": true,\n \"starts_on\": \"2023-12-25\",\n \"ends_on\": \"2023-12-25\",\n \"minimum_order\": {\n \"amount\": 1073741824\n },\n \"first_order_only\": false,\n \"required_items\": [],\n \"locations\": [\n {\n \"location_id\": \"<string>\",\n \"required_items\": [],\n \"reward_items\": []\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "discount",
"name": "<string>",
"description": "<string>",
"code": "<string>",
"image_url": "<string>",
"enabled": true,
"visibility": "public",
"negotiation_difficulty": "easy",
"combinable": true,
"once_per_customer": true,
"starts_on": "2023-12-25",
"ends_on": "2023-12-25",
"minimum_order": {
"amount": 1073741824,
"currency": "CHF"
},
"first_order_only": true,
"benefit": {
"type": "percentage",
"percentage": 50
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"organization_id": "<string>",
"target_summary": {
"active": 1,
"retired": 1,
"needs_attention": 1
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "<string>",
"request_id": "req_8f2c…",
"param": "<string>",
"details": {}
}
}Autorisations
Clé API d’établissement ou d’organisation.
Paramètres de chemin
Corps
application/json
Required string length:
1 - 160- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
Show child attributes
Show child attributes
Required string length:
1 - 128Options disponibles:
public, promoted, code_only, negotiated Options disponibles:
easy, medium, hard Show child attributes
Show child attributes
Show child attributes
Show child attributes
Affectations initiales. Elles sont requises pour les avantages liés à des produits ; si elles sont omises, les remises simples ciblent les établissements disposant d’un catalogue.
Show child attributes
Show child attributes
Réponse
Le modèle de remise créé.
Options disponibles:
discount Options disponibles:
public, promoted, code_only, negotiated Options disponibles:
easy, medium, hard Show child attributes
Show child attributes
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
Show child attributes
Show child attributes
Show child attributes
Show child attributes