Summary of Changes
PortSIP PBX REST API Changes Summary
Version: v22.3.0
Date: December 19, 2025
New endpoints
Added
GET/POST /api/admin/usersto create and list system-wide users.Added
GET/POST /api/admin/users/:idto retrieve and update a system-wide user by ID.Added
POST /api/admin/users/:id/usernameto change the username of a system-wide user.Added
POST /api/admin/users/:id/passwordto change the password of a system-wide user.Added
POST /api/admin/users/:id/roleto update the role of a system-wide user.Added
POST /api/admin/users/:id/destroyto remove a system-wide user.Added
GET/POST /api/admin/userto retrieve and update the currently logged-in system user.Added
POST /api/admin/user/usernameto change the username of the currently logged-in system user.Added
POST /api/admin/user/passwordto change the password of the currently logged-in system user.Added
GET/POST /api/admin/ai_engineto manage system-wide AI transcription integration.Added
POST /api/user/transcriptionto create a recording transcription for the currently logged-in user.Added
GET/POST /api/user/transcription/:idto retrieve and update a user transcription by ID.Added
POST /api/user/crm_contacts/:id/favoriteto mark a CRM contact as favorite.Added
POST /api/user/crm_contacts/:id/unfavoriteto remove favorite from a CRM contact.Added
POST /api/user/crm_contacts/sync_tokensto create a sync token for CRM contacts.Added
GET /api/user/crm_contacts/sync_tokens/:token/diffto fetch CRM contact changes (diff) using a sync token.Added
POST /api/users/create_manyto bulk create extension users.Added
POST /api/users/status/get_manyto bulk query current extension user status.Added
POST /api/transcriptionto create tenant-level recording transcriptions.Added
GET/POST /api/transcription/:idto retrieve and update a tenant transcription by ID.Added
POST /api/call_queues/:id/agents/status/get_manyto bulk query call queue agent status.Added
GET/POST /api/crmto retrieve and update tenant CRM integration configuration.Added
GET /api/crm/providersto retrieve metadata for available CRM providers.Added
POST /api/crm/testto test CRM provider configuration.Added
GET/POST /api/crm/contactsto create and list CRM contacts.Added
POST /api/crm/contacts/searchto search CRM contacts.Added
GET/POST /api/crm/contacts/:idto retrieve and update a CRM contact by ID.Added
POST /api/crm/contacts/:id/destroyto remove a CRM contact by ID.Added
GET/POST /api/crm/contacts/:id/notesto create and list notes for a CRM contact.Added
GET/POST /api/crm/contacts/:id/notes/:note_idto retrieve and update a specific note.Added
POST /api/crm/contacts/:id/notes/:note_id/destroyto remove a specific note.Added
GET /api/crm/contacts/:id/callsto list call records for a CRM contact.Added
GET/POST /api/crm/contacts/:id/calls/:call_idto retrieve and update a specific call record.Added
GET/POST /api/not_ready_codesto manage Not Ready Codes.Added
POST /api/dataflow/queues/summaryto retrieve current queue KPI summary.Added
POST /api/dataflow/queues/timeseriesto retrieve queue call timeseries data for the past N hours.Added
POST /api/dataflow/queues/agent/summaryto retrieve an agent summary for a specific queue and time range.Added
POST /api/dataflow/queues/agent/timeseriesto retrieve agent timeseries (bucketed) data for a specific queue and time range.Added
POST /api/dataflow/analytics/calls/timeseriesto retrieve call volume timeseries analytics for a specified range.Added
POST /api/dataflow/analytics/calls/historyto query Call History by conditions.Added
POST /api/dataflow/analytics/calls/user/historyto query the current user’s Call History by conditions.Added
POST /api/dataflow/analytics/calls/history/:session_idto query Call History details for a session.Added
POST /api/dataflow/analytics/calls/user/history/:session_idto query current user’s Call History details for a session.Added report job APIs:
Added
POST /api/dataflow/report_jobsto create a report job.Added
POST /api/dataflow/report_jobs/:idto update a report job.Added
GET /api/dataflow/report_jobs/:idto retrieve a report job.Added
POST /api/dataflow/report_jobs/:id/destroyto delete a report job.Added
GET /api/dataflow/report_jobs/:id/detailto retrieve report job details.Added
GET /api/dataflow/report_listto retrieve the completed report list.Added
POST /api/dataflow/report_list/:id/destroyto delete a report item.
Updated endpoints / fields
Updated
GET /api/auth/user: addeddomain,role_id,role_name, andcapabilities.Updated
/api/call_queuesand/api/call_queues/:id:Added
enable_night_mode,play_periodic_music,play_periodic_music_interval,enable_wrap_up,wrap_up_time,enable_exit_forward_rule,exit_forward_rule.Updated
status: removed optional valuesBREAKandLUNCH.
Updated
/api/inbound_rulesand/api/inbound_rules/:id: addedusage.Updated
/api/ivrsand/api/ivrs/:id: addedenable_night_mode,exclude_list.Updated
/api/providersand/api/providers/:id: addedremove_plus_prefix,tel_uri_scheme_for_request_line,tel_uri_scheme_for_to_header.Updated
/api/recordings,/api/recordings/:id,/api/user/recordings,/api/user/recordings/:id:Added AI transcription fields:
status,status_description,sentiment.
Updated
/api/ring_groupsand/api/ring_groups/:id: addedenable_night_mode.Updated
/api/roles: addedcapabilities.Updated role APIs to use
idinstead ofnamein the path:Updated
GET /api/roles/:name→ path parameter changed fromnametoid; addedid,protected,capabilities.Updated
POST /api/roles/:name→ path parameter changed fromnametoid; addedcapabilities.Updated
/api/roles/:name/destroy→ path parameter changed fromnametoid.
Updated
GET /api/tenant:Added
ai_engine,limit_app_logins,allow_password_retrieval,contact_inbound_rule_append_type,crm_provider.Updated
password_policy.
Updated
POST /api/tenant:Added
contact_inbound_rule_append_type,ai_transcript.Updated
password_policy.
Updated
GET /api/tenants: addedcurrent_extensions; updatedpassword_policy.Updated
POST /api/tenants:Added
limit_app_logins,allow_password_retrieval,ai_engine,contact_inbound_rule_append_type.Updated
password_policy.
Updated
GET /api/tenants/:id: addedlimit_app_logins,ai_engine,allow_password_retrieval,contact_inbound_rule_append_type.Updated
POST /api/tenants/:id: addedai_engine,limit_app_logins,allow_password_retrieval,contact_inbound_rule_append_type.Updated
GET /api/user: addedrole_id,role_name,enable_ai_transcript,enable_uc_app,enable_teams_phone_app.Updated
POST /api/user: addedenable_ai_transcript,enable_uc_app,enable_teams_phone_app.Updated
POST /api/user/call_queues/:id/agent: addedreason.Updated
GET /api/users: addedrole_id,role_name.Updated
POST /api/users: addedenable_ai_transcript,enable_uc_app,enable_teams_phone_app,phones.Updated
GET /api/users/:id: addedrole_id,role_name,enable_ai_transcript,enable_uc_app,enable_teams_phone_app,password,extension_password.Updated
POST /api/users/:id: addedenable_ai_transcript,enable_uc_app,enable_teams_phone_app.Updated
/api/users/:id/phonesand/api/users/:id/phones/:phone_id: addedall_codecs.Updated
/api/cdrs,/api/cdrs/:id,/api/user/cdrs,/api/user/cdrs/:id,/api/calllogs,/api/calllogs/:id:Expanded
reroute_reasonenum values to include:CAPACITY_BLOCKED,QUEUE_EXIT,QUEUE_ABANDONED,REDIRECT,FORWARDING_UNCONDITIONAL,FORWARDING_BUSY,FORWARDING_NO_ANSWER,FORWARDING_NOT_REACHABLE,FORWARDING_EXCEPTION,FORWARDING_LUNCH,FORWARDING_BUSINESS_TRIP,FORWARDING_AWAY,FORWARDING_NIGHT_MODE.
Updated
/api/ivrs,/api/ivrs/:id,/api/shared_voicemails,/api/shared_voicemails/:id:pinlength is now determined by the tenant password policy.
Updated
/api/user,/api/users,/api/users/:id:pinandvoicemail_pinlength is now determined by the tenant password policy.
Updated
/api/users/:id/statusand/api/user/status:Updated
status: removedON_CALL, addedOTHER_CALL.Updated
presence: removedAVAILABLEandON_CALL; addedONLINE,OTHER_CALL,RINGING.
Updated
/api/users/export: permission requirement changed toUser.FullAccess.Updated
/api/providers/export: permission requirement changed toTrunk.FullAccess.Updated
/api/ip_filters/export: permission requirement changed toSystemSettings.FullAccess.Updated
/api/exclusive_numbers: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/vip_numbers: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/call_queue_blacklisted_numbers: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/contacts: permission requirement changed toCompanyContact.FullAccess.Updated
/api/inbound_rules: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/outbound_rules: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/disallowed_codes: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/blacklisted_numbers: permission requirement changed toPhoneSystem.FullAccess.Updated
/api/call_rates: permission requirement changed toBilling.FullAccess.Updated
/api/users/:idrestrictions:Only system-wide users and tenant-scope Admin-role users may update an Admin user’s: enable/disable flag, user password, SIP password, and PIN.
Updated
/api/users/:id/destroyrestrictions:Only system-wide users may delete Admin-role users.
Updated
/api/voicemails: added AI transcription fieldstranscription_status,transcription_status_desc,transcription_sentiment.Updated
/api/recordings/:id: added AI transcription fieldsstatus,status_description,sentiment.Updated
/api/sms: addedprepend_add.
Removed endpoints
Removed
/api/admin/username.Removed
/api/admin/password.
Last updated