RedBrick API Documentation
Welcome to the RedBrick API! Our RESTful API allows you to integrate property management functionality into your applications, websites, and workflows. Whether you're building custom dashboards, mobile apps, or automated workflows, our API provides secure and reliable access to all core features.
https://api.redbrick-lettings.co.uk/v1/
Get Started in Minutes
Follow these simple steps to start using the RedBrick API
Authentication
The RedBrick API uses API key authentication. You'll need to include your API key in the Authorization header of every request.
Authorization: Bearer your_api_key_here
Content-Type: application/json
Getting Your API Key
To get your API key:
- Log into your RedBrick account
- Navigate to Settings → API Keys
- Click "Generate New Key"
- Copy and securely store your key
Rate Limits
To ensure fair usage and maintain system performance, the RedBrick API implements rate limiting.
| Plan | Requests per Hour | Requests per Day | Burst Limit |
|---|---|---|---|
| Starter | 1,000 | 10,000 | 100/min |
| Professional | 5,000 | 50,000 | 200/min |
| Enterprise | 20,000 | 200,000 | 500/min |
X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset
Properties API
Manage your property portfolio programmatically. Create, read, update, and delete properties with full control over all property attributes.
List All Properties
Retrieve a paginated list of all properties in your portfolio. Supports filtering, sorting, and searching.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | optional | Page number for pagination (default: 1) |
| limit | integer | optional | Number of results per page (default: 20, max: 100) |
| status | string | optional | Filter by status: occupied, vacant, maintenance |
| city | string | optional | Filter by city name |
{
"data": [
{
"id": "prop_123456",
"address": "123 Main Street",
"city": "London",
"postcode": "SW1A 1AA",
"type": "apartment",
"bedrooms": 2,
"bathrooms": 1,
"rent_amount": 2500.00,
"currency": "GBP",
"status": "occupied",
"created_at": "2025-01-08T10:30:00Z",
"updated_at": "2025-01-08T10:30:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 247,
"pages": 13
}
}
Create Property
Add a new property to your portfolio. All required fields must be provided.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| address | string | required | Full street address |
| city | string | required | City name |
| postcode | string | required | UK postcode |
| type | string | required | Property type: apartment, house, studio, etc. |
| rent_amount | decimal | required | Monthly rent amount |
{
"address": "456 Oak Avenue",
"city": "Manchester",
"postcode": "M1 2AB",
"type": "apartment",
"bedrooms": 3,
"bathrooms": 2,
"rent_amount": 1800.00,
"description": "Modern 3-bedroom apartment in city center"
}
Tenants API
Manage tenant information, tenancy agreements, and tenant communications through the API.
List All Tenants
Retrieve a list of all tenants across your property portfolio.
{
"data": [
{
"id": "tenant_789012",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@email.com",
"phone": "+44 7700 123456",
"property_id": "prop_123456",
"lease_start": "2024-01-01",
"lease_end": "2025-12-31",
"rent_amount": 2500.00,
"deposit_amount": 3000.00,
"status": "active"
}
]
}
Webhooks
Stay informed about important events in your property management system with real-time webhooks.
Webhook Configuration
Configure webhook endpoints in your account settings or via the API:
POST /webhooks
{
"url": "https://your-app.com/webhooks/redbrick",
"events": ["payment.received", "payment.overdue"],
"active": true
}
Webhook Payload
{
"id": "evt_abc123def456",
"type": "payment.received",
"created_at": "2025-01-08T14:30:00Z",
"data": {
"payment": {
"id": "pay_789456123",
"tenant_id": "tenant_789012",
"property_id": "prop_123456",
"amount": 2500.00,
"currency": "GBP",
"payment_date": "2025-01-08",
"method": "bank_transfer"
}
}
}
Error Handling
The RedBrick API uses conventional HTTP response codes to indicate the success or failure of requests.
HTTP Status Codes
| Status Code | Meaning | Description |
|---|---|---|
| 200 | OK | Request successful |
| 201 | Created | Resource created successfully |
| 400 | Bad Request | Invalid request parameters |
| 401 | Unauthorized | Invalid or missing API key |
| 404 | Not Found | Resource not found |
| 429 | Too Many Requests | Rate limit exceeded |
| 500 | Internal Server Error | Server error |
Error Response Format
{
"error": {
"code": "validation_failed",
"message": "The request could not be validated",
"details": [
{
"field": "email",
"message": "Email address is required"
}
]
}
}
SDKs & Libraries
Official SDKs and community libraries to help you integrate faster.
🟦 Node.js SDK
Official Node.js library with TypeScript support
npm install @redbrick/nodejs-sdk
🐍 Python SDK
Python library with async/await support
pip install redbrick-python
💎 Ruby Gem
Ruby gem for Rails applications
gem install redbrick-ruby