Contents
On this page
List Accounts - Plugixa CRM
GET /plugixa-crm/v1/accounts
List accounts (companies), one page at a time.
Any user with access to Plugixa CRM. With Plugixa CRM Pro roles, the list only holds the accounts the user’s role lets them read.
Request
GET https://your-site.example/wp-json/plugixa-crm/v1/accounts?type=customer&per_page=25
Query parameters
| Name | Type | Default | Description |
|---|---|---|---|
type |
string |
Accounts of this type only: customer, prospect, partner or supplier. |
Plus the list parameters every paged list accepts. search matches the name and the e-mail address. orderby accepts id, name, type, industry, created_at, modified_at. Field filters (field__operator=value, see Filters) work on assigned_user_id, created_at, modified_at, type, industry, plus Pro custom fields marked filterable.
Responses
200 OK. data is one page of accounts.
{
"success": true,
"data": [
{
"id": "12",
"name": "Northwind Traders",
"type": "customer",
"industry": "Wholesale",
"website": "https://northwind.example",
"email": "hello@northwind.example",
"phone": "+1 202 555 0143",
"billing_street": "",
"billing_city": "Seattle",
"billing_state": "WA",
"billing_postal_code": "98101",
"billing_country": "United States",
"shipping_street": "",
"shipping_city": "",
"shipping_state": "",
"shipping_postal_code": "",
"shipping_country": "",
"parent_id": null,
"description": "",
"status": "active",
"assigned_user_id": "3",
"created_by": "1",
"modified_by": "1",
"created_at": "2026-11-12 09:30:00",
"modified_at": "2026-11-12 09:30:00",
"deleted_at": null,
"sic_code": ""
}
],
"meta": {
"total": 37,
"pages": 2
}
}
| Field | Type | Meaning |
|---|---|---|
data[].id |
string |
The account’s id. Account fields come back as strings, numbers included |
data[].name |
string |
The account’s name |
data[].type |
string |
customer, prospect, partner or supplier |
data[].status |
string |
Free text, active unless you set something else |
data[].parent_id |
string|null |
The parent account’s id |
data[].assigned_user_id |
string|null |
The WordPress user who owns the account |
meta.total |
integer |
Accounts matching, before paging |
meta.pages |
integer |
Number of pages at this per_page |
List rows are the account alone. Get Account adds its contacts and child accounts.
Errors
| Status | Code | When |
|---|---|---|
400 |
plugixa_crm_unknown_filter |
A field__operator parameter names a field this list cannot filter on. |
400 |
plugixa_crm_unknown_operator |
The operator does not work on that field’s type. |
400 |
plugixa_crm_missing_value |
The filter needs a value, or two for between. |
Plus the errors every endpoint can return.
Examples
curl -s "https://your-site.example/wp-json/plugixa-crm/v1/accounts?type=customer&per_page=25" \
-u "admin:$WP_APP_PASSWORD"
<?php
$query = http_build_query([
'type' => 'customer',
'per_page' => 25,
]);
$ch = curl_init('https://your-site.example/wp-json/plugixa-crm/v1/accounts?' . $query);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_USERPWD => 'admin:' . getenv('WP_APP_PASSWORD'),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
const auth = 'Basic ' + btoa(`admin:${process.env.WP_APP_PASSWORD}`);
const query = new URLSearchParams({ type: 'customer', per_page: '25' });
const response = await fetch(`https://your-site.example/wp-json/plugixa-crm/v1/accounts?${query}`, {
headers: {
'Authorization': auth,
},
});
const { data, meta } = await response.json();
Quick Links
Share