Yeastar PBXs report each finished call as an API event with its call detail record (CDR). P-Series (appliance, software edition and Cloud Edition) can post it to a webhook address, or Telyzer keeps a WebSocket connection to the PBX, or asks its CDR API. S-Series and the earlier Cloud PBX send the event to Telyzer after Telyzer signs in to their API.
Phone systems this guide covers
| Phone system | Models | Status |
|---|---|---|
| P-Series PBX System | P520, P550, P560, P570, software edition | Preview |
| P-Series Cloud Edition | P-Series Cloud Edition (hosted by Yeastar or a partner) | Preview |
| S-Series VoIP PBX | S50, S100, S300, S412 Plus, S-Series software | Preview |
| Cloud PBX | Yeastar Cloud PBX (earlier cloud service) | Preview |
Values in dashed boxes are this organization's own: the portal's How to connect panel shows them filled in, with copy buttons.
Webhook — the PBX posts each finished call to Telyzer (HTTPS)
Recommended for Telyzer Cloud. For: P-Series PBX System, P-Series Cloud Edition.
Telyzer Cloud
- Sign in to the PBX web portal and open Integrations → API; turn the API on if it is off. Tick Webhook Event Push and choose Add.
- Webhook URL: your connector's push address. Request Method: POST.
- Event: tick Call End Details Notification (event 30012) only.
- Copy the Secret the PBX generated and paste it into Webhook secret in Telyzer, so every delivery's signature is checked.
- Set Timeout(s) to
10and Retry Count to the highest value offered, then Save. The test button under Operations sends a test message that Telyzer accepts.
Telyzer Server
- Sign in to the PBX web portal and open Integrations → API; turn the API on if it is off. Tick Webhook Event Push and choose Add.
- Webhook URL: your connector's push address. Request Method: POST.
- Event: tick Call End Details Notification (event 30012) only.
- Copy the Secret the PBX generated and paste it into Webhook secret in Telyzer, so every delivery's signature is checked.
- Set Timeout(s) to
10and Retry Count to the highest value offered, then Save. The test button under Operations sends a test message that Telyzer accepts. - On a Telyzer Server this address is the server's own portal address on your local network; the PBX must be able to reach it.
443) from the PBX; Cloud Edition needs nothing.WebSocket events — Telyzer stays connected to the PBX (with history)
Recommended for Telyzer Server. For: P-Series PBX System, P-Series Cloud Edition.
Telyzer Cloud
- Sign in to the PBX web portal and open Integrations → API. Turn the API on and note the Client ID and Client Secret it shows.
- Under IP Restriction, allow the address Telyzer connects from only, so no one else can use these credentials.
- In Telyzer, enter the PBX's address (Cloud Edition: its domain), the port (
8088; Cloud Edition443), the Client ID as user name and the Client Secret as password, and the series, then choose Check connection. - Telyzer subscribes to call-end events and keeps the connection alive. After any interruption it catches up through the CDR API, and on the first connection it collects the last 30 days of calls.
- An on-premises P-Series must be reachable from the internet on its API port for Telyzer Cloud. If it is not, use the webhook instead, or the Telyzer Relay on your network:
telyzer-relay add-collector --kind yeastar_p_ws --host <PBX address> --user <Client ID> --password <Client Secret>, thenRestart-Service TelyzerRelay.
Telyzer Server
- Sign in to the PBX web portal and open Integrations → API. Turn the API on and note the Client ID and Client Secret it shows.
- Under IP Restriction, allow the address Telyzer connects from only, so no one else can use these credentials.
- In Telyzer, enter the PBX's address (Cloud Edition: its domain), the port (
8088; Cloud Edition443), the Client ID as user name and the Client Secret as password, and the series, then choose Check connection. - Telyzer subscribes to call-end events and keeps the connection alive. After any interruption it catches up through the CDR API, and on the first connection it collects the last 30 days of calls.
8088 by default; Cloud Edition 443). With an on-premises P-Series, forward that port to the PBX and allow only the address Telyzer connects from. Cloud Edition: nothing to open.8088 by default): allow it from the server on your local network.CDR API — Telyzer asks the PBX for new records every minute
For: P-Series PBX System, P-Series Cloud Edition.
Telyzer Cloud
- Sign in to the PBX web portal and open Integrations → API. Turn the API on and note the Client ID and Client Secret it shows.
- Under IP Restriction, allow the address Telyzer connects from only, so no one else can use these credentials.
- In Telyzer, enter the PBX's address (Cloud Edition: its domain), the port (
8088; Cloud Edition443), the Client ID as user name and the Client Secret as password, and the series, then choose Check connection. - Telyzer asks the PBX's CDR API for new records every minute; on the first connection it collects the last 30 days of calls.
- An on-premises P-Series must be reachable from the internet on its API port for Telyzer Cloud. If it is not, use the webhook instead, or the Telyzer Relay on your network:
telyzer-relay add-collector --kind yeastar_p_api --host <PBX address> --user <Client ID> --password <Client Secret>, thenRestart-Service TelyzerRelay.
Telyzer Server
- Sign in to the PBX web portal and open Integrations → API. Turn the API on and note the Client ID and Client Secret it shows.
- Under IP Restriction, allow the address Telyzer connects from only, so no one else can use these credentials.
- In Telyzer, enter the PBX's address (Cloud Edition: its domain), the port (
8088; Cloud Edition443), the Client ID as user name and the Client Secret as password, and the series, then choose Check connection. - Telyzer asks the PBX's CDR API for new records every minute; on the first connection it collects the last 30 days of calls.
8088 by default; Cloud Edition 443). With an on-premises P-Series, forward that port to the PBX and allow only the address Telyzer connects from. Cloud Edition: nothing to open.8088 by default): allow it from the server on your local network.API events — Telyzer signs in and the PBX sends each record
Recommended for Telyzer Cloud and Telyzer Server. For: S-Series VoIP PBX. The S-Series API is not available on S20, S412 and S412 Lite.
- Check the model and firmware: the API needs firmware 30.13.0.30 or later, and S20, S412 and S412 Lite do not have it.
- Sign in to the PBX web interface and open Settings → PBX → General → API. Tick Enabled, set Report Method to HTTP where it is offered, and set a Username and Password for the API (not an administrator login). Save and apply.
- In Telyzer, enter the PBX's address, port
8088, and the API's Username and Password, then choose Check connection. - Telyzer signs in and tells the PBX to send each call record to your Telyzer address port your connector's port; there is nothing else to set on the PBX.
8088), and the PBX sends each record to your Telyzer address port your connector's port. The PBX's API port must be reachable from the internet (forward it, allowing only the address Telyzer connects from), and the PBX needs outbound TCP to your Telyzer address port your connector's port.8088), and the PBX sends each record to your Telyzer address port your connector's port.Through the Telyzer Relay on your network
For: S-Series VoIP PBX.
- Sign in to the PBX web interface and open Settings → PBX → General → API. Tick Enabled, set Report Method to HTTP where it is offered, and set a Username and Password for the API (not an administrator login). Save and apply.
- In Telyzer, open this connector and choose Create enrollment code. You get a code and a download link for the person at the site; both work once and expire in 24 hours.
- On an always-on Windows PC on the same network as the phone system, open the link and run TelyzerRelaySetup.exe (the code is filled in). Choose Another phone system and Install. The relay runs as the
TelyzerRelayservice; only outbound HTTPS leaves this PC. - On the relay PC (PowerShell as Administrator):
telyzer-relay add-collector --kind yeastar_s_events --host <PBX address> --user <API username> --password <API password>, thenRestart-Service TelyzerRelay. The relay signs in and the PBX sends each record to the relay PC on port33333. - Check it from the relay PC:
telyzer-relay check-collector <PBX address>.
33333 unless you chose another port; the setup opens it in Windows Firewall for private and domain networks only). The relay PC needs outbound HTTPS (TCP 443) only: no inbound port, and the phone system is never exposed to the internet.API events — Telyzer signs in and the PBX sends each record
Recommended for Telyzer Cloud and Telyzer Server. For: Cloud PBX.
- Sign in to the PBX web interface and open Settings → PBX → General → API. Tick Enabled, set Report Method to HTTP where it is offered, and set a Username and Password for the API (not an administrator login). Save and apply.
- In Telyzer, enter the Cloud PBX's address (its domain), port
443, and the API's Username and Password, then choose Check connection. - Telyzer signs in and tells the Cloud PBX to send each call record to your Telyzer address port your connector's port.
443) and the Cloud PBX sends each record to your Telyzer address port your connector's port. Nothing to open on your network.443), and the Cloud PBX sends each record back to your Telyzer address port your connector's port: publish that port through your firewall to the server.Check that it works
- Make an external test call and hang up. The phone system sends the record when the call ends, so it arrives a few seconds later.
- In Telyzer, Waiting for the first call record turns green when the first record is read. If it shows a problem instead — no connection yet, connections refused, or records that could not be read — it names the cause and shows the line received.
- The same call appears in the PBX's own CDR list. A sign-in problem shows in Telyzer as a precise error (wrong credentials, address refused, PBX unreachable).
- S-Series and Cloud PBX: five failed sign-ins lock Telyzer's address for 10 minutes. To unlock it at once, delete it under PBX → System → Security → IP Auto Defense → Blocked IP Address (Cloud PBX: Settings → System → Security → Access Control → Blocked IP Address).
Notes
- Webhook needs P-Series firmware 37.20.0.21 or later, or Cloud Edition 84.20.0.21 or later. A PBX holds up to five webhooks, so Telyzer can share it with other applications.
- A webhook carries only calls that end after it is added; the WebSocket and CDR API ways also bring in the last 30 days.
- Telyzer uses the API only to receive call records; it does not control calls or change extensions and routes.