Request cURL JavaScript Python
Hide Copy GET https://api.tailend.dev/v1/listings/{id}/versionsCopy URL
curl -sS \
-H "X-API-Key: $TAILEND_API_KEY" \
"https://api.tailend.dev/v1/listings/{id}/versions" const res = await fetch("https://api.tailend.dev/v1/listings/{id}/versions" , {
headers: { 'X-API-Key' : '$TAILEND_API_KEY' },
});
const body = await res.json();
console.log(res.status, body);import os
import requests
response = requests.get(
"https://api.tailend.dev/v1/listings/{id}/versions" ,
headers={'X-API-Key' : os.environ['TAILEND_API_KEY' ]},
)
response.raise_for_status()
print (response.json())
Response Sample Sample Live Copy 200 400 401 403 404 405 429 500 501 503
Showing sample data. Paste a key to run it live. Get a key
A page of versions
{
"data" : [
{
"changed_at" : "2026-09-10T06:12:05Z" ,
"kind" : "date_changed" ,
"fields" : [
"starts_at"
]
}
],
"meta" : {
"listing_id" : "00000000-0000-4000-8000-000000000001" ,
"limit" : 1 ,
"count" : 1 ,
"has_more" : false
}
}Malformed or contradictory parameters (lat without lng, to before from, unknown category), or a cursor this API did not issue for this exact request — replayed from another endpoint, resource, metro or filter set, hand-crafted, or altered.
{
"error" : {
"code" : "bad_request" ,
"message" : "radius_m: must be at least 100" ,
"details" : {
"param" : "radius_m"
},
"request_id" : "req_dfbc3295a8382b05"
}
}Missing, unknown or revoked X-API-Key.
{
"error" : {
"code" : "unauthorized" ,
"message" : "missing X-API-Key header" ,
"request_id" : "req_90e63908273f6bff"
}
}Two different reasons share this status.
{
"error" : {
"code" : "forbidden" ,
"message" : "key is not scoped to metro 'boston'" ,
"details" : {
"metros" : [
"philadelphia"
]
},
"request_id" : "req_9e7a750acef48ab2"
}
}No published, active resource with that id (or unknown metro).
{
"error" : {
"code" : "not_found" ,
"message" : "unknown metro 'boston'" ,
"request_id" : "req_7431b51e10ec2b77"
}
}The path exists; the method does not.
{
"error" : {
"code" : "method_not_allowed" ,
"message" : "POST is not allowed on this path; this API is read-only" ,
"details" : {
"allow" : [
"GET" ,
"HEAD" ,
"OPTIONS"
]
},
"request_id" : "req_01J9Z3"
}
}A limit was reached.
{
"error" : {
"code" : "rate_limited" ,
"message" : "3 requests per minute exceeded" ,
"request_id" : "req_06bfd3c2d5e8aa9f"
}
}A bug on our side.
{
"error" : {
"code" : "internal" ,
"message" : "internal error" ,
"request_id" : "req_01J9Z3"
}
}This endpoint or feature is not available and will not become available without a configuration change — for ?address=, this means no geocoder is configured.
{
"error" : {
"code" : "not_implemented" ,
"message" : "this endpoint is not enabled on this deployment; it is not a fault and retrying will not help" ,
"request_id" : "req_01J9Z3"
}
}A transient outage: a dependency could not be reached or did not answer in time.
{
"error" : {
"code" : "unavailable" ,
"message" : "the service is temporarily unable to serve this request; retry after the interval in Retry-After" ,
"request_id" : "req_01J9Z3"
}
}