Get active signal catalog for a state
curl --request GET \
--url https://api.homelogs.io/v1/signals/catalog \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.homelogs.io/v1/signals/catalog"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.homelogs.io/v1/signals/catalog', 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.homelogs.io/v1/signals/catalog",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.homelogs.io/v1/signals/catalog"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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.homelogs.io/v1/signals/catalog")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.homelogs.io/v1/signals/catalog")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"state": "<string>",
"count": 1,
"signals": [
{
"signal_key": "<string>",
"active_signal_version": "<string>",
"active_weights_profile_id": "<string>",
"status": "<string>",
"spec": {}
}
]
}{
"message": "<string>"
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "state must be a 2-letter code",
"request_id": "req-123"
}
}{
"message": "<string>"
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "state must be a 2-letter code",
"request_id": "req-123"
}
}Geo-Scoped Signals
Signals Catalog
GET
/
v1
/
signals
/
catalog
Get active signal catalog for a state
curl --request GET \
--url https://api.homelogs.io/v1/signals/catalog \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.homelogs.io/v1/signals/catalog"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.homelogs.io/v1/signals/catalog', 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.homelogs.io/v1/signals/catalog",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.homelogs.io/v1/signals/catalog"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<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.homelogs.io/v1/signals/catalog")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.homelogs.io/v1/signals/catalog")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"state": "<string>",
"count": 1,
"signals": [
{
"signal_key": "<string>",
"active_signal_version": "<string>",
"active_weights_profile_id": "<string>",
"status": "<string>",
"spec": {}
}
]
}{
"message": "<string>"
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "state must be a 2-letter code",
"request_id": "req-123"
}
}{
"message": "<string>"
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "state must be a 2-letter code",
"request_id": "req-123"
}
}Returns active signal keys and metadata for both geo-scoped and permit-scoped families.
Call this first when your client needs dynamic signal discovery before requesting leads, stats, or geo signal rows.
For signal meanings and timing guidance, see Signals Catalog.
Authorizations
Query Parameters
Two-letter state code. Defaults to WA.
Pattern:
^[A-Za-z]{2}$Optional CSV list of signal keys.
Was this page helpful?
⌘I

