Import contacts
curl --request POST \
--url https://api.callin.io/api/public/v1/contacts/import \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"contacts": [
{
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>"
}
]
}
'import requests
url = "https://api.callin.io/api/public/v1/contacts/import"
payload = { "contacts": [
{
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>"
}
] }
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({contacts: [{phoneNumber: '<string>', name: '<string>', email: '<string>'}]})
};
fetch('https://api.callin.io/api/public/v1/contacts/import', 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.callin.io/api/public/v1/contacts/import",
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([
'contacts' => [
[
'phoneNumber' => '<string>',
'name' => '<string>',
'email' => '<string>'
]
]
]),
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://api.callin.io/api/public/v1/contacts/import"
payload := strings.NewReader("{\n \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\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://api.callin.io/api/public/v1/contacts/import")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.callin.io/api/public/v1/contacts/import")
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 \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"created": [
{
"contactId": "<string>",
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>",
"metadata": {
"createdAt": "<string>"
}
}
],
"skipped": [
{
"phoneNumber": "<string>",
"reason": "<string>"
}
],
"createdCount": 123,
"skippedCount": 123
},
"requestId": "<string>"
}Contacts
Import contacts
Creates up to 2000 contacts. Numbers already on the account are skipped. Duplicate numbers in the same request keep the last row. The created contactId values can be passed to a campaign as contactIds.
POST
/
public
/
v1
/
contacts
/
import
Import contacts
curl --request POST \
--url https://api.callin.io/api/public/v1/contacts/import \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"contacts": [
{
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>"
}
]
}
'import requests
url = "https://api.callin.io/api/public/v1/contacts/import"
payload = { "contacts": [
{
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>"
}
] }
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({contacts: [{phoneNumber: '<string>', name: '<string>', email: '<string>'}]})
};
fetch('https://api.callin.io/api/public/v1/contacts/import', 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.callin.io/api/public/v1/contacts/import",
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([
'contacts' => [
[
'phoneNumber' => '<string>',
'name' => '<string>',
'email' => '<string>'
]
]
]),
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://api.callin.io/api/public/v1/contacts/import"
payload := strings.NewReader("{\n \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\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://api.callin.io/api/public/v1/contacts/import")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.callin.io/api/public/v1/contacts/import")
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 \"contacts\": [\n {\n \"phoneNumber\": \"<string>\",\n \"name\": \"<string>\",\n \"email\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"created": [
{
"contactId": "<string>",
"phoneNumber": "<string>",
"name": "<string>",
"email": "<string>",
"metadata": {
"createdAt": "<string>"
}
}
],
"skipped": [
{
"phoneNumber": "<string>",
"reason": "<string>"
}
],
"createdCount": 123,
"skippedCount": 123
},
"requestId": "<string>"
}Authorizations
ApiKeyHeaderBearerAuth
Send your Callin API key in the x-api-key header.
Body
application/json
Show child attributes
Show child attributes
Was this page helpful?

