List accounts
curl --request GET \
--url https://api.reply.io/v3/contact-accounts \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.reply.io/v3/contact-accounts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.reply.io/v3/contact-accounts', 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.reply.io/v3/contact-accounts",
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 <token>"
],
]);
$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.reply.io/v3/contact-accounts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.reply.io/v3/contact-accounts")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.reply.io/v3/contact-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": 123,
"ownerUserId": 123,
"name": "<string>",
"description": "<string>",
"domainName": "<string>",
"domainSecondary": "<string>",
"industry": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"timeZoneId": "<string>",
"linkedInUrl": "<string>",
"phone": "<string>",
"twitterUrl": "<string>",
"logoUrl": "<string>",
"email": "<string>",
"stage": {
"id": 123,
"name": "<string>",
"colorId": 123
},
"linkedProspectsCount": 123,
"createdDate": "2023-11-07T05:31:56Z",
"lastActivityDate": "2023-11-07T05:31:56Z"
}
],
"hasMore": true
}{
"title": "Bad Request",
"status": 400,
"detail": "Parameter 'top' must be between 1 and 1000",
"code": "contactAccount.invalidPagination"
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials are missing or invalid."
}{
"title": "Forbidden",
"status": 403,
"detail": "You do not have permission to perform this operation.",
"code": "contactAccount.forbidden"
}{
"title": "Too Many Requests",
"status": 429,
"detail": "Rate limit exceeded. Retry after 60 seconds."
}Accounts
List accounts
Requires the
contacts:read scope (or a broader one that includes it).
Returns a paginated list of accounts.
GET
/
v3
/
contact-accounts
List accounts
curl --request GET \
--url https://api.reply.io/v3/contact-accounts \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.reply.io/v3/contact-accounts"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.reply.io/v3/contact-accounts', 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.reply.io/v3/contact-accounts",
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 <token>"
],
]);
$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.reply.io/v3/contact-accounts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.reply.io/v3/contact-accounts")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.reply.io/v3/contact-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": 123,
"ownerUserId": 123,
"name": "<string>",
"description": "<string>",
"domainName": "<string>",
"domainSecondary": "<string>",
"industry": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"timeZoneId": "<string>",
"linkedInUrl": "<string>",
"phone": "<string>",
"twitterUrl": "<string>",
"logoUrl": "<string>",
"email": "<string>",
"stage": {
"id": 123,
"name": "<string>",
"colorId": 123
},
"linkedProspectsCount": 123,
"createdDate": "2023-11-07T05:31:56Z",
"lastActivityDate": "2023-11-07T05:31:56Z"
}
],
"hasMore": true
}{
"title": "Bad Request",
"status": 400,
"detail": "Parameter 'top' must be between 1 and 1000",
"code": "contactAccount.invalidPagination"
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials are missing or invalid."
}{
"title": "Forbidden",
"status": 403,
"detail": "You do not have permission to perform this operation.",
"code": "contactAccount.forbidden"
}{
"title": "Too Many Requests",
"status": 429,
"detail": "Rate limit exceeded. Retry after 60 seconds."
}Authorizations
Authenticate every request with a Bearer token. Pass your Reply API key in the
Authorization header:
Authorization: Bearer <your-api-key>
Get your API key from the Reply dashboard: Settings → API Key.
Query Parameters
Maximum number of items to return (default 25, max 1000)
Number of items to skip
Filter accounts by name
Field name to sort by
Sort direction (asc or desc)
⌘I