curl --request GET \
--url https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID} \
--header 'Authorization: <api-key>'import requests
url = "https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}', 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.tamtam.ai/api/v2/contacts-lists/{contactsListID}",
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: <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"
"net/http"
"io"
)
func main() {
url := "https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"account_id": "<string>",
"company_linkedin_ids": [
"<string>"
],
"contacts_count": 123,
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"is_managed": true,
"kind": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"assignee": "<string>",
"created_by_user_email": "<string>"
}{
"detail": "Property foo is required but is missing.",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "https://example.com/errors/example"
}Get a contacts list
Get a contacts list or contact search by ID; kind says which it is. Customer API keys read from their own bound account; staff TAMTAM API keys must supply an explicit account_id.
curl --request GET \
--url https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID} \
--header 'Authorization: <api-key>'import requests
url = "https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}', 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.tamtam.ai/api/v2/contacts-lists/{contactsListID}",
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: <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"
"net/http"
"io"
)
func main() {
url := "https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tamtam.ai/api/v2/contacts-lists/{contactsListID}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"account_id": "<string>",
"company_linkedin_ids": [
"<string>"
],
"contacts_count": 123,
"created_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"is_managed": true,
"kind": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"assignee": "<string>",
"created_by_user_email": "<string>"
}{
"detail": "Property foo is required but is missing.",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "https://example.com/errors/example"
}Authorizations
Account API key passed in the Authorization header
Path Parameters
Contacts list UUID
Query Parameters
Target account UUID. Required for staff; ignored for customer keys.
Response
OK
Owning account UUID
LinkedIn company IDs attached to the list
Number of contacts currently in the list
Creation timestamp
Contacts list UUID
When true, the list is read-only for the account user and writable only via this staff API
"regular" for a hand-built list, "search" for the result set of a saved contact search. A search is produced by re-running a query rather than assembled row by row; both accept contacts and both are read the same way.
List name
User-side organizational tags (writable on managed lists)
Email of the assigned owner
Email of the creator (or ops attribution for managed lists)