List transactions
Transactions API · transactions.list
URL · Fields · Example · Response · Try it
URL and authentication
POST https://YOUR-BACKEND/api/automation/v1/execute
Send Authorization: Bearer <connection key>, Accept: application/json and Content-Type: application/json. Create a connection.
This operation requires read access and CRM permission view_transaction. The gateway invokes GET /api/v1/app/transactions internally. Use the POST URL above with your automation key, including for read and delete operations.
Request parameters
| Key | Type | Requirement |
|---|---|---|
operation | string | Required; exactly transactions.list |
data | object | Optional; see fields below |
Fields
Fields below belong inside data. Dot paths describe nested objects; * means each array item. nullable permits null and sometimes validates a supplied field. in: lists allowed values; min: and max: limit the value, length or item count. exists: and exists_in_company: require a valid record ID. Conditional rules such as required_if and required_with refer to other fields in the same payload. Use YYYY-MM-DD for date-only values and timestamps with timezone offsets for follow-ups.
| Field | Type | Requirement | Format / validation |
|---|---|---|---|
status | string | Optional | — Filter by transaction status (e.g., ‘pending’, ‘completed’, ‘cancelled’). Example: pending |
transaction_type | string | Optional | — Filter by transaction type (sale or rental). Example: rental |
type | string | Optional | — Alias for transaction_type (used by the Brixit OS transactions list). Example: rental |
transaction_source | string | Optional | — Filter by transaction source (e.g., ‘internal’, ‘external_listing’). Example: internal |
property_type | integer|array | Optional | — One or more listing type IDs (same as listings listing_type_id). |
propertyType | integer|array | Optional | — Alias for property_type (Brixit OS transactions filters send propertyType[] for multi-select). |
property_types | array | Optional | — Same as property_type (optional alternate shape). |
start_date | string | Optional | — Filter by start date (e.g., ‘2023-01-01’). Example: 2023-01-01 |
end_date | string | Optional | — Filter by end date (e.g., ‘2023-12-31’). Example: 2023-12-31 |
user_ids | array | Optional | — Filter by transaction creators or internal commission agents. |
search | string | Optional | — Search for transactions by transaction number, listing title, or client name. Example: 12345 |
per_page | integer | Optional | integer; min:1; max:100 — Gateway default 25; clamped to 1–100. |
page | integer | Optional | integer; min:1 — Default 1. |
Example request
Replace the example IDs and values with records in your installation. Supply any additional custom fields required by your company.
{
"operation": "transactions.list",
"data": {
"page": 1,
"per_page": 25
}
}
Response
Returns matching records in data. Paginated results include meta.current_page, meta.last_page, meta.per_page, meta.total and meta.has_more_pages. Increment the request’s data.page while more pages remain. Related fields depend on record visibility and the resource.
The gateway preserves the underlying HTTP status and JSON body. Successful requests return HTTP 200. A response may also include localized message fields.
Illustrative response excerpt (additional fields may be returned):
{
"status": "success",
"data": [],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 25,
"total": 0,
"has_more_pages": false
}
}
Errors
| HTTP status | Meaning |
|---|---|
| 400 | A CRM business rule rejected the action. |
| 401 | Missing, invalid, expired or revoked connection key. |
| 403 | Connection access or CRM permissions do not allow this action. |
| 404 | Operation or record unavailable. |
| 413 | Request or result exceeds its size limit; reduce payload or page size. |
| 422 | Missing or invalid fields, or a CRM business rule rejected the operation. |
| 429 | Rate limit exceeded; wait before retrying. |
| 500 | The server could not complete the operation. |
Validation failures may return message / errors, or an error string with an optional fields array. The tester shows the actual HTTP status and full body. Read about limits and retries.
Try it
Brixit API v1
Try this request
Requests run from your browser to your installation. Enter the backend URL shown in Brixit. Your connection key stays in this component’s memory and is cleared when you leave this page.
curl --request POST 'https://crm.example.com/api/automation/v1/execute' \
--header "Authorization: Bearer $BRIXIT_CONNECTION_KEY" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"operation": "transactions.list",
"data": {
"page": 1,
"per_page": 25
}
}'Code uses a connection-key variable; your entered key is never included in copied examples.