Create a property with its tenancy, price a rent increase, get the landlord’s approval and generate Form 4A — every call, in order.
Find your workspaceCreate the property with its tenancyPrice the increaseThe landlord approvesGenerate the noticeFollow the response
This walkthrough uses an agency workspace. Replace $TOKEN, $AGENCY and ids with your own.
curl https://api.abide.rent/api/v1/me -H "Authorization: Bearer $TOKEN"
curl -X POST https://api.abide.rent/api/v1/properties \
-H "Authorization: Bearer $TOKEN" -H "X-Abide-Rent-Context: agency" -H "X-Abide-Rent-Context-Id: $AGENCY" \
-H "Content-Type: application/json" \
-d '{ "service_level": "fully_managed",
"property": { "address_line_1": "49 Essex Drive", "town": "Bury", "postcode": "BL9 9JH", "bedrooms": 2 },
"landlord": { "name": "Ashworth Holdings Ltd", "email": "owner@example.co.uk" },
"tenant": { "first_name": "Amy", "last_name": "Hargreaves", "email": "amy@example.com", "phone": "07700 900123" },
"tenancy": { "rent_pence": 75000, "started_on": "2025-11-01" } }'
Omit tenant and tenancy to register a vacant property. The landlord and tenant get free portal invitations.
POST /api/v1/rent-reviews with the tenancy_id and proposed_rent_pence. Leave proposed_effective_on out to use the earliest valid date. The answer carries the defensible band, where the proposal sits in it, and the challenge risk.
The landlord approves in their portal, or the landlord workspace calls POST /api/v1/rent-reviews/{id}/approve. Self-managed properties skip this.
POST /api/v1/issued-documents with kind: form_4a, the property_id and the reviewed figures. A person then signs it and serves it in the product — there is no /serve route, by design.
GET /api/v1/issued-documents?property_id=… shows service, the tenant’s acceptance, query or referral, and any legal hold.