Count messages
Get the count of team messages that match the pagination filters.
curl --request POST \
--url https://api.heymarket.com/v1/messages/all/count \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"created_at": "2023-11-07T05:31:56Z",
"ascending": true,
"inbox_id": 123,
"limit": 123,
"order": "<string>"
}
'import requests
url = "https://api.heymarket.com/v1/messages/all/count"
payload = {
"created_at": "2023-11-07T05:31:56Z",
"ascending": True,
"inbox_id": 123,
"limit": 123,
"order": "<string>"
}
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({
created_at: '2023-11-07T05:31:56Z',
ascending: true,
inbox_id: 123,
limit: 123,
order: '<string>'
})
};
fetch('https://api.heymarket.com/v1/messages/all/count', 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.heymarket.com/v1/messages/all/count",
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([
'created_at' => '2023-11-07T05:31:56Z',
'ascending' => true,
'inbox_id' => 123,
'limit' => 123,
'order' => '<string>'
]),
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://api.heymarket.com/v1/messages/all/count"
payload := strings.NewReader("{\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\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://api.heymarket.com/v1/messages/all/count")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.heymarket.com/v1/messages/all/count")
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 \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body"<string>""<string>"Unauthorizedtoo many requestserrorAuthorizations
Recommended authentication for new integrations. Generate a short-lived JWT from your API Secret ID and API Secret Key, then pass the signed JWT as a bearer token in the Authorization header.
API Secret credentials are available in the Heymarket app under Settings > Integrations > API. The Secret Key is shown only when it is generated, so copy and store it securely before closing the dialog.
Use the following JWT values:
{ "alg": "HS256", "typ": "JWT" }
{ "iss": "YOUR_API_SECRET_ID", "iat": CURRENT_UNIX_TIMESTAMP }
Replace CURRENT_UNIX_TIMESTAMP with the current Unix timestamp in seconds when generating the token.
Sign the JWT with HMAC-SHA256 using this signing secret:
YOUR_API_SECRET_ID||YOUR_API_SECRET_KEY
Send the signed JWT as a bearer token:
Authorization: Bearer YOUR_SIGNED_JWT
Tokens expire 5 minutes after the iat timestamp. Generate a new JWT per request, or cache it briefly for less than 5 minutes. Generate JWTs only from trusted server-side code; do not expose the API Secret Key in browser, mobile, or other client-side code.
Body
Message pagination json
Last returned message timestamp. Fetch messages created on and after this RFC 3339 timestamp. Message history is limited to the last 12 months; an older value is treated as 12 months ago.
True to sort in ascending order. Defaults to descending.
Optional inbox ID to filter messages.
Messages to return per page. Defaults to 30.
Field to sort by. Valid values are created_at and updated_at.
Response
count of messages in a team
The response is of type string.
Was this page helpful?
curl --request POST \
--url https://api.heymarket.com/v1/messages/all/count \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"created_at": "2023-11-07T05:31:56Z",
"ascending": true,
"inbox_id": 123,
"limit": 123,
"order": "<string>"
}
'import requests
url = "https://api.heymarket.com/v1/messages/all/count"
payload = {
"created_at": "2023-11-07T05:31:56Z",
"ascending": True,
"inbox_id": 123,
"limit": 123,
"order": "<string>"
}
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({
created_at: '2023-11-07T05:31:56Z',
ascending: true,
inbox_id: 123,
limit: 123,
order: '<string>'
})
};
fetch('https://api.heymarket.com/v1/messages/all/count', 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.heymarket.com/v1/messages/all/count",
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([
'created_at' => '2023-11-07T05:31:56Z',
'ascending' => true,
'inbox_id' => 123,
'limit' => 123,
'order' => '<string>'
]),
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://api.heymarket.com/v1/messages/all/count"
payload := strings.NewReader("{\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\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://api.heymarket.com/v1/messages/all/count")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.heymarket.com/v1/messages/all/count")
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 \"created_at\": \"2023-11-07T05:31:56Z\",\n \"ascending\": true,\n \"inbox_id\": 123,\n \"limit\": 123,\n \"order\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body"<string>""<string>"Unauthorizedtoo many requestserror