What is the requestId Parameter?
The requestId parameter helps you track and correlate API requests with their responses when using the Property Lookup API (/api/v1/property/lookup/all-attributes). This is especially useful when processing data in batches, enabling debugging, logging, and matching results back to your original input data.
Two Types of Request IDs
The Property Lookup API uses two different request identifiers:
Type | Location | Purpose | Format |
API Call ID |
| Identifies the entire API call for support/debugging | NanoId (~15 chars) |
Per-Item ID |
| Correlates individual items in batch requests | Your value or ShortId (~9 chars) |
API Call ID (System-Generated)
Every API response includes a system-generated requestId in the top-level meta object. This ID:
Is always generated by the system (you cannot override it)
Uniquely identifies the entire API call
Is useful for support requests and debugging
Appears in our logs for troubleshooting
Example Response:
{
"results": {
"properties": [...],
"meta": {
"apiVersion": "6.71.0",
"requestId": "iAmdxL3fsi7jAB9"
}
}
}
Per-Item ID (Client-Provided or System-Generated)
When sending batch Property Lookup requests, you can include a requestId for each item. This helps you match responses back to your original records.
If you provide a
requestId, your value is returned in the responseIf you don't provide one, a short ID (~9 characters) is generated automatically
The per-item ID is returned in
property.meta.requestId
How to Use requestId with Property Lookup
Endpoint: POST /api/v1/property/lookup/all-attributes
Request:
{
"requests": [{
"address": {
"street": "123 Main St",
"city": "Phoenix",
"state": "AZ",
"zip": "85001"
},
"requestId": "my-property-001"
}]
}
Response Location: property.meta.requestId
{
"results": {
"properties": [{
"address": {...},
"meta": {
"requestId": "my-property-001"
}
}]
}
}
Use Cases
Batch Processing Correlation
When processing hundreds or thousands of property records, use requestId to match results back to your source data:
# Example: Processing property lookups
records = [
{"id": "DB-001", "address": "123 Main St, Phoenix, AZ"},
{"id": "DB-002", "address": "456 Oak Ave, Tempe, AZ"},
# ... thousands more
]# Build batch request with your IDs
requests = [{
"address": parse_address(r["address"]),
"requestId": r["id"] # Use your database ID
} for r in records]# Send batch request to Property Lookup API
response = api.property_lookup(requests=requests)# Match results back to your records
for prop in response["results"]["properties"]:
db_id = prop["meta"]["requestId"]
# Update your database record with DB ID
Debugging Failed Requests
When a property lookup fails, use the requestId values to identify which specific items had issues:
{
"results": {
"properties": [
{"meta": {"requestId": "prop-001"}, "address": {...}},
{"meta": {"requestId": "prop-002", "error": true}, "errorMessage": "Address not found"}
]
}
}
Support Requests
When contacting support, provide the top-level results.meta.requestId from your API response. This allows us to look up the exact request in our logs.
Best Practices
Use meaningful IDs - Include identifiers from your system (database IDs, file row numbers, etc.) rather than random strings.
Keep IDs unique per batch - Each item in a batch request should have a unique requestId to avoid confusion.
Log the API Call ID - Always log the top-level results.meta.requestId for debugging purposes.
