Skip to main content

Phone Book Entry

The Phone Book Entry object is supported by the MiRTA PBX OpenAPI endpoint. This object is tenant-scoped. Tenant API keys must include tenant=CANISTRACCI; writes require a writable API key.

Object Summary

PropertyValue
Objectphonebookentry
Primary path/phonebookentries
ID fieldpe_id
Label fieldpe_id
Primary source tablepe_phonebookentries
Required on createphonebook_id, at least one value
Path aliases/phonebookentry, /phonebookentries, /phonebook_entry, /phonebook_entries, /phonebookcontact, /phonebookcontacts, /phonebook_contact, /phonebook_contacts

Endpoint Patterns

ActionExample pattern
ListGET https://pbx.example.com/pbx/openapi.php/phonebookentries?tenant=CANISTRACCI
Get by IDGET https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI
CreatePOST https://pbx.example.com/pbx/openapi.php/phonebookentries?tenant=CANISTRACCI
UpdatePATCH https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI
DeleteDELETE https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI

Accepted Field Aliases

Request fieldSource field
phonebook_idpe_pb_id
pbidpe_pb_id
valuespd_phonebookdetails keyed by pi_code
fieldspd_phonebookdetails keyed by pi_code
detailspd_phonebookdetails rows
NAMEphone book item code
PHONE1phone book item code
PHONE2phone book item code
EMAILphone book item code
ROUTINGphone book item code

Important Notes

  • Entry values are stored in pd_phonebookdetails and are keyed by pi_phonebookitems.pi_code.
  • Send values as a values or fields object, as top-level item codes, or as detail rows containing pi_id or pi_code and a value.
  • Sending an empty string or null for a value clears that field from the entry.

Examples

List Phone Book Entries

Returns the phone book entries visible to the key and scope.

curl -H "X-API-Key: TENANT_API_KEY" \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries?tenant=CANISTRACCI"

Get Phone Book Entry

Reads one object by its internal ID.

curl -H "X-API-Key: TENANT_API_KEY" \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI"

Create Phone Book Entry

Creates a new object. Use the short aliases shown above or the source field names.

curl -X POST \
  -H "X-API-Key: TENANT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "phonebook_id": 12,
  "values": {
    "NAME": "Ada Rivera",
    "PHONE1": "+15551230001",
    "EMAIL": "ada.rivera@example.com",
    "ROUTING": "EXT-100"
  }
}' \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries?tenant=CANISTRACCI"

Edit Phone Book Entry

Updates only the supplied fields.

curl -X PATCH \
  -H "X-API-Key: TENANT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "values": {
    "PHONE1": "+15551230002",
    "EMAIL": "ada.updated@example.com"
  }
}' \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI"

Delete Phone Book Entry

Deletes the object. Check references before deleting configuration used by routing or reporting.

curl -X DELETE \
  -H "X-API-Key: TENANT_API_KEY" \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI"

List Entries for One Phone Book

Filters the phone book entry list by parent phonebook_id. The aliases pbid and pe_pb_id are also accepted.

curl -X GET \
  -H "X-API-Key: TENANT_API_KEY" \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries?tenant=CANISTRACCI&phonebook_id=12"

Clear Phone Book Entry Value

Removes the EMAIL detail row for the selected entry while leaving other values unchanged.

curl -X PATCH \
  -H "X-API-Key: TENANT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "values": {
    "EMAIL": ""
  }
}' \
  "https://pbx.example.com/pbx/openapi.php/phonebookentries/OBJECT_ID?tenant=CANISTRACCI"

Common Errors

ErrorMeaning
missing_api_keyNo API key was supplied in the query string, X-API-Key, or bearer token.
invalid_api_keyThe supplied key does not match the tenant or global API key.
tenant_requiredA tenant code is required for tenant-scoped writes or tenant-key reads.
read_only_api_keyThe key can read data but cannot create, update, or delete objects.
missing_required_fieldA required create field is missing.