Ellipse Gradient for Header

Zoom Phone Integration Guide

Connect Zoom Phone REST APIs and selected webhook events to enterprise applications, data stores, and workflows with Martini.

Zoom Phone integration options at a glance

Zoom Phone’s primary integration mechanism is its REST API, which exposes resources such as Phone Users, Phone Numbers, Call Logs, Call Recordings, Voicemails, Call Queues, and Auto Receptionists. Zoom also supports webhook-style notifications for selected Phone events, although event coverage is not comprehensive. OAuth 2.0 and Server-to-Server OAuth provide account or user authorization, while recording resources can support authorized media retrieval. Martini can consume these APIs, receive and verify webhook requests, orchestrate scheduled reconciliation workflows, paginate through historical data, map JSON payloads, and expose normalized APIs to downstream systems.

Integration pointSupported by Zoom Phone?Common use casesHow Martini supports it
REST APIsYesAccess Phone Users, Phone Numbers, Call Logs, Call Recordings, Voicemails, Call Queues, Auto Receptionists, and related account data.Martini can consume Zoom REST endpoints from workflows, transform JSON responses, paginate list resources, and expose normalized APIs.
Webhooks / outbound callbacksLimitedReceive selected Zoom Phone event notifications, including documented call-state and phone activity events.Martini can receive webhook requests, validate them, deduplicate deliveries, retrieve the current resource, and route the result.
AuthenticationYesAuthorize delegated or account-level API access using OAuth 2.0 or Server-to-Server OAuth with scoped permissions.Martini can store client credentials, tokens, and secrets in protected environment configuration and use them in API workflows.
File / recording APIsLimitedRetrieve authorized recording metadata and media where recordings are available and the application has the required permissions.Martini can process recording metadata and media as a focused workflow, with controls for large files, retention, and privacy.
Bulk / asynchronous processingLimitedSome Zoom APIs support asynchronous or export-style operations, but no universal bulk API for all Zoom Phone objects was confirmed.Martini can implement endpoint-specific pagination, checkpoints, scheduling, and retry logic instead of assuming a general bulk interface.
Scheduled synchronizationYesReconcile missed events, retrieve historical Call Logs, compare Phone Users and Phone Numbers, and process recording availability.Martini can run scheduled workflows with time windows, overlap, persisted checkpoints, and idempotent upserts.
Database accessNoZoom Phone does not provide direct customer database access for integration workloads.Martini can persist normalized Zoom data in an approved database, but source data must come through documented Zoom APIs or events.

How Zoom Phone exposes data and business events

Zoom Phone REST APIs

Zoom Phone REST APIs are the primary mechanism for retrieving and managing Phone Users, Phone Numbers, Call Logs, recordings, Voicemails, Call Queues, Auto Receptionists, and related resources. Available fields and operations depend on account licensing, permissions, and application scopes.

Martini implementation pattern

Martini implementation pattern: a workflow authenticates with OAuth, calls the appropriate Zoom endpoint, follows pagination, validates the response, maps Zoom JSON into a canonical model, and writes or exposes the result to downstream systems.

Implementation sequence

Obtain an OAuth access token with the required scopes
Call the relevant Zoom Phone REST endpoint
Follow pagination and persist synchronization state
Validate and normalize the JSON response
Map the result to the target application
Write the result and record the workflow outcome

Zoom Phone Webhook Events

Zoom supports webhook-style notifications for selected Phone events, including documented call-state and other phone activity events. Coverage is selective and does not represent a complete event stream for every Phone object or state transition.

Martini implementation pattern

Martini implementation pattern: an inbound workflow validates Zoom’s webhook verification requirements, records event metadata, prevents replay and duplicate processing, retrieves the current resource when necessary, and routes the normalized event to downstream systems.

Implementation sequence

Receive the supported Zoom Phone webhook notification
Validate the request and verification data
Reject malformed or duplicate deliveries
Extract the Zoom identifier and event timestamp
Retrieve the current resource when the payload is incomplete
Map and route the event to the target system

Scheduled Zoom Phone Synchronization

Scheduled REST synchronization is useful for historical Call Logs, missed webhook recovery, recording availability, and reconciliation of Phone Users or Phone Numbers. Endpoint-specific filters and pagination should be used.

Martini implementation pattern

Martini implementation pattern: a scheduled workflow reads the last checkpoint, requests a time window with a small overlap, processes each page, performs idempotent upserts, and commits the next checkpoint only after successful processing.

Implementation sequence

Start the scheduled synchronization window
Read the persisted checkpoint and calculate an overlap
Retrieve filtered Zoom Phone pages
Process each page with idempotent keys
Retry rate-limited or transient requests
Commit the checkpoint after successful completion

Zoom Phone Recording Resources

Zoom Phone recording resources can provide metadata and media access where the application has the required authorization and the recording is available. Recording access is subject to retention, privacy, and licensing constraints.

Martini implementation pattern

Martini implementation pattern: a workflow first processes call metadata, then checks recording availability, retrieves authorized media, streams or stores it in an approved destination, and records the resulting reference without exposing secrets in logs.

Implementation sequence

Identify calls that may have recordings
Check recording availability and authorization
Retrieve recording metadata
Download or stream the authorized media
Store the media under retention controls
Write the storage reference and processing status

Common Zoom Phone integration patterns

Pattern 1: Synchronize Zoom Phone activity to Salesforce

When to use this pattern

Use this pattern when sales or service teams need call context attached to Salesforce Contacts, Leads, Accounts, or activity records. Selected events can provide near-real-time processing, while scheduled Call Log synchronization supplies reconciliation.

Integration direction
Zoom Phone
Martini
Salesforce
Example Mapping
Zoom Phone FieldCanonical FieldTarget Field
caller_phone_numberparty.phoneNumberContact.Phone
call_start_timeactivity.startedAtTask.ActivityDate
call_typeactivity.directionTask.Type
call_idactivity.externalIdTask.External_Call_ID__c
Martini implementation pattern

Martini receives a supported event or retrieves Call Logs, normalizes participants and timestamps, looks up Salesforce records, applies matching and duplicate rules, and creates or updates activity data. Failed target writes are retried with correlation identifiers and placed into an exception path after the retry limit.

Martini capabilities used
  • workflows
  • API consumption
  • data mapping
  • business rules
  • scheduled synchronization
  • error handling

Pattern 2: Create ServiceNow interactions from phone events

When to use this pattern

Use this pattern when selected Zoom Phone activity should create or enrich ServiceNow interactions, incidents, or tasks. The workflow can query ServiceNow to determine the caller, customer, assignment group, and appropriate record type.

Integration direction
Zoom Phone
Martini
ServiceNow
Example Mapping
Zoom Phone FieldCanonical FieldTarget Field
phone_user_idagent.externalIdInteraction.opened_for
caller_phone_numberparty.phoneNumberInteraction.contact
event_typeinteraction.eventTypeInteraction.category
event_timestampinteraction.occurredAtInteraction.opened_at
Martini implementation pattern

A Martini webhook workflow validates the Zoom request, retrieves current resource data when needed, queries ServiceNow for enrichment, and applies routing thresholds before creating an interaction or incident. Duplicate event IDs and deterministic business keys prevent repeated records.

Martini capabilities used
  • webhook consumption
  • workflows
  • API orchestration
  • data mapping
  • business rules
  • deduplication
  • error handling

Pattern 3: Synchronize call logs and recordings to a data platform

When to use this pattern

Use this pattern for reporting, compliance, archival, or operational analytics that require historical Call Logs and optionally authorized recording media.

Integration direction
Zoom Phone
Martini
SQL database
Example Mapping
Zoom Phone FieldCanonical FieldTarget Field
call_idcall.externalIdzoom_call.external_id
directioncall.directionzoom_call.direction
durationcall.durationSecondszoom_call.duration_seconds
recording_download_urlrecording.sourceReferencezoom_recording.source_reference
Martini implementation pattern

A scheduled Martini workflow retrieves filtered pages using a persisted checkpoint and overlap, upserts normalized call metadata, and separately processes recordings when they become available. Rate-limit backoff, transaction boundaries, and media retention controls protect large synchronizations.

Martini capabilities used
  • scheduled workflows
  • API consumption
  • pagination orchestration
  • SQL integration
  • data mapping
  • checkpointing
  • retry handling

Pattern 4: Reconcile Zoom Phone users and numbers with Workday

When to use this pattern

Use this pattern when Workday is the authoritative source for worker identity and the organization needs to identify missing users, unexpected extensions, or unassigned Phone Numbers.

Integration direction
Workday
Martini
Zoom Phone
Example Mapping
Zoom Phone FieldCanonical FieldTarget Field
worker_idperson.externalIdPhone User.id
work_emailperson.emailPhone User.email
employee_phone_extensiontelephony.extensionPhone User.extension
phone_numbertelephony.numberPhone Number.number
Martini implementation pattern

Martini schedules a comparison workflow, retrieves source and Zoom data, applies matching and approval rules, and sends only validated changes to Zoom. Unmatched or ambiguous records are routed to a reconciliation report rather than changed automatically.

Martini capabilities used
  • scheduled workflows
  • API consumption
  • data mapping
  • business rules
  • validation
  • exception handling

Applications commonly integrated with Zoom Phone

Zoom Phone data can be connected to customer, service, collaboration, HR, and business applications through Martini workflows. The exact fields, scopes, and business relationships should be validated against the target application and the organization’s operating model.

Application Scenario Direction Martini Pattern
Salesforce Associate calls with Contacts, Leads, and Accounts and support caller identification, sales activity, and follow-up workflows. Zoom Phone → Martini → Salesforce Receive supported call events or retrieve Call Logs, look up matching Salesforce records, map call details to activity fields, and apply duplicate and ownership rules before writing the activity.
ServiceNow Create or enrich interactions, incidents, tasks, or customer-service records from relevant phone activity. Zoom Phone → Martini → ServiceNow Process supported Zoom events or scheduled call data, query ServiceNow for the caller or customer, apply routing rules, and create or update the appropriate record with retry handling.
Zendesk Attach call context to tickets, identify callers, and support customer-support workflows. Zoom Phone → Martini → Zendesk Normalize call participants and identifiers, search Zendesk users or tickets, and write call context to the matching ticket while preventing duplicate updates.
HubSpot Record phone activity against Contacts and Companies and support sales or service follow-up. Zoom Phone → Martini → HubSpot Retrieve Call Logs, resolve phone numbers to HubSpot records, transform timestamps and call outcomes, and create idempotent activity entries.
Microsoft Dynamics 365 Synchronize call activity with Accounts, Contacts, Leads, and Cases. Zoom Phone → Martini → Microsoft Dynamics 365 Use a Martini workflow to enrich Zoom call data with Dynamics lookups, map the canonical activity model, apply matching rules, and retry transient target failures.
Microsoft Teams Coordinate telephony-related user, presence, or collaboration workflows where both platforms are used. Zoom Phone → Martini → Microsoft Teams Reconcile selected user or phone data through APIs where available, transform identifiers into a shared model, and route notifications or exceptions without assuming native Zoom-to-Teams synchronization.
Workday Reconcile worker identity data with Zoom Phone users, extensions, and provisioning records. Workday → Martini → Zoom Phone Schedule a comparison workflow, match workers to Phone Users, validate scope and approval rules, and submit permitted updates while producing an exception report.
NetSuite Associate customer or account-related phone activity with customer records or operational follow-up. Zoom Phone → Martini → NetSuite Retrieve and normalize call activity, resolve NetSuite customer identifiers, apply business rules, and write activity or follow-up data with durable error handling.

How to build a Zoom Phone integration in Martini

Objective

Establish Zoom authorization using OAuth 2.0 or Server-to-Server OAuth and configure the target-system credentials without embedding secrets in workflow definitions.

Instructions in Martini

  • Choose delegated OAuth or Server-to-Server OAuth based on the integration scope
  • Request only the Zoom Phone permissions required by the workflow
  • Store client credentials, tokens, and target credentials in protected configuration or secrets
  • Confirm the test account exposes the required Phone resources

Objective

Select an event-driven, scheduled, or API-led entry point based on Zoom Phone event coverage and synchronization requirements.

Instructions in Martini

  • Use a webhook workflow for supported near-real-time Phone events
  • Use a scheduler for Call Logs, reconciliation, and missed-event recovery
  • Expose a Martini API when another application must request normalized Zoom data
  • Document the event types and resources covered by the design

Objective

Receive or retrieve the relevant Zoom Phone resource and preserve enough state to continue safely after interruptions.

Instructions in Martini

  • Validate webhook requests before processing them
  • Call the relevant REST endpoint when an event lacks complete business data
  • Follow pagination for list resources
  • Persist checkpoints, event identifiers, and source resource identifiers

Objective

Coordinate Zoom calls, target lookups, enrichment, routing, and persistence as a maintainable Martini workflow.

Instructions in Martini

  • Separate source retrieval, enrichment, transformation, and target writes
  • Use conditional paths for missing callers, unavailable recordings, and unsupported events
  • Apply rate-limit backoff and bounded retries
  • Keep vendor-specific logic isolated from the canonical model

Objective

Convert Zoom JSON payloads into stable internal and target-system structures while handling optional fields and timestamp differences.

Instructions in Martini

  • Normalize Phone Users, numbers, participants, call direction, and timestamps
  • Use UTC internally where possible
  • Map Zoom identifiers to durable external keys
  • Validate required target fields before writing

Objective

Enforce business, privacy, authorization, and deduplication rules before downstream writes or media processing.

Instructions in Martini

  • Check scopes and target ownership requirements
  • Use event IDs or deterministic keys to prevent duplicates
  • Apply recording retention and access policies
  • Route ambiguous matches and unauthorized operations to an exception path

Common Zoom Phone data objects used in integrations

ObjectTypical UseCommon target systemsMartini handling
Phone UsersRepresent users assigned Zoom Phone capabilities, extensions, and calling privileges.Workday, Microsoft Teams, ServiceNow, identity or IT operations platformsMartini retrieves, validates, and reconciles user identifiers and assignments, applying approval and scope rules before permitted writes.
Phone NumbersRepresent direct inward dialing numbers and numbers assigned to users, queues, or locations.ServiceNow, Workday, identity platforms, reconciliation databasesMartini maps number ownership and status, detects differences, and stores durable identifiers for efficient comparisons.
Call LogsCapture inbound, outbound, missed, transferred, and other phone-call activity.Salesforce, ServiceNow, Zendesk, HubSpot, Dynamics 365, SQL databasesMartini retrieves paginated time windows, normalizes timestamps and participants, applies matching rules, and performs idempotent upserts.
Call RecordingsProvide recording metadata and authorized media where recording is enabled and available.Object storage, compliance systems, analytics platformsMartini separates metadata processing from media retrieval, protects download authorization, and applies retention and privacy rules.
VoicemailsRepresent voicemail records and associated media or transcription data where available.ServiceNow, Salesforce, notification systems, storage platformsMartini retrieves authorized data, maps caller and timestamp fields, and routes media or transcription only under applicable access rules.
Call QueuesRepresent groups that distribute inbound calls to designated users.ServiceNow, workforce operations, reconciliation databasesMartini synchronizes queue membership and configuration data where supported and reports discrepancies for controlled remediation.

Authentication and security considerations

OAuth and scoped permissions

Zoom Phone supports OAuth 2.0 and Server-to-Server OAuth. Select the model appropriate for delegated user access or account-level backend processing, and request only the Phone scopes required by the integration.

Secrets and protected data

Store Zoom client credentials, access tokens, refresh tokens, recording URLs, and target-system credentials in protected Martini environment configuration or secrets. Do not embed them in workflow definitions or routine logs.

Webhook verification

Validate Zoom webhook verification and signature requirements before accepting events. Record sufficient metadata for replay protection and troubleshooting without logging secrets or unnecessary call content.

Recording privacy

Call recordings and voicemail media may contain sensitive information. Enforce account permissions, retention, consent, access control, and approved storage policies for downloaded media.

Operational considerations for Zoom Phone integrations

Rate limits and pagination

Zoom API requests are rate limited and list endpoints should be treated as paginated. Honor retry-related headers where provided, use bounded exponential backoff, and persist progress so a failed workflow can resume safely.

Events and reconciliation

Webhook coverage is selective, and events can be duplicated, delayed, or out of order. Retrieve the current resource when necessary and combine event processing with scheduled REST reconciliation.

Idempotency and timestamps

Use Zoom identifiers, event identifiers, or deterministic composite keys for idempotent writes. Store timestamps in UTC where possible and distinguish call, answer, end, and recording availability times.

Schema and permission changes

Tolerate optional fields, validate required values, isolate vendor mappings, and monitor API changes. Resource visibility depends on Zoom licensing, account permissions, scopes, and Phone configuration.

Testing and observability

Test webhook verification, rate limiting, missing resources, unavailable recordings, and target failures with an account that reflects production permissions. Use Martini workflow logs and correlation identifiers while avoiding sensitive payloads.

Why use Martini instead of scripts or point-to-point integrations?

Orchestrate more than API calls

Martini coordinates Zoom Phone API calls, webhook intake, target lookups, scheduled reconciliation, business rules, and downstream writes in maintainable workflows.

Separate vendor and canonical models

Mappings and transformations can isolate Zoom-specific JSON from Salesforce, ServiceNow, databases, storage systems, and other targets. This reduces the impact of vendor payload changes.

Build reliable processing

Martini supports validation, bounded retries, error paths, checkpointing, idempotent synchronization, and operational logging for rate limits, duplicate events, delayed recordings, and target failures.

Expose governed APIs

Instead of giving every application direct Zoom credentials, Martini can expose controlled APIs that apply authorization, validation, normalization, and business rules around Zoom Phone data.

Frequently asked questions

How can Zoom Phone be integrated with enterprise systems?

Zoom Phone can be integrated through its REST APIs, selected webhook-style Phone events, OAuth 2.0 or Server-to-Server OAuth, and authorized recording resources. REST APIs support access to Phone Users, Phone Numbers, Call Logs, recordings, Voicemails, Call Queues, and Auto Receptionists. Scheduled synchronization is useful for reconciliation and data that is not covered by events.

Can Martini integrate with Zoom Phone?

Yes. Martini can consume Zoom Phone REST APIs, receive supported Zoom webhook events, orchestrate scheduled synchronization, transform JSON payloads, and expose normalized APIs to downstream systems. No native Martini Zoom Phone connector is documented in the supplied context.

Do I need a connector to integrate Zoom Phone with Martini?

No. A dedicated Zoom Phone connector is not required. Martini can use Zoom Phone’s native REST APIs, supported webhook events, OAuth authentication, and authorized recording endpoints through HTTP-based workflows.

Is there any extra Lonti cost to integrate Zoom Phone with Martini?

Lonti does not charge an additional per-connector or per-vendor fee to integrate Zoom Phone. The integration is subject to the provisioned capacity of the Martini environment. Separate costs may apply from Zoom, cloud infrastructure, storage, or other third-party systems based on subscription, usage, and deployment model.

Which Zoom Phone integration methods should a new implementation use?

Use the Zoom REST API as the primary mechanism, OAuth 2.0 or Server-to-Server OAuth for authorization, and selected Phone webhooks for near-real-time activity. Use scheduled REST synchronization for historical data, reconciliation, and event types that are not covered by webhooks. Zoom Phone GraphQL and SOAP APIs were not confirmed.

Can Martini receive Zoom Phone events in near real time?

Martini can receive Zoom webhook notifications for the Phone event types documented and enabled for the application. Coverage is selective rather than comprehensive, so a scheduled REST reconciliation workflow should normally supplement event processing.

How should Zoom Phone synchronization handle pagination and duplicates?

Use endpoint-specific filters, pagination, persisted checkpoints, and a small overlap between synchronization windows. Martini workflows should use Zoom resource IDs, event IDs where available, and deterministic business keys to perform idempotent upserts and prevent duplicate downstream records.

Can Martini expose an API façade for Zoom Phone data?

Yes. Martini can consume Zoom Phone APIs behind workflows and expose a controlled REST API with normalized resources, authorization, validation, and business rules. This can shield downstream applications from Zoom-specific payloads while preserving governed access to Phone data.