API Reference
Ostrich API Documentation
Build with Ostrich. Access STR vendor data, property manager intelligence, market signals, and job postings via our REST API.
Authentication
All API requests require Bearer token authentication via the Authorization header. Generate and manage your API keys in your account settings.
curl -X GET https://ostrichintel.com/api/v1/vendors \
-H "Authorization: Bearer YOUR_API_KEY"Generate keys: Visit your API settings to create and manage your API keys.
Keep them secret: Treat API keys like passwords. Never commit them to version control or expose them in client-side code.
Tier access: Your API key inherits the permissions of your subscription tier. Upgrade your account to access enterprise endpoints.
Rate Limits
API rate limits are tracked per API key and vary by subscription tier. The remaining_calls field in every response tells you how many calls you have left in the current period.
429 Rate Limited: Your API key has exceeded its monthly limit. Upgrade your tier or wait for the reset.
Pagination: Use limit and offset parameters to paginate through large result sets. Maximum limit is 100 per request.
Endpoints
List all vendors with optional filters
Query Parameters
| Name | Type | Description |
|---|---|---|
category | string | Filter by vendor category |
min_score | number | Minimum vendor score (0-100) |
max_score | number | Maximum vendor score (0-100) |
limit | number | Results per page (default: 25, max: 100) |
offset | number | Pagination offset (default: 0) |
Example Request
curl -X GET 'https://ostrichintel.com/api/v1/vendors?category=PMS&min_score=80&limit=10' \
-H "Authorization: Bearer sk_prod_abc123xyz"Example Response
{
"data": [
{
"id": "vendor_001",
"name": "Property Manager Pro",
"slug": "property-manager-pro",
"category": "PMS",
"score": 92,
"reviews_count": 45,
"created_at": "2024-01-15T10:30:00Z"
}
],
"meta": {
"total": 243,
"limit": 10,
"offset": 0,
"remaining_calls": 9995
}
}Get a single vendor by slug
Path Parameters
| Name | Type | Description |
|---|---|---|
slug | string | Vendor slug identifier |
Example Request
curl -X GET 'https://ostrichintel.com/api/v1/vendors/property-manager-pro' \
-H "Authorization: Bearer sk_prod_abc123xyz"Example Response
{
"data": {
"id": "vendor_001",
"name": "Property Manager Pro",
"slug": "property-manager-pro",
"category": "PMS",
"description": "Industry-leading PMS for short-term rentals",
"score": 92,
"reviews_count": 45,
"website": "https://propertymanagerpro.com",
"created_at": "2024-01-15T10:30:00Z"
},
"meta": {
"remaining_calls": 9994
}
}List property manager companies (Growth tier+)
Requires: Growth subscription tier or higher
Query Parameters
| Name | Type | Description |
|---|---|---|
market | string | Filter by market (e.g., Denver, Austin) |
min_units | number | Minimum portfolio units |
max_units | number | Maximum portfolio units |
limit | number | Results per page (default: 25, max: 100) |
offset | number | Pagination offset (default: 0) |
Example Request
curl -X GET 'https://ostrichintel.com/api/v1/companies?market=Denver&min_units=50' \
-H "Authorization: Bearer sk_prod_abc123xyz"Example Response
{
"data": [
{
"id": "company_001",
"name": "Mountain Properties LLC",
"market": "Denver",
"units": 157,
"pms": ["Hostaway", "PipingHot"],
"founded_year": 2015,
"created_at": "2024-01-15T10:30:00Z"
}
],
"meta": {
"total": 89,
"limit": 25,
"offset": 0,
"remaining_calls": 9993
}
}Get recent market signals (Growth tier+)
Requires: Growth subscription tier or higher
Query Parameters
| Name | Type | Description |
|---|---|---|
type | string | Signal type (e.g., funding, partnership, acquisition) |
since | string | ISO 8601 date to filter results |
limit | number | Results per page (default: 25, max: 100) |
Example Request
curl -X GET 'https://ostrichintel.com/api/v1/signals?type=funding&limit=20' \
-H "Authorization: Bearer sk_prod_abc123xyz"Example Response
{
"data": [
{
"id": "signal_001",
"vendor_id": "vendor_001",
"vendor_name": "Hostaway",
"type": "funding",
"title": "Series B Funding",
"amount": "$15M",
"created_at": "2024-03-10T14:22:00Z"
}
],
"meta": {
"count": 1,
"limit": 20,
"remaining_calls": 9992
}
}List job postings from STR vendors
Query Parameters
| Name | Type | Description |
|---|---|---|
location | string | Filter by location (partial match) |
work_model | string | Filter by work model (Remote, On-site, Hybrid) |
department | string | Filter by department |
limit | number | Results per page (default: 25, max: 100) |
offset | number | Pagination offset (default: 0) |
Example Request
curl -X GET 'https://ostrichintel.com/api/v1/jobs?location=San+Francisco&work_model=Remote' \
-H "Authorization: Bearer sk_prod_abc123xyz"Example Response
{
"data": [
{
"id": "job_001",
"vendor_id": "vendor_001",
"vendor_name": "Hostaway",
"title": "Senior Backend Engineer",
"location": "San Francisco, CA",
"work_model": "Remote",
"department": "Engineering",
"posting_url": "https://careers.hostaway.com/jobs/backend",
"created_at": "2024-03-15T09:00:00Z"
}
],
"meta": {
"total": 34,
"limit": 25,
"offset": 0,
"remaining_calls": 9991
}
}Error Codes
Unauthorized
Missing or invalid API key in Authorization header
Forbidden
Your subscription tier does not have access to this endpoint. Upgrade to Growth or Enterprise tier.
Not Found
The requested resource does not exist (e.g., vendor not found)
Too Many Requests
Rate limit exceeded. Check the remaining_calls field and upgrade your tier if needed.
Internal Server Error
Something went wrong on our end. Try again later or contact support.
Ready to integrate?
Generate your first API key in your account settings and start building with Ostrich today.