curl --request POST \
--url https://firespark.cloud/api/admin/v1/customers/bulk \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
[
{
"id": "<string>",
"is_anonymous": false,
"name": "John Smith",
"email": "jsmith@example.com",
"status": "ACTIVE",
"dob": "2023-11-07T05:31:56Z",
"document_type": "<string>",
"document_number": "<string>",
"country": "<string>",
"phone": "+593 99 123 4567",
"registration_date": "2023-11-07T05:31:56Z",
"devices": [
{}
],
"delivery_addresses": [
{
"alias": "<string>",
"address_line1": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"reference": "<string>",
"latitude": 0,
"longitude": 0,
"instructions": "<string>",
"preferred": false,
"metadata": {}
}
],
"billing_profiles": [
{
"alias": "<string>",
"legal_name": "<string>",
"address_line1": "<string>",
"tax_id": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"preferred": false,
"metadata": {}
}
],
"consent": {
"email": false,
"push_notifications": false,
"in_app_messages": false,
"phone_calls": false,
"sms": false,
"whatsapp": false
},
"metadata": {}
}
]
'import requests
url = "https://firespark.cloud/api/admin/v1/customers/bulk"
payload = [
{
"id": "<string>",
"is_anonymous": False,
"name": "John Smith",
"email": "jsmith@example.com",
"status": "ACTIVE",
"dob": "2023-11-07T05:31:56Z",
"document_type": "<string>",
"document_number": "<string>",
"country": "<string>",
"phone": "+593 99 123 4567",
"registration_date": "2023-11-07T05:31:56Z",
"devices": [{}],
"delivery_addresses": [
{
"alias": "<string>",
"address_line1": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"reference": "<string>",
"latitude": 0,
"longitude": 0,
"instructions": "<string>",
"preferred": False,
"metadata": {}
}
],
"billing_profiles": [
{
"alias": "<string>",
"legal_name": "<string>",
"address_line1": "<string>",
"tax_id": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"preferred": False,
"metadata": {}
}
],
"consent": {
"email": False,
"push_notifications": False,
"in_app_messages": False,
"phone_calls": False,
"sms": False,
"whatsapp": False
},
"metadata": {}
}
]
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([
{
id: '<string>',
is_anonymous: false,
name: 'John Smith',
email: 'jsmith@example.com',
status: 'ACTIVE',
dob: '2023-11-07T05:31:56Z',
document_type: '<string>',
document_number: '<string>',
country: '<string>',
phone: '+593 99 123 4567',
registration_date: '2023-11-07T05:31:56Z',
devices: [{}],
delivery_addresses: [
{
alias: '<string>',
address_line1: '<string>',
address_line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>',
reference: '<string>',
latitude: 0,
longitude: 0,
instructions: '<string>',
preferred: false,
metadata: {}
}
],
billing_profiles: [
{
alias: '<string>',
legal_name: '<string>',
address_line1: '<string>',
tax_id: '<string>',
address_line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>',
preferred: false,
metadata: {}
}
],
consent: {
email: false,
push_notifications: false,
in_app_messages: false,
phone_calls: false,
sms: false,
whatsapp: false
},
metadata: {}
}
])
};
fetch('https://firespark.cloud/api/admin/v1/customers/bulk', 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://firespark.cloud/api/admin/v1/customers/bulk",
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' => '<string>',
'is_anonymous' => false,
'name' => 'John Smith',
'email' => 'jsmith@example.com',
'status' => 'ACTIVE',
'dob' => '2023-11-07T05:31:56Z',
'document_type' => '<string>',
'document_number' => '<string>',
'country' => '<string>',
'phone' => '+593 99 123 4567',
'registration_date' => '2023-11-07T05:31:56Z',
'devices' => [
[
]
],
'delivery_addresses' => [
[
'alias' => '<string>',
'address_line1' => '<string>',
'address_line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>',
'reference' => '<string>',
'latitude' => 0,
'longitude' => 0,
'instructions' => '<string>',
'preferred' => false,
'metadata' => [
]
]
],
'billing_profiles' => [
[
'alias' => '<string>',
'legal_name' => '<string>',
'address_line1' => '<string>',
'tax_id' => '<string>',
'address_line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>',
'preferred' => false,
'metadata' => [
]
]
],
'consent' => [
'email' => false,
'push_notifications' => false,
'in_app_messages' => false,
'phone_calls' => false,
'sms' => false,
'whatsapp' => false
],
'metadata' => [
]
]
]),
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://firespark.cloud/api/admin/v1/customers/bulk"
payload := strings.NewReader("[\n {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\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://firespark.cloud/api/admin/v1/customers/bulk")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("[\n {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://firespark.cloud/api/admin/v1/customers/bulk")
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 {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\n }\n]"
response = http.request(request)
puts response.read_body{
"data": {}
}Create customers (bulk)
Create multiple customers in one request for data migration or CRM sync.
curl --request POST \
--url https://firespark.cloud/api/admin/v1/customers/bulk \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
[
{
"id": "<string>",
"is_anonymous": false,
"name": "John Smith",
"email": "jsmith@example.com",
"status": "ACTIVE",
"dob": "2023-11-07T05:31:56Z",
"document_type": "<string>",
"document_number": "<string>",
"country": "<string>",
"phone": "+593 99 123 4567",
"registration_date": "2023-11-07T05:31:56Z",
"devices": [
{}
],
"delivery_addresses": [
{
"alias": "<string>",
"address_line1": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"reference": "<string>",
"latitude": 0,
"longitude": 0,
"instructions": "<string>",
"preferred": false,
"metadata": {}
}
],
"billing_profiles": [
{
"alias": "<string>",
"legal_name": "<string>",
"address_line1": "<string>",
"tax_id": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"preferred": false,
"metadata": {}
}
],
"consent": {
"email": false,
"push_notifications": false,
"in_app_messages": false,
"phone_calls": false,
"sms": false,
"whatsapp": false
},
"metadata": {}
}
]
'import requests
url = "https://firespark.cloud/api/admin/v1/customers/bulk"
payload = [
{
"id": "<string>",
"is_anonymous": False,
"name": "John Smith",
"email": "jsmith@example.com",
"status": "ACTIVE",
"dob": "2023-11-07T05:31:56Z",
"document_type": "<string>",
"document_number": "<string>",
"country": "<string>",
"phone": "+593 99 123 4567",
"registration_date": "2023-11-07T05:31:56Z",
"devices": [{}],
"delivery_addresses": [
{
"alias": "<string>",
"address_line1": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"reference": "<string>",
"latitude": 0,
"longitude": 0,
"instructions": "<string>",
"preferred": False,
"metadata": {}
}
],
"billing_profiles": [
{
"alias": "<string>",
"legal_name": "<string>",
"address_line1": "<string>",
"tax_id": "<string>",
"address_line2": "<string>",
"city": "<string>",
"state": "<string>",
"zip": "<string>",
"country": "<string>",
"preferred": False,
"metadata": {}
}
],
"consent": {
"email": False,
"push_notifications": False,
"in_app_messages": False,
"phone_calls": False,
"sms": False,
"whatsapp": False
},
"metadata": {}
}
]
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([
{
id: '<string>',
is_anonymous: false,
name: 'John Smith',
email: 'jsmith@example.com',
status: 'ACTIVE',
dob: '2023-11-07T05:31:56Z',
document_type: '<string>',
document_number: '<string>',
country: '<string>',
phone: '+593 99 123 4567',
registration_date: '2023-11-07T05:31:56Z',
devices: [{}],
delivery_addresses: [
{
alias: '<string>',
address_line1: '<string>',
address_line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>',
reference: '<string>',
latitude: 0,
longitude: 0,
instructions: '<string>',
preferred: false,
metadata: {}
}
],
billing_profiles: [
{
alias: '<string>',
legal_name: '<string>',
address_line1: '<string>',
tax_id: '<string>',
address_line2: '<string>',
city: '<string>',
state: '<string>',
zip: '<string>',
country: '<string>',
preferred: false,
metadata: {}
}
],
consent: {
email: false,
push_notifications: false,
in_app_messages: false,
phone_calls: false,
sms: false,
whatsapp: false
},
metadata: {}
}
])
};
fetch('https://firespark.cloud/api/admin/v1/customers/bulk', 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://firespark.cloud/api/admin/v1/customers/bulk",
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' => '<string>',
'is_anonymous' => false,
'name' => 'John Smith',
'email' => 'jsmith@example.com',
'status' => 'ACTIVE',
'dob' => '2023-11-07T05:31:56Z',
'document_type' => '<string>',
'document_number' => '<string>',
'country' => '<string>',
'phone' => '+593 99 123 4567',
'registration_date' => '2023-11-07T05:31:56Z',
'devices' => [
[
]
],
'delivery_addresses' => [
[
'alias' => '<string>',
'address_line1' => '<string>',
'address_line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>',
'reference' => '<string>',
'latitude' => 0,
'longitude' => 0,
'instructions' => '<string>',
'preferred' => false,
'metadata' => [
]
]
],
'billing_profiles' => [
[
'alias' => '<string>',
'legal_name' => '<string>',
'address_line1' => '<string>',
'tax_id' => '<string>',
'address_line2' => '<string>',
'city' => '<string>',
'state' => '<string>',
'zip' => '<string>',
'country' => '<string>',
'preferred' => false,
'metadata' => [
]
]
],
'consent' => [
'email' => false,
'push_notifications' => false,
'in_app_messages' => false,
'phone_calls' => false,
'sms' => false,
'whatsapp' => false
],
'metadata' => [
]
]
]),
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://firespark.cloud/api/admin/v1/customers/bulk"
payload := strings.NewReader("[\n {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\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://firespark.cloud/api/admin/v1/customers/bulk")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("[\n {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://firespark.cloud/api/admin/v1/customers/bulk")
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 {\n \"id\": \"<string>\",\n \"is_anonymous\": false,\n \"name\": \"John Smith\",\n \"email\": \"jsmith@example.com\",\n \"status\": \"ACTIVE\",\n \"dob\": \"2023-11-07T05:31:56Z\",\n \"document_type\": \"<string>\",\n \"document_number\": \"<string>\",\n \"country\": \"<string>\",\n \"phone\": \"+593 99 123 4567\",\n \"registration_date\": \"2023-11-07T05:31:56Z\",\n \"devices\": [\n {}\n ],\n \"delivery_addresses\": [\n {\n \"alias\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"reference\": \"<string>\",\n \"latitude\": 0,\n \"longitude\": 0,\n \"instructions\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"billing_profiles\": [\n {\n \"alias\": \"<string>\",\n \"legal_name\": \"<string>\",\n \"address_line1\": \"<string>\",\n \"tax_id\": \"<string>\",\n \"address_line2\": \"<string>\",\n \"city\": \"<string>\",\n \"state\": \"<string>\",\n \"zip\": \"<string>\",\n \"country\": \"<string>\",\n \"preferred\": false,\n \"metadata\": {}\n }\n ],\n \"consent\": {\n \"email\": false,\n \"push_notifications\": false,\n \"in_app_messages\": false,\n \"phone_calls\": false,\n \"sms\": false,\n \"whatsapp\": false\n },\n \"metadata\": {}\n }\n]"
response = http.request(request)
puts response.read_body{
"data": {}
}registration_date is optional on each item and defaults to the current time when omitted. For regular customers, id, name, and email are required. Anonymous customers need only id and is_anonymous: true.
Request
curl -X POST "https://firespark.cloud/api/admin/v1/customers/bulk" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '[
{
"id": "crm-001",
"name": "Jane Doe",
"email": "jane@example.com"
},
{
"id": "crm-002",
"name": "Bob Lee",
"email": "bob@example.com",
"registration_date": "2025-03-01T00:00:00Z"
}
]'
Response
Returns201 with a summary object in data when the batch is accepted.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Customers to create.
Your customer unique identifier. Must match the sub claim from the customer's OIDC ID token.
Set to true to create an anonymous customer. When true, name and email are not required.
The full name of the customer. Required unless is_anonymous is true.
"John Smith"
The email of the customer. Required unless is_anonymous is true.
The status of the customer
ACTIVE, INACTIVE The gender of the customer
MALE, FEMALE, OTHER The date of birth of the customer
The document type of the customer
The document number of the customer
50The country of the customer
100The customer's phone number in international format
"+593 99 123 4567"
The date when the customer was registered. Defaults to the current time when omitted.
Optional device payloads on registration. Use Storefront PATCH /customers/{id} with a devices array to manage structured push devices after registration.
10Show child attributes
Show child attributes
10Show child attributes
Show child attributes
The customer's consent preferences
Show child attributes
Show child attributes
Custom metadata for the customer. Must serialize to 1MB or less.
Response
Ok