Skip to main content
POST
/
configuration
/
v1
/
segments
Create a segment
curl --request POST \
  --url https://api.sandbox.asapp.com/configuration/v1/segments \
  --header 'Content-Type: application/json' \
  --header 'asapp-api-id: <api-key>' \
  --header 'asapp-api-secret: <api-key>' \
  --data '
{
  "id": "USER_SUPPORT",
  "name": "Support",
  "query": {
    "type": "raw",
    "raw": "TRUE"
  },
  "structuredDataFieldIds": []
}
'
import requests

url = "https://api.sandbox.asapp.com/configuration/v1/segments"

payload = {
"id": "USER_SUPPORT",
"name": "Support",
"query": {
"type": "raw",
"raw": "TRUE"
},
"structuredDataFieldIds": []
}
headers = {
"asapp-api-id": "<api-key>",
"asapp-api-secret": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {
'asapp-api-id': '<api-key>',
'asapp-api-secret': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
id: 'USER_SUPPORT',
name: 'Support',
query: {type: 'raw', raw: 'TRUE'},
structuredDataFieldIds: []
})
};

fetch('https://api.sandbox.asapp.com/configuration/v1/segments', 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.sandbox.asapp.com/configuration/v1/segments",
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([
'id' => 'USER_SUPPORT',
'name' => 'Support',
'query' => [
'type' => 'raw',
'raw' => 'TRUE'
],
'structuredDataFieldIds' => [

]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"asapp-api-id: <api-key>",
"asapp-api-secret: <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://api.sandbox.asapp.com/configuration/v1/segments"

payload := strings.NewReader("{\n \"id\": \"USER_SUPPORT\",\n \"name\": \"Support\",\n \"query\": {\n \"type\": \"raw\",\n \"raw\": \"TRUE\"\n },\n \"structuredDataFieldIds\": []\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("asapp-api-id", "<api-key>")
req.Header.Add("asapp-api-secret", "<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://api.sandbox.asapp.com/configuration/v1/segments")
.header("asapp-api-id", "<api-key>")
.header("asapp-api-secret", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"USER_SUPPORT\",\n \"name\": \"Support\",\n \"query\": {\n \"type\": \"raw\",\n \"raw\": \"TRUE\"\n },\n \"structuredDataFieldIds\": []\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.sandbox.asapp.com/configuration/v1/segments")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["asapp-api-id"] = '<api-key>'
request["asapp-api-secret"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"USER_SUPPORT\",\n \"name\": \"Support\",\n \"query\": {\n \"type\": \"raw\",\n \"raw\": \"TRUE\"\n },\n \"structuredDataFieldIds\": []\n}"

response = http.request(request)
puts response.read_body
{
  "id": "USER_SUPPORT",
  "name": "Support",
  "query": {
    "type": "raw",
    "raw": "TRUE"
  },
  "structuredDataFieldIds": []
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "400-01",
"message": "Bad request"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "401-01",
"message": "Unauthorized"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "403-01",
"message": "Forbidden Response"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "404-01",
"message": "Not Found"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "409-01",
"message": "Conflict"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "413-01",
"message": "Request Entity Too Large"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "422-01",
"message": "Unprocessable Entity"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "429-01",
"message": "Too Many Requests"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "500-01",
"message": "Internal server error"
}
}
{
"error": {
"requestId": "8e033668-9f1a-11ec-b909-0242ac120002",
"code": "503-01",
"message": "Service Unavailable"
}
}

Authorizations

asapp-api-id
string
header
required
asapp-api-secret
string
header
required

Body

application/json

Segment

id
string

The id of the segment

name
string

The name of the segment

query
object

A query that defines which conversations belong to this segment based on their metadata.

structuredDataFieldIds
string[]

The ids of the structured data fields that will be used to generate the structured data for the conversation.

Response

Segment created.

Segment

id
string

The id of the segment

name
string

The name of the segment

query
object

A query that defines which conversations belong to this segment based on their metadata.

structuredDataFieldIds
string[]

The ids of the structured data fields that will be used to generate the structured data for the conversation.