Lister les contacts
Récupérez la liste de tous les contacts de votre espace de travail. Nécessite les permissions complètes.
/contactsParamètres de requête
pageintegerNuméro de page pour la pagination (minimum : 1, par défaut : 1).
limitintegerNombre de contacts à retourner (minimum : 1, maximum : 100, par défaut : 10).
const response = await fetch('https://api.emailit.com/v2/contacts?page=1&limit=10', {
method: 'GET',
headers: {
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
});
const result = await response.json(); <?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.emailit.com/v2/contacts?page=1&limit=10',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "Erreur cURL #:" . $err;
} else {
$result = json_decode($response, true);
print_r($result);
} import requests
response = requests.get(
'https://api.emailit.com/v2/contacts',
params={
'page': 1,
'limit': 10
},
headers={
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
)
result = response.json()
print(result) require 'net/http'
require 'json'
uri = URI('https://api.emailit.com/v2/contacts?page=1&limit=10')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer em_test_51RxCWJ...vS00p61e0qRE'
request['Content-Type'] = 'application/json'
response = http.request(request)
result = JSON.parse(response.body)
puts result package main
import (
"encoding/json"
"fmt"
"net/http"
"net/url"
)
func main() {
baseURL := "https://api.emailit.com/v2/contacts"
params := url.Values{}
params.Add("page", "1")
params.Add("limit", "10")
fullURL := baseURL + "?" + params.Encode()
req, _ := http.NewRequest("GET", fullURL, nil)
req.Header.Set("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result)
} use reqwest;
use serde_json::Value;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.get("https://api.emailit.com/v2/contacts")
.query(&[("page", "1"), ("limit", "10")])
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.send()
.await?;
let result: Value = response.json().await?;
println!("{:?}", result);
Ok(())
} import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class ListContacts {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.emailit.com/v2/contacts?page=1&limit=10"))
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.GET()
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
} using System;
using System.Net.Http;
using System.Threading.Tasks;
public class ListContacts
{
public static async Task Main()
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization",
"Bearer em_test_51RxCWJ...vS00p61e0qRE");
var response = await client.GetAsync(
"https://api.emailit.com/v2/contacts?page=1&limit=10");
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
} curl -X GET "https://api.emailit.com/v2/contacts?page=1&limit=10" \
-H "Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE" \
-H "Content-Type: application/json" {
"data": [
{
"object": "contact",
"id": "con_2BxFg7KNqr5M...",
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": { "company": "Acme" },
"unsubscribed": false,
"audiences": [
{
"id": "aud_xxx",
"name": "Newsletter",
"subscribed": true
}
],
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
}
],
"next_page_url": "/v2/contacts?page=2&limit=10",
"previous_page_url": null
} {
"error": {
"code": 401,
"message": "Non autorisé"
}
} Récupérer un Contact
Récupère les informations d’un contact spécifique. Nécessite les permissions complètes. Les contacts peuvent être identifiés par leur ID (con_xxx) ou leur adresse e-mail.
/contacts/{id}Paramètres de Chemin
idstringRequiredL’ID du contact (con_xxx) ou l’adresse e-mail.
Remarque : Le tableau audiences dans l’endpoint Get inclut les détails complets de l’abonné (avec
subscribed_at,unsubscribed_at, etc.), tandis que l’endpoint List n’inclut queid,name, etsubscribedpar audience.
const response = await fetch('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M', {
method: 'GET',
headers: {
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
});
const result = await response.json(); <?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "Erreur cURL #:" . $err;
} else {
$result = json_decode($response, true);
print_r($result);
} import requests
response = requests.get(
'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
headers={
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
)
result = response.json()
print(result) require 'net/http'
require 'json'
uri = URI('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer em_test_51RxCWJ...vS00p61e0qRE'
request['Content-Type'] = 'application/json'
response = http.request(request)
result = JSON.parse(response.body)
puts result package main
import (
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result)
} use reqwest;
use serde_json::Value;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.get("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M")
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.send()
.await?;
let result: Value = response.json().await?;
println!("{:?}", result);
Ok(())
} import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class GetContact {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"))
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.GET()
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
} using System;
using System.Net.Http;
using System.Threading.Tasks;
public class GetContact
{
public static async Task Main()
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization",
"Bearer em_test_51RxCWJ...vS00p61e0qRE");
var response = await client.GetAsync(
"https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M");
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
} curl -X GET https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M \
-H "Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE" \
-H "Content-Type: application/json" {
"object": "contact",
"id": "con_2BxFg7KNqr5M...",
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": { "company": "Acme" },
"unsubscribed": false,
"audiences": [
{
"id": "aud_xxx",
"name": "Newsletter",
"subscriber": {
"id": "sub_xxx",
"subscribed": true,
"subscribed_at": "2026-02-10T10:00:00.000000+00:00",
"unsubscribed_at": null,
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
}
}
],
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
} {
"error": "Contact introuvable"
} Créer un contact
Créez un nouveau contact dans votre espace de travail. Nécessite les permissions complètes.
/contactsCorps de la requête
emailstringRequiredAdresse e-mail (doit être valide).
first_namestringPrénom (par défaut : null).
last_namestringNom de famille (par défaut : null).
custom_fieldsobjectPaires clé-valeur personnalisées (par défaut : null).
audiencesstring[]Tableau d’identifiants d’audiences auxquelles s’abonner (par défaut : tableau vide).
unsubscribedbooleanStatut de désabonnement global (par défaut : false).
const response = await fetch('https://api.emailit.com/v2/contacts', {
method: 'POST',
headers: {
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
},
body: JSON.stringify({
email: 'john@example.com',
first_name: 'John',
last_name: 'Doe',
custom_fields: { company: 'Acme' },
audiences: ['aud_2BxFg7KNqr5M...'],
unsubscribed: false
})
});
const result = await response.json(); <?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.emailit.com/v2/contacts',
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([
'email' => 'john@example.com',
'first_name' => 'John',
'last_name' => 'Doe',
'custom_fields' => ['company' => 'Acme'],
'audiences' => ['aud_2BxFg7KNqr5M...'],
'unsubscribed' => false
]),
CURLOPT_HTTPHEADER => [
'Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "Erreur cURL #:" . $err;
} else {
$result = json_decode($response, true);
print_r($result);
} import requests
response = requests.post(
'https://api.emailit.com/v2/contacts',
headers={
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
},
json={
'email': 'john@example.com',
'first_name': 'John',
'last_name': 'Doe',
'custom_fields': {'company': 'Acme'},
'audiences': ['aud_2BxFg7KNqr5M...'],
'unsubscribed': False
}
)
result = response.json()
print(result) require 'net/http'
require 'json'
uri = URI('https://api.emailit.com/v2/contacts')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Authorization'] = 'Bearer em_test_51RxCWJ...vS00p61e0qRE'
request['Content-Type'] = 'application/json'
request.body = {
email: 'john@example.com',
first_name: 'John',
last_name: 'Doe',
custom_fields: { company: 'Acme' },
audiences: ['aud_2BxFg7KNqr5M...'],
unsubscribed: false
}.to_json
response = http.request(request)
result = JSON.parse(response.body)
puts result package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://api.emailit.com/v2/contacts"
data := map[string]interface{}{
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": map[string]string{"company": "Acme"},
"audiences": []string{"aud_2BxFg7KNqr5M..."},
"unsubscribed": false,
}
jsonData, _ := json.Marshal(data)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result)
} use reqwest;
use serde_json::{json, Value};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.post("https://api.emailit.com/v2/contacts")
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.json(&json!({
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": {"company": "Acme"},
"audiences": ["aud_2BxFg7KNqr5M..."],
"unsubscribed": false
}))
.send()
.await?;
let result: Value = response.json().await?;
println!("{:?}", result);
Ok(())
} import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.net.http.HttpRequest.BodyPublishers;
public class CreateContact {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
String jsonBody = "{\"email\":\"john@example.com\",\"first_name\":\"John\",\"last_name\":\"Doe\",\"custom_fields\":{\"company\":\"Acme\"},\"audiences\":[\"aud_2BxFg7KNqr5M...\"],\"unsubscribed\":false}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.emailit.com/v2/contacts"))
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.POST(BodyPublishers.ofString(jsonBody))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
} using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class CreateContact
{
public static async Task Main()
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization",
"Bearer em_test_51RxCWJ...vS00p61e0qRE");
var data = new {
email = "john@example.com",
first_name = "John",
last_name = "Doe",
custom_fields = new { company = "Acme" },
audiences = new[] { "aud_2BxFg7KNqr5M..." },
unsubscribed = false
};
var json = JsonConvert.SerializeObject(data);
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync(
"https://api.emailit.com/v2/contacts", content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
} curl -X POST https://api.emailit.com/v2/contacts \
-H "Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE" \
-H "Content-Type: application/json" \
-d '{
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": { "company": "Acme" },
"audiences": ["aud_2BxFg7KNqr5M..."],
"unsubscribed": false
}' {
"object": "contact",
"id": "con_2BxFg7KNqr5M...",
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"custom_fields": { "company": "Acme" },
"unsubscribed": false,
"audiences": [
{
"id": "aud_xxx",
"name": "Newsletter",
"subscriber": {
"id": "sub_xxx",
"subscribed": true,
"subscribed_at": "2026-02-10T10:00:00.000000+00:00",
"unsubscribed_at": null,
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
}
}
],
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
} {
"error": "Un contact avec cette adresse e-mail existe déjà",
"existing": {
"object": "contact",
"id": "con_...",
"email": "..."
}
} Mettre à jour un contact
Met à jour un contact existant dans votre espace de travail. Nécessite les permissions complètes. Les contacts peuvent être identifiés par leur ID (con_xxx) ou leur adresse e-mail.
/contacts/{id}Paramètres de chemin
idstringRequiredL’ID du contact (con_xxx) ou l’adresse e-mail.
Corps de la requête
emailstringNouvelle adresse e-mail.
first_namestringNouveau prénom.
last_namestringNouveau nom de famille.
custom_fieldsobjectRemplacer les champs personnalisés.
unsubscribedbooleanStatut de désabonnement global.
const response = await fetch('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M', {
method: 'POST',
headers: {
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
},
body: JSON.stringify({
first_name: 'Jeanne',
last_name: 'Dupont',
custom_fields: { entreprise: 'NouvelleCorp' }
})
});
const result = await response.json(); <?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
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([
'first_name' => 'Jeanne',
'last_name' => 'Dupont',
'custom_fields' => ['entreprise' => 'NouvelleCorp']
]),
CURLOPT_HTTPHEADER => [
'Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "Erreur cURL #:" . $err;
} else {
$result = json_decode($response, true);
print_r($result);
} import requests
response = requests.post(
'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
headers={
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
},
json={
'first_name': 'Jeanne',
'last_name': 'Dupont',
'custom_fields': {'entreprise': 'NouvelleCorp'}
}
)
result = response.json()
print(result) require 'net/http'
require 'json'
uri = URI('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Authorization'] = 'Bearer em_test_51RxCWJ...vS00p61e0qRE'
request['Content-Type'] = 'application/json'
request.body = {
first_name: 'Jeanne',
last_name: 'Dupont',
custom_fields: { entreprise: 'NouvelleCorp' }
}.to_json
response = http.request(request)
result = JSON.parse(response.body)
puts result package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"
data := map[string]interface{}{
"first_name": "Jeanne",
"last_name": "Dupont",
"custom_fields": map[string]string{"entreprise": "NouvelleCorp"},
}
jsonData, _ := json.Marshal(data)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result)
} use reqwest;
use serde_json::{json, Value};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.post("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M")
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.json(&json!({
"first_name": "Jeanne",
"last_name": "Dupont",
"custom_fields": {"entreprise": "NouvelleCorp"}
}))
.send()
.await?;
let result: Value = response.json().await?;
println!("{:?}", result);
Ok(())
} import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.net.http.HttpRequest.BodyPublishers;
public class UpdateContact {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
String jsonBody = "{\"first_name\":\"Jeanne\",\"last_name\":\"Dupont\",\"custom_fields\":{\"entreprise\":\"NouvelleCorp\"}}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"))
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.POST(BodyPublishers.ofString(jsonBody))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
} using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class UpdateContact
{
public static async Task Main()
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization",
"Bearer em_test_51RxCWJ...vS00p61e0qRE");
var data = new {
first_name = "Jeanne",
last_name = "Dupont",
custom_fields = new { entreprise = "NouvelleCorp" }
};
var json = JsonConvert.SerializeObject(data);
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync(
"https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M", content);
var result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}
} curl -X POST https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M \
-H "Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE" \
-H "Content-Type: application/json" \
-d '{
"first_name": "Jeanne",
"last_name": "Dupont",
"custom_fields": { "entreprise": "NouvelleCorp" }
}' {
"object": "contact",
"id": "con_2BxFg7KNqr5M...",
"email": "jean@exemple.com",
"first_name": "Jeanne",
"last_name": "Dupont",
"custom_fields": { "entreprise": "NouvelleCorp" },
"unsubscribed": false,
"audiences": [
{
"id": "aud_xxx",
"name": "Newsletter",
"subscriber": {
"id": "sub_xxx",
"subscribed": true,
"subscribed_at": "2026-02-10T10:00:00.000000+00:00",
"unsubscribed_at": null,
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-10T10:00:00.000000+00:00"
}
}
],
"created_at": "2026-02-10T10:00:00.000000+00:00",
"updated_at": "2026-02-12T09:00:00.000000+00:00"
} {
"error": "Contact introuvable"
} {
"error": "Un contact avec cette adresse e-mail existe déjà",
"existing": {
"object": "contact",
"id": "con_...",
"email": "..."
}
} Supprimer un contact
Supprime un contact de votre espace de travail. Nécessite les permissions complètes. Cette action supprime le contact ainsi que tous les enregistrements d’abonnés associés. Déclenche l’événement subscriber.deleted pour chaque abonné avant suppression, puis contact.deleted. Les contacts peuvent être identifiés par leur ID (con_xxx) ou leur adresse e-mail.
/contacts/{id}Paramètres de chemin
idstringRequiredL’ID du contact (con_xxx) ou l’adresse e-mail.
const response = await fetch('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
});
const result = await response.json(); <?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type: application/json'
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "Erreur cURL #:" . $err;
} else {
$result = json_decode($response, true);
print_r($result);
} import requests
response = requests.delete(
'https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M',
headers={
'Authorization': 'Bearer em_test_51RxCWJ...vS00p61e0qRE',
'Content-Type': 'application/json'
}
)
result = response.json()
print(result) require 'net/http'
require 'json'
uri = URI('https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(uri)
request['Authorization'] = 'Bearer em_test_51RxCWJ...vS00p61e0qRE'
request['Content-Type'] = 'application/json'
response = http.request(request)
result = JSON.parse(response.body)
puts result package main
import (
"fmt"
"net/http"
)
func main() {
url := "https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Set("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
fmt.Println("Statut:", resp.Status)
} use reqwest;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = reqwest::Client::new();
let response = client
.delete("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M")
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.send()
.await?;
println!("Statut: {}", response.status());
Ok(())
} import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
public class DeleteContact {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M"))
.header("Authorization", "Bearer em_test_51RxCWJ...vS00p61e0qRE")
.header("Content-Type", "application/json")
.DELETE()
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println("Statut: " + response.statusCode());
}
} using System;
using System.Net.Http;
using System.Threading.Tasks;
public class DeleteContact
{
public static async Task Main()
{
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization",
"Bearer em_test_51RxCWJ...vS00p61e0qRE");
var response = await client.DeleteAsync(
"https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M");
Console.WriteLine("Statut: " + response.StatusCode);
}
}
} curl -X DELETE https://api.emailit.com/v2/contacts/con_2BxFg7KNqr5M \
-H "Authorization: Bearer em_test_51RxCWJ...vS00p61e0qRE" \
-H "Content-Type: application/json" {
"object": "contact",
"id": "con_2BxFg7KNqr5M...",
"email": "john@example.com",
"deleted": true
} {
"error": "Contact introuvable"
}