From telnyx-java
Provides Java SDK examples for Telnyx SIP integrations: manage call recordings, media storage, Dialogflow, external connections, custom storage credentials.
npx claudepluginhub team-telnyx/skillsThis skill uses the workspace's default tool permissions.
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->
Provides Java SDK examples for Telnyx SIP integrations: manage call recordings, media storage, Dialogflow, external connections, custom storage credentials.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Share bugs, ideas, or general feedback.
<!-- Maven -->
<dependency>
<groupId>com.telnyx.sdk</groupId>
<artifactId>telnyx</artifactId>
<version>6.36.0</version>
</dependency>
// Gradle
implementation("com.telnyx.sdk:telnyx:6.36.0")
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
All examples below assume client is already initialized as shown above.
All API calls can fail with network errors, rate limits (429), validation errors (422), or authentication errors (401). Always handle errors in production code:
import com.telnyx.sdk.errors.TelnyxServiceException;
try {
var result = client.messages().send(params);
} catch (TelnyxServiceException e) {
System.err.println("API error " + e.statusCode() + ": " + e.getMessage());
if (e.statusCode() == 422) {
System.err.println("Validation error — check required fields and formats");
} else if (e.statusCode() == 429) {
// Rate limited — wait and retry with exponential backoff
Thread.sleep(1000);
}
}
Common error codes: 401 invalid API key, 403 insufficient permissions,
404 resource not found, 422 validation error (check field formats),
429 rate limited (retry with exponential backoff).
.autoPager() for automatic iteration: for (var item : page.autoPager()) { ... }. For manual control, use .hasNextPage() and .nextPage().Returns the information about custom storage credentials.
GET /custom_storage_credentials/{connection_id}
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialRetrieveParams;
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialRetrieveResponse;
CustomStorageCredentialRetrieveResponse customStorageCredential = client.customStorageCredentials().retrieve("550e8400-e29b-41d4-a716-446655440000");
Returns: backend (enum: gcs, s3, azure), configuration (object)
Creates a custom storage credentials configuration.
POST /custom_storage_credentials/{connection_id}
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageConfiguration;
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialCreateParams;
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialCreateResponse;
import com.telnyx.sdk.models.customstoragecredentials.GcsConfigurationData;
CustomStorageCredentialCreateParams params = CustomStorageCredentialCreateParams.builder()
.connectionId("550e8400-e29b-41d4-a716-446655440000")
.customStorageConfiguration(CustomStorageConfiguration.builder()
.backend(CustomStorageConfiguration.Backend.GCS)
.configuration(GcsConfigurationData.builder()
.backend(GcsConfigurationData.Backend.GCS)
.build())
.build())
.build();
CustomStorageCredentialCreateResponse customStorageCredential = client.customStorageCredentials().create(params);
Returns: backend (enum: gcs, s3, azure), configuration (object)
Updates a stored custom credentials configuration.
PUT /custom_storage_credentials/{connection_id}
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageConfiguration;
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialUpdateParams;
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialUpdateResponse;
import com.telnyx.sdk.models.customstoragecredentials.GcsConfigurationData;
CustomStorageCredentialUpdateParams params = CustomStorageCredentialUpdateParams.builder()
.connectionId("550e8400-e29b-41d4-a716-446655440000")
.customStorageConfiguration(CustomStorageConfiguration.builder()
.backend(CustomStorageConfiguration.Backend.GCS)
.configuration(GcsConfigurationData.builder()
.backend(GcsConfigurationData.Backend.GCS)
.build())
.build())
.build();
CustomStorageCredentialUpdateResponse customStorageCredential = client.customStorageCredentials().update(params);
Returns: backend (enum: gcs, s3, azure), configuration (object)
Deletes a stored custom credentials configuration.
DELETE /custom_storage_credentials/{connection_id}
import com.telnyx.sdk.models.customstoragecredentials.CustomStorageCredentialDeleteParams;
client.customStorageCredentials().delete("550e8400-e29b-41d4-a716-446655440000");
Return details of the Dialogflow connection associated with the given CallControl connection.
GET /dialogflow_connections/{connection_id}
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionRetrieveParams;
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionRetrieveResponse;
DialogflowConnectionRetrieveResponse dialogflowConnection = client.dialogflowConnections().retrieve("550e8400-e29b-41d4-a716-446655440000");
Returns: connection_id (string), conversation_profile_id (string), environment (string), record_type (string), service_account (string)
Save Dialogflow Credentiails to Telnyx, so it can be used with other Telnyx services.
POST /dialogflow_connections/{connection_id}
import com.telnyx.sdk.core.JsonValue;
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionCreateParams;
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionCreateResponse;
DialogflowConnectionCreateParams params = DialogflowConnectionCreateParams.builder()
.connectionId("550e8400-e29b-41d4-a716-446655440000")
.serviceAccount(DialogflowConnectionCreateParams.ServiceAccount.builder()
.putAdditionalProperty("type", JsonValue.from("bar"))
.putAdditionalProperty("project_id", JsonValue.from("bar"))
.putAdditionalProperty("private_key_id", JsonValue.from("bar"))
.putAdditionalProperty("private_key", JsonValue.from("bar"))
.putAdditionalProperty("client_email", JsonValue.from("bar"))
.putAdditionalProperty("client_id", JsonValue.from("bar"))
.putAdditionalProperty("auth_uri", JsonValue.from("bar"))
.putAdditionalProperty("token_uri", JsonValue.from("bar"))
.putAdditionalProperty("auth_provider_x509_cert_url", JsonValue.from("bar"))
.putAdditionalProperty("client_x509_cert_url", JsonValue.from("bar"))
.build())
.build();
DialogflowConnectionCreateResponse dialogflowConnection = client.dialogflowConnections().create(params);
Returns: connection_id (string), conversation_profile_id (string), environment (string), record_type (string), service_account (string)
Updates a stored Dialogflow Connection.
PUT /dialogflow_connections/{connection_id}
import com.telnyx.sdk.core.JsonValue;
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionUpdateParams;
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionUpdateResponse;
DialogflowConnectionUpdateParams params = DialogflowConnectionUpdateParams.builder()
.connectionId("550e8400-e29b-41d4-a716-446655440000")
.serviceAccount(DialogflowConnectionUpdateParams.ServiceAccount.builder()
.putAdditionalProperty("type", JsonValue.from("bar"))
.putAdditionalProperty("project_id", JsonValue.from("bar"))
.putAdditionalProperty("private_key_id", JsonValue.from("bar"))
.putAdditionalProperty("private_key", JsonValue.from("bar"))
.putAdditionalProperty("client_email", JsonValue.from("bar"))
.putAdditionalProperty("client_id", JsonValue.from("bar"))
.putAdditionalProperty("auth_uri", JsonValue.from("bar"))
.putAdditionalProperty("token_uri", JsonValue.from("bar"))
.putAdditionalProperty("auth_provider_x509_cert_url", JsonValue.from("bar"))
.putAdditionalProperty("client_x509_cert_url", JsonValue.from("bar"))
.build())
.build();
DialogflowConnectionUpdateResponse dialogflowConnection = client.dialogflowConnections().update(params);
Returns: connection_id (string), conversation_profile_id (string), environment (string), record_type (string), service_account (string)
Deletes a stored Dialogflow Connection.
DELETE /dialogflow_connections/{connection_id}
import com.telnyx.sdk.models.dialogflowconnections.DialogflowConnectionDeleteParams;
client.dialogflowConnections().delete("550e8400-e29b-41d4-a716-446655440000");
This endpoint returns a list of your External Connections inside the 'data' attribute of the response. External Connections are used by Telnyx customers to seamless configure SIP trunking integrations with Telnyx Partners, through External Voice Integrations in Mission Control Portal.
GET /external_connections
import com.telnyx.sdk.models.externalconnections.ExternalConnectionListPage;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionListParams;
ExternalConnectionListPage page = client.externalConnections().list();
Returns: active (boolean), created_at (string), credential_active (boolean), external_sip_connection (enum: zoom, operator_connect), id (string), inbound (object), outbound (object), record_type (string), tags (array[string]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Creates a new External Connection based on the parameters sent in the request. The external_sip_connection and outbound voice profile id are required. Once created, you can assign phone numbers to your application using the /phone_numbers endpoint.
POST /external_connections — Required: external_sip_connection, outbound
Optional: active (boolean), inbound (object), tags (array[string]), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
import com.telnyx.sdk.models.externalconnections.ExternalConnectionCreateParams;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionCreateResponse;
ExternalConnectionCreateParams params = ExternalConnectionCreateParams.builder()
.externalSipConnection(ExternalConnectionCreateParams.ExternalSipConnection.ZOOM)
.outbound(ExternalConnectionCreateParams.Outbound.builder().build())
.build();
ExternalConnectionCreateResponse externalConnection = client.externalConnections().create(params);
Returns: active (boolean), created_at (string), credential_active (boolean), external_sip_connection (enum: zoom, operator_connect), id (string), inbound (object), outbound (object), record_type (string), tags (array[string]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Retrieve a list of log messages for all external connections associated with your account.
GET /external_connections/log_messages
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageListPage;
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageListParams;
LogMessageListPage page = client.externalConnections().logMessages().list();
Returns: log_messages (array[object]), meta (object)
Retrieve a log message for an external connection associated with your account.
GET /external_connections/log_messages/{id}
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageRetrieveParams;
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageRetrieveResponse;
LogMessageRetrieveResponse logMessage = client.externalConnections().logMessages().retrieve("1293384261075731499");
Returns: log_messages (array[object])
Dismiss a log message for an external connection associated with your account.
DELETE /external_connections/log_messages/{id}
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageDismissParams;
import com.telnyx.sdk.models.externalconnections.logmessages.LogMessageDismissResponse;
LogMessageDismissResponse response = client.externalConnections().logMessages().dismiss("1293384261075731499");
Returns: success (boolean)
Return the details of an existing External Connection inside the 'data' attribute of the response.
GET /external_connections/{id}
import com.telnyx.sdk.models.externalconnections.ExternalConnectionRetrieveParams;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionRetrieveResponse;
ExternalConnectionRetrieveResponse externalConnection = client.externalConnections().retrieve("1293384261075731499");
Returns: active (boolean), created_at (string), credential_active (boolean), external_sip_connection (enum: zoom, operator_connect), id (string), inbound (object), outbound (object), record_type (string), tags (array[string]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Updates settings of an existing External Connection based on the parameters of the request.
PATCH /external_connections/{id} — Required: outbound
Optional: active (boolean), inbound (object), tags (array[string]), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
import com.telnyx.sdk.models.externalconnections.ExternalConnectionUpdateParams;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionUpdateResponse;
ExternalConnectionUpdateParams params = ExternalConnectionUpdateParams.builder()
.id("1293384261075731499")
.outbound(ExternalConnectionUpdateParams.Outbound.builder()
.outboundVoiceProfileId("1911630617284445511")
.build())
.build();
ExternalConnectionUpdateResponse externalConnection = client.externalConnections().update(params);
Returns: active (boolean), created_at (string), credential_active (boolean), external_sip_connection (enum: zoom, operator_connect), id (string), inbound (object), outbound (object), record_type (string), tags (array[string]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Permanently deletes an External Connection. Deletion may be prevented if the application is in use by phone numbers, is active, or if it is an Operator Connect connection. To remove an Operator Connect integration please contact Telnyx support.
DELETE /external_connections/{id}
import com.telnyx.sdk.models.externalconnections.ExternalConnectionDeleteParams;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionDeleteResponse;
ExternalConnectionDeleteResponse externalConnection = client.externalConnections().delete("1293384261075731499");
Returns: active (boolean), created_at (string), credential_active (boolean), external_sip_connection (enum: zoom, operator_connect), id (string), inbound (object), outbound (object), record_type (string), tags (array[string]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Returns the civic addresses and locations from Microsoft Teams.
GET /external_connections/{id}/civic_addresses
import com.telnyx.sdk.models.externalconnections.civicaddresses.CivicAddressListParams;
import com.telnyx.sdk.models.externalconnections.civicaddresses.CivicAddressListResponse;
CivicAddressListResponse civicAddresses = client.externalConnections().civicAddresses().list("1293384261075731499");
Returns: city_or_town (string), city_or_town_alias (string), company_name (string), country (string), country_or_district (string), default_location_id (uuid), description (string), house_number (string), house_number_suffix (string), id (uuid), locations (array[object]), postal_or_zip_code (string), record_type (string), state_or_province (string), street_name (string), street_suffix (string)
Return the details of an existing Civic Address with its Locations inside the 'data' attribute of the response.
GET /external_connections/{id}/civic_addresses/{address_id}
import com.telnyx.sdk.models.externalconnections.civicaddresses.CivicAddressRetrieveParams;
import com.telnyx.sdk.models.externalconnections.civicaddresses.CivicAddressRetrieveResponse;
CivicAddressRetrieveParams params = CivicAddressRetrieveParams.builder()
.id("1293384261075731499")
.addressId("318fb664-d341-44d2-8405-e6bfb9ced6d9")
.build();
CivicAddressRetrieveResponse civicAddress = client.externalConnections().civicAddresses().retrieve(params);
Returns: city_or_town (string), city_or_town_alias (string), company_name (string), country (string), country_or_district (string), default_location_id (uuid), description (string), house_number (string), house_number_suffix (string), id (uuid), locations (array[object]), postal_or_zip_code (string), record_type (string), state_or_province (string), street_name (string), street_suffix (string)
PATCH /external_connections/{id}/locations/{location_id} — Required: static_emergency_address_id
import com.telnyx.sdk.models.externalconnections.ExternalConnectionUpdateLocationParams;
import com.telnyx.sdk.models.externalconnections.ExternalConnectionUpdateLocationResponse;
ExternalConnectionUpdateLocationParams params = ExternalConnectionUpdateLocationParams.builder()
.id("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
.locationId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
.staticEmergencyAddressId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
.build();
ExternalConnectionUpdateLocationResponse response = client.externalConnections().updateLocation(params);
Returns: accepted_address_suggestions (boolean), location_id (uuid), static_emergency_address_id (uuid)
Returns a list of all active phone numbers associated with the given external connection.
GET /external_connections/{id}/phone_numbers
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberListPage;
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberListParams;
PhoneNumberListPage page = client.externalConnections().phoneNumbers().list("1293384261075731499");
Returns: acquired_capabilities (array[string]), civic_address_id (uuid), displayed_country_code (string), location_id (uuid), number_id (string), telephone_number (string), ticket_id (uuid)
Return the details of a phone number associated with the given external connection.
GET /external_connections/{id}/phone_numbers/{phone_number_id}
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberRetrieveParams;
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberRetrieveResponse;
PhoneNumberRetrieveParams params = PhoneNumberRetrieveParams.builder()
.id("1293384261075731499")
.phoneNumberId("1234567889")
.build();
PhoneNumberRetrieveResponse phoneNumber = client.externalConnections().phoneNumbers().retrieve(params);
Returns: acquired_capabilities (array[string]), civic_address_id (uuid), displayed_country_code (string), location_id (uuid), number_id (string), telephone_number (string), ticket_id (uuid)
Asynchronously update settings of the phone number associated with the given external connection.
PATCH /external_connections/{id}/phone_numbers/{phone_number_id}
Optional: location_id (uuid)
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberUpdateParams;
import com.telnyx.sdk.models.externalconnections.phonenumbers.PhoneNumberUpdateResponse;
PhoneNumberUpdateParams params = PhoneNumberUpdateParams.builder()
.id("1293384261075731499")
.phoneNumberId("1234567889")
.build();
PhoneNumberUpdateResponse phoneNumber = client.externalConnections().phoneNumbers().update(params);
Returns: acquired_capabilities (array[string]), civic_address_id (uuid), displayed_country_code (string), location_id (uuid), number_id (string), telephone_number (string), ticket_id (uuid)
Returns a list of your Releases for the given external connection. These are automatically created when you change the connection_id of a phone number that is currently on Microsoft Teams.
GET /external_connections/{id}/releases
import com.telnyx.sdk.models.externalconnections.releases.ReleaseListPage;
import com.telnyx.sdk.models.externalconnections.releases.ReleaseListParams;
ReleaseListPage page = client.externalConnections().releases().list("1293384261075731499");
Returns: created_at (string), error_message (string), status (enum: pending_upload, pending, in_progress, complete, failed, expired, unknown), telephone_numbers (array[object]), tenant_id (uuid), ticket_id (uuid)
Return the details of a Release request and its phone numbers.
GET /external_connections/{id}/releases/{release_id}
import com.telnyx.sdk.models.externalconnections.releases.ReleaseRetrieveParams;
import com.telnyx.sdk.models.externalconnections.releases.ReleaseRetrieveResponse;
ReleaseRetrieveParams params = ReleaseRetrieveParams.builder()
.id("1293384261075731499")
.releaseId("7b6a6449-b055-45a6-81f6-f6f0dffa4cc6")
.build();
ReleaseRetrieveResponse release = client.externalConnections().releases().retrieve(params);
Returns: created_at (string), error_message (string), status (enum: pending_upload, pending, in_progress, complete, failed, expired, unknown), telephone_numbers (array[object]), tenant_id (uuid), ticket_id (uuid)
Returns a list of your Upload requests for the given external connection.
GET /external_connections/{id}/uploads
import com.telnyx.sdk.models.externalconnections.uploads.UploadListPage;
import com.telnyx.sdk.models.externalconnections.uploads.UploadListParams;
UploadListPage page = client.externalConnections().uploads().list("1293384261075731499");
Returns: available_usages (array[string]), error_code (string), error_message (string), location_id (uuid), status (enum: pending_upload, pending, in_progress, partial_success, success, error), tenant_id (uuid), ticket_id (uuid), tn_upload_entries (array[object])
Creates a new Upload request to Microsoft teams with the included phone numbers. Only one of civic_address_id or location_id must be provided, not both. The maximum allowed phone numbers for the numbers_ids array is 1000.
POST /external_connections/{id}/uploads — Required: number_ids
Optional: additional_usages (array[string]), civic_address_id (uuid), location_id (uuid), usage (enum: calling_user_assignment, first_party_app_assignment)
import com.telnyx.sdk.models.externalconnections.uploads.UploadCreateParams;
import com.telnyx.sdk.models.externalconnections.uploads.UploadCreateResponse;
import java.util.List;
UploadCreateParams params = UploadCreateParams.builder()
.id("1293384261075731499")
.numberIds(List.of(
"3920457616934164700",
"3920457616934164701",
"3920457616934164702",
"3920457616934164703"
))
.build();
UploadCreateResponse upload = client.externalConnections().uploads().create(params);
Returns: success (boolean), ticket_id (uuid)
Forces a recheck of the status of all pending Upload requests for the given external connection in the background.
POST /external_connections/{id}/uploads/refresh
import com.telnyx.sdk.models.externalconnections.uploads.UploadRefreshStatusParams;
import com.telnyx.sdk.models.externalconnections.uploads.UploadRefreshStatusResponse;
UploadRefreshStatusResponse response = client.externalConnections().uploads().refreshStatus("1293384261075731499");
Returns: success (boolean)
Returns the count of all pending upload requests for the given external connection.
GET /external_connections/{id}/uploads/status
import com.telnyx.sdk.models.externalconnections.uploads.UploadPendingCountParams;
import com.telnyx.sdk.models.externalconnections.uploads.UploadPendingCountResponse;
UploadPendingCountResponse response = client.externalConnections().uploads().pendingCount("1293384261075731499");
Returns: pending_numbers_count (integer), pending_orders_count (integer)
Return the details of an Upload request and its phone numbers.
GET /external_connections/{id}/uploads/{ticket_id}
import com.telnyx.sdk.models.externalconnections.uploads.UploadRetrieveParams;
import com.telnyx.sdk.models.externalconnections.uploads.UploadRetrieveResponse;
UploadRetrieveParams params = UploadRetrieveParams.builder()
.id("1293384261075731499")
.ticketId("7b6a6449-b055-45a6-81f6-f6f0dffa4cc6")
.build();
UploadRetrieveResponse upload = client.externalConnections().uploads().retrieve(params);
Returns: available_usages (array[string]), error_code (string), error_message (string), location_id (uuid), status (enum: pending_upload, pending, in_progress, partial_success, success, error), tenant_id (uuid), ticket_id (uuid), tn_upload_entries (array[object])
If there were any errors during the upload process, this endpoint will retry the upload request. In some cases this will reattempt the existing upload request, in other cases it may create a new upload request. Please check the ticket_id in the response to determine if a new upload request was created.
POST /external_connections/{id}/uploads/{ticket_id}/retry
import com.telnyx.sdk.models.externalconnections.uploads.UploadRetryParams;
import com.telnyx.sdk.models.externalconnections.uploads.UploadRetryResponse;
UploadRetryParams params = UploadRetryParams.builder()
.id("1293384261075731499")
.ticketId("7b6a6449-b055-45a6-81f6-f6f0dffa4cc6")
.build();
UploadRetryResponse response = client.externalConnections().uploads().retry(params);
Returns: available_usages (array[string]), error_code (string), error_message (string), location_id (uuid), status (enum: pending_upload, pending, in_progress, partial_success, success, error), tenant_id (uuid), ticket_id (uuid), tn_upload_entries (array[object])
Returns a list of stored media files.
GET /media
import com.telnyx.sdk.models.media.MediaListParams;
import com.telnyx.sdk.models.media.MediaListResponse;
MediaListResponse media = client.media().list();
Returns: content_type (string), created_at (string), expires_at (string), media_name (string), updated_at (string)
Upload media file to Telnyx so it can be used with other Telnyx services
POST /media — Required: media_url
Optional: media_name (string), ttl_secs (integer)
import com.telnyx.sdk.models.media.MediaUploadParams;
import com.telnyx.sdk.models.media.MediaUploadResponse;
MediaUploadParams params = MediaUploadParams.builder()
.mediaUrl("http://www.example.com/audio.mp3")
.build();
MediaUploadResponse response = client.media().upload(params);
Returns: content_type (string), created_at (string), expires_at (string), media_name (string), updated_at (string)
Returns the information about a stored media file.
GET /media/{media_name}
import com.telnyx.sdk.models.media.MediaRetrieveParams;
import com.telnyx.sdk.models.media.MediaRetrieveResponse;
MediaRetrieveResponse media = client.media().retrieve("media_name");
Returns: content_type (string), created_at (string), expires_at (string), media_name (string), updated_at (string)
Updates a stored media file.
PUT /media/{media_name}
Optional: media_url (string), ttl_secs (integer)
import com.telnyx.sdk.models.media.MediaUpdateParams;
import com.telnyx.sdk.models.media.MediaUpdateResponse;
MediaUpdateResponse media = client.media().update("media_name");
Returns: content_type (string), created_at (string), expires_at (string), media_name (string), updated_at (string)
Deletes a stored media file.
DELETE /media/{media_name}
import com.telnyx.sdk.models.media.MediaDeleteParams;
client.media().delete("media_name");
Downloads a stored media file.
GET /media/{media_name}/download
import com.telnyx.sdk.core.http.HttpResponse;
import com.telnyx.sdk.models.media.MediaDownloadParams;
HttpResponse response = client.media().download("media_name");
This endpoint will make an asynchronous request to refresh the Operator Connect integration with Microsoft Teams for the current user. This will create new external connections on the user's account if needed, and/or report the integration results as log messages.
POST /operator_connect/actions/refresh
import com.telnyx.sdk.models.operatorconnect.actions.ActionRefreshParams;
import com.telnyx.sdk.models.operatorconnect.actions.ActionRefreshResponse;
ActionRefreshResponse response = client.operatorConnect().actions().refresh();
Returns: message (string), success (boolean)
Returns a list of your recording transcriptions.
GET /recording_transcriptions
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionListPage;
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionListParams;
RecordingTranscriptionListPage page = client.recordingTranscriptions().list();
Returns: created_at (string), duration_millis (int32), id (string), record_type (enum: recording_transcription), recording_id (string), status (enum: in-progress, completed), transcription_text (string), updated_at (string)
Retrieves the details of an existing recording transcription.
GET /recording_transcriptions/{recording_transcription_id}
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionRetrieveParams;
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionRetrieveResponse;
RecordingTranscriptionRetrieveResponse recordingTranscription = client.recordingTranscriptions().retrieve("6a09cdc3-8948-47f0-aa62-74ac943d6c58");
Returns: created_at (string), duration_millis (int32), id (string), record_type (enum: recording_transcription), recording_id (string), status (enum: in-progress, completed), transcription_text (string), updated_at (string)
Permanently deletes a recording transcription.
DELETE /recording_transcriptions/{recording_transcription_id}
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionDeleteParams;
import com.telnyx.sdk.models.recordingtranscriptions.RecordingTranscriptionDeleteResponse;
RecordingTranscriptionDeleteResponse recordingTranscription = client.recordingTranscriptions().delete("6a09cdc3-8948-47f0-aa62-74ac943d6c58");
Returns: created_at (string), duration_millis (int32), id (string), record_type (enum: recording_transcription), recording_id (string), status (enum: in-progress, completed), transcription_text (string), updated_at (string)
Returns a list of your call recordings.
GET /recordings
import com.telnyx.sdk.models.recordings.RecordingListPage;
import com.telnyx.sdk.models.recordings.RecordingListParams;
RecordingListPage page = client.recordings().list();
Returns: call_control_id (string), call_leg_id (string), call_session_id (string), channels (enum: single, dual), conference_id (string), connection_id (string), created_at (string), download_urls (object), duration_millis (int32), from (string), id (string), initiated_by (string), record_type (enum: recording), recording_ended_at (string), recording_started_at (string), source (enum: conference, call), status (enum: completed), to (string), updated_at (string)
Permanently deletes a list of call recordings.
POST /recordings/actions/delete
import com.telnyx.sdk.models.recordings.actions.ActionDeleteParams;
import com.telnyx.sdk.models.recordings.actions.ActionDeleteResponse;
ActionDeleteParams params = ActionDeleteParams.builder()
.addId("428c31b6-7af4-4bcb-b7f5-5013ef9657c1")
.addId("428c31b6-7af4-4bcb-b7f5-5013ef9657c2")
.build();
ActionDeleteResponse action = client.recordings().actions().delete(params);
Returns: status (enum: ok)
Retrieves the details of an existing call recording.
GET /recordings/{recording_id}
import com.telnyx.sdk.models.recordings.RecordingRetrieveParams;
import com.telnyx.sdk.models.recordings.RecordingRetrieveResponse;
RecordingRetrieveResponse recording = client.recordings().retrieve("550e8400-e29b-41d4-a716-446655440000");
Returns: call_control_id (string), call_leg_id (string), call_session_id (string), channels (enum: single, dual), conference_id (string), connection_id (string), created_at (string), download_urls (object), duration_millis (int32), from (string), id (string), initiated_by (string), record_type (enum: recording), recording_ended_at (string), recording_started_at (string), source (enum: conference, call), status (enum: completed), to (string), updated_at (string)
Permanently deletes a call recording.
DELETE /recordings/{recording_id}
import com.telnyx.sdk.models.recordings.RecordingDeleteParams;
import com.telnyx.sdk.models.recordings.RecordingDeleteResponse;
RecordingDeleteResponse recording = client.recordings().delete("550e8400-e29b-41d4-a716-446655440000");
Returns: call_control_id (string), call_leg_id (string), call_session_id (string), channels (enum: single, dual), conference_id (string), connection_id (string), created_at (string), download_urls (object), duration_millis (int32), from (string), id (string), initiated_by (string), record_type (enum: recording), recording_ended_at (string), recording_started_at (string), source (enum: conference, call), status (enum: completed), to (string), updated_at (string)
Creates a new SIPREC connector configuration.
POST /siprec_connectors
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorCreateParams;
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorCreateResponse;
SiprecConnectorCreateParams params = SiprecConnectorCreateParams.builder()
.host("siprec.telnyx.com")
.name("my-siprec-connector")
.port(5060L)
.build();
SiprecConnectorCreateResponse siprecConnector = client.siprecConnectors().create(params);
Returns: app_subdomain (string), created_at (string), host (string), name (string), port (integer), record_type (string), updated_at (string)
Returns details of a stored SIPREC connector.
GET /siprec_connectors/{connector_name}
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorRetrieveParams;
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorRetrieveResponse;
SiprecConnectorRetrieveResponse siprecConnector = client.siprecConnectors().retrieve("connector_name");
Returns: app_subdomain (string), created_at (string), host (string), name (string), port (integer), record_type (string), updated_at (string)
Updates a stored SIPREC connector configuration.
PUT /siprec_connectors/{connector_name}
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorUpdateParams;
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorUpdateResponse;
SiprecConnectorUpdateParams params = SiprecConnectorUpdateParams.builder()
.connectorName("connector_name")
.host("siprec.telnyx.com")
.name("my-siprec-connector")
.port(5060L)
.build();
SiprecConnectorUpdateResponse siprecConnector = client.siprecConnectors().update(params);
Returns: app_subdomain (string), created_at (string), host (string), name (string), port (integer), record_type (string), updated_at (string)
Deletes a stored SIPREC connector.
DELETE /siprec_connectors/{connector_name}
import com.telnyx.sdk.models.siprecconnectors.SiprecConnectorDeleteParams;
client.siprecConnectors().delete("connector_name");