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.

🚀 API Version
Current API version is v1. All API endpoints are prefixed with https://api.redbrick-lettings.co.uk/v1/

Get Started in Minutes

Follow these simple steps to start using the RedBrick API

1
Get API Key
Generate your API key from your account dashboard
2
Make First Call
Test authentication with a simple GET request
3
Build Integration
Start integrating with your application
4
Go Live
Deploy to production with confidence

Authentication

The RedBrick API uses API key authentication. You'll need to include your API key in the Authorization header of every request.

Authentication Header
Authorization: Bearer your_api_key_here
Content-Type: application/json
⚠️ Security Notice
Keep your API keys secure and never commit them to public repositories. Use environment variables to store API keys in your applications.

Getting Your API Key

To get your API key:

  1. Log into your RedBrick account
  2. Navigate to Settings → API Keys
  3. Click "Generate New Key"
  4. 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
📈 Rate Limit Headers
Every API response includes rate limit information in the headers:
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.

GET

List All Properties

GET /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
200 Success
401 Unauthorized
Example Response
{
  "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
  }
}
POST

Create Property

POST /properties

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
Example Request
{
  "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.

GET

List All Tenants

GET /tenants

Retrieve a list of all tenants across your property portfolio.

Example Response
{
  "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.

🔔 Event Types
Available webhooks: property.created, property.updated, tenant.created, tenant.moved_out, payment.received, payment.overdue, maintenance.requested, maintenance.completed

Webhook Configuration

Configure webhook endpoints in your account settings or via the API:

Create Webhook Endpoint
POST /webhooks

{
  "url": "https://your-app.com/webhooks/redbrick",
  "events": ["payment.received", "payment.overdue"],
  "active": true
}

Webhook Payload

Example 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 Response Example
{
  "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

⚡ Postman Collection

Complete collection for API testing

Download Collection