Skip to main content

Go SDK

Go API client for telnyx

SIP trunking, SMS, MMS, Call Control and Telephony Data Services.

Project Structure

telnyx-go-sdk/
├── api/ # API service implementations
├── models/ # Data models and structs
├── docs/ # Auto-generated documentation
├── test/ # Unit tests
├── client.go # Main API client
├── configuration.go # Configuration management
├── response.go # Response handling
├── utils.go # Utility functions
└── go.mod # Go module definition

Roadmap / Caveats

This SDK is good, but not pefect. This stems from a difference in the iodmatic practices of the language itself which can be described with the following:

Good Idiomatic Practices:

  1. Proper Context Usage

    • All API methods properly accept and use context.Context as first parameter
    • Context is threaded through the entire call chain
  2. Error Handling

    • Functions return (result, *http.Response, error) tuples following Go conventions
    • Proper error wrapping and custom error types (GenericOpenAPIError)
  3. Package Structure

    • Single package approach is clean for an SDK
    • Clear separation of concerns with separate files
  4. Pointer Utilities

    • Provides helpful Ptr* functions for creating pointers to literals
    • Common pattern in Go APIs for optional fields
  5. JSON Handling

    • Proper struct tags for JSON marshaling/unmarshaling
    • Handles nullable/optional fields appropriately

Non-Idiomatic Patterns:

  1. Method Naming

    // Non-idiomatic - very verbose
    CreateGroupMmsMessage(ctx context.Context) ApiCreateGroupMmsMessageRequest
    CreateGroupMmsMessageExecute(r ApiCreateGroupMmsMessageRequest) (*MessageResponse, *http.Response, error)

    // More idiomatic would be:
    CreateGroupMMS(ctx context.Context, req CreateGroupMMSRequest) (*MessageResponse, error)
  2. Builder Pattern Overuse

    • The request builder pattern adds unnecessary complexity
    • Go developers typically prefer direct function calls with structs
  3. Verbose Type Names

    // Generated:
    type ApiCreateGroupMmsMessageRequest struct {...}

    // More idiomatic:
    type CreateGroupMMSRequest struct {...}
  4. Constructor Functions

    // Overly verbose:
    func NewAccessIPAddressListResponseSchemaWithDefaults() *AccessIPAddressListResponseSchema

    // More idiomatic:
    func NewAccessIPAddressListResponse() *AccessIPAddressListResponse
  5. Fluent Interface Pattern

    • The .Execute() pattern is more Java-like than Go-like
    • Go prefers direct function calls

🤔 Questionable Patterns:

  1. Service Struct Pattern

    • Having separate *APIService structs is okay but adds indirection
    • More idiomatic might be functions on the main client
  2. Configuration Approach

    • The configuration struct is reasonable but quite verbose

More Idiomatic Alternative Would Look Like:

package telnyx

// More Go-idiomatic API design
type Client struct {
httpClient *http.Client
baseURL string
token string
}

func NewClient(token string, opts ...Option) *Client { ... }

// Direct, simple method calls
func (c *Client) SendSMS(ctx context.Context, req *SendSMSRequest) (*Message, error) { ... }
func (c *Client) CreateCall(ctx context.Context, req *CreateCallRequest) (*Call, error) { ... }

These will be addressed in the near future.

Installation

Install the following dependencies:

go get github.com/stretchr/testify/assert
go get golang.org/x/net/context

Put the package under your project folder and add the following in import:

import telnyx "github.com/telnyx/telnyx-go"

To use a proxy, set the environment variable HTTP_PROXY:

os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")

Configuration of Server URL

Default configuration comes with Servers field that contains server objects as defined in the OpenAPI specification.

Select Server Configuration

For using other server than the one defined on index 0 set context value telnyx.ContextServerIndex of type int.

ctx := context.WithValue(context.Background(), telnyx.ContextServerIndex, 1)

Templated Server URL

Templated server URL is formatted using default variables from configuration or from context value telnyx.ContextServerVariables of type map[string]string.

ctx := context.WithValue(context.Background(), telnyx.ContextServerVariables, map[string]string{
"basePath": "v2",
})

Note, enum values are always validated and all unused variables are silently ignored.

URLs Configuration per Operation

Each operation can use different server URL defined using OperationServers map in the Configuration. An operation is uniquely identified by "{classname}Service.{nickname}" string. Similar rules for overriding default operation server index and variables applies by using telnyx.ContextOperationServerIndices and telnyx.ContextOperationServerVariables context maps.

ctx := context.WithValue(context.Background(), telnyx.ContextOperationServerIndices, map[string]int{
"{classname}Service.{nickname}": 2,
})
ctx = context.WithValue(context.Background(), telnyx.ContextOperationServerVariables, map[string]map[string]string{
"{classname}Service.{nickname}": {
"port": "8443",
},
})

Documentation for API Endpoints

All URIs are relative to https://api.telnyx.com/v2

ClassMethodHTTP requestDescription
AccessTokensAPICreateTelephonyCredentialTokenPost /telephony_credentials/{id}/tokenCreate an Access Token.
AddressesAPIAcceptAddressSuggestionsPost /addresses/{id}/actions/accept_suggestionsAccepts this address suggestion as a new emergency address for Operator Connect and finishes the uploads of the numbers associated with it to Microsoft.
AddressesAPICreateAddressPost /addressesCreates an address
AddressesAPIDeleteAddressDelete /addresses/{id}Deletes an address
AddressesAPIFindAddressesGet /addressesList all addresses
AddressesAPIGetAddressGet /addresses/{id}Retrieve an address
AddressesAPIValidateAddressPost /addresses/actions/validateValidate an address
AdvancedNumberOrdersAPICreateAdvancedOrderV2Post /advanced_ordersCreate Advanced Order
AdvancedNumberOrdersAPIGetAdvancedOrderV2Get /advanced_orders/{order_id}Get Advanced Order
AdvancedNumberOrdersAPIListAdvancedOrdersV2Get /advanced_ordersList Advanced Orders
AdvancedOptInOptOutAPICreateAutorespConfigPost /messaging_profiles/{profile_id}/autoresp_configsCreate Auto-Reponse Setting
AdvancedOptInOptOutAPIDeleteAutorespConfigDelete /messaging_profiles/{profile_id}/autoresp_configs/{autoresp_cfg_id}Delete Auto-Response Setting
AdvancedOptInOptOutAPIGetAutorespConfigGet /messaging_profiles/{profile_id}/autoresp_configs/{autoresp_cfg_id}Get Auto-Response Setting
AdvancedOptInOptOutAPIGetAutorespConfigsGet /messaging_profiles/{profile_id}/autoresp_configsList Auto-Response Settings
AdvancedOptInOptOutAPIListOptOutsGet /messaging_optoutsList opt-outs
AdvancedOptInOptOutAPIUpdateAutoRespConfigPut /messaging_profiles/{profile_id}/autoresp_configs/{autoresp_cfg_id}Update Auto-Response Setting
AssistantsAPICreateNewAssistantPublicAssistantsPostPost /ai/assistantsCreate an assistant
AssistantsAPICreateScheduledEventPost /ai/assistants/{assistant_id}/scheduled_eventsCreate a scheduled event
AssistantsAPIDeleteAssistantPublicAssistantsAssistantIdDeleteDelete /ai/assistants/{assistant_id}Delete an assistant
AssistantsAPIDeleteScheduledEventDelete /ai/assistants/{assistant_id}/scheduled_events/{event_id}Delete a scheduled event
AssistantsAPIGetAssistantPublicAssistantsAssistantIdGetGet /ai/assistants/{assistant_id}Get an assistant
AssistantsAPIGetAssistantTexmlPublicAssistantsAssistantIdTexmlGetGet /ai/assistants/{assistant_id}/texmlGet assistant texml
AssistantsAPIGetAssistantsPublicAssistantsGetGet /ai/assistantsList assistants
AssistantsAPIGetScheduledEventGet /ai/assistants/{assistant_id}/scheduled_events/{event_id}Get a scheduled event
AssistantsAPIGetScheduledEventsGet /ai/assistants/{assistant_id}/scheduled_eventsList scheduled events
AssistantsAPIUpdateAssistantPublicAssistantsAssistantIdPostPost /ai/assistants/{assistant_id}Update an assistant
AudioAPIAudioPublicAudioTranscriptionsPostPost /ai/audio/transcriptionsTranscribe speech to text
AuditLogsAPIListAuditLogsGet /audit_eventsList Audit Logs
AuthenticationProvidersAPICreateAuthenticationProviderPost /authentication_providersCreates an authentication provider
AuthenticationProvidersAPIDeleteAuthenticationProviderDelete /authentication_providers/{id}Deletes an authentication provider
AuthenticationProvidersAPIFindAuthenticationProvidersGet /authentication_providersList all SSO authentication providers
AuthenticationProvidersAPIGetAuthenticationProviderGet /authentication_providers/{id}Retrieve an authentication provider
AuthenticationProvidersAPIUpdateAuthenticationProviderPatch /authentication_providers/{id}Update an authentication provider
AutoRechargePreferencesAPIGetAutoRechargePrefsGet /payment/auto_recharge_prefsList auto recharge preferences
AutoRechargePreferencesAPIUpdateAutoRechargePrefsPatch /payment/auto_recharge_prefsUpdate auto recharge preferences
BillingAPIGetUserBalanceGet /balanceGet user balance details
BillingGroupsAPICreateBillingGroupPost /billing_groupsCreate a billing group
BillingGroupsAPIDeleteBillingGroupDelete /billing_groups/{id}Delete a billing group
BillingGroupsAPIGetBillingGroupGet /billing_groups/{id}Get a billing group
BillingGroupsAPIListBillingGroupsGet /billing_groupsList all billing groups
BillingGroupsAPIUpdateBillingGroupPatch /billing_groups/{id}Update a billing group
BrandsAPICreateBrandPostPost /brandCreate Brand
BrandsAPIDeleteBrandDelete /brand/{brandId}Delete Brand
BrandsAPIGetBrandGet /brand/{brandId}Get Brand
BrandsAPIGetBrandFeedbackByIdGet /brand/feedback/{brandId}Get Brand Feedback By Id
BrandsAPIGetBrandsGet /brandList Brands
BrandsAPIListExternalVettingsGet /brand/{brandId}/externalVettingList External Vettings
BrandsAPIPostOrderExternalVettingPost /brand/{brandId}/externalVettingOrder Brand External Vetting
BrandsAPIPutExternalVettingRecordPut /brand/{brandId}/externalVettingImport External Vetting Record
BrandsAPIResendBrand2faEmailPost /brand/{brandId}/2faEmailResend brand 2FA email
BrandsAPIRevetBrandPut /brand/{brandId}/revetRevet Brand
BrandsAPIUpdateBrandPut /brand/{brandId}Update Brand
BucketAPICreateBucketPut /{bucketName}CreateBucket
BucketAPIDeleteBucketDelete /{bucketName}DeleteBucket
BucketAPIHeadBucketHead /{bucketName}HeadBucket
BucketAPIListBucketsGet /ListBuckets
BucketSSLCertificateAPIAddStorageSSLCertificatePut /storage/buckets/{bucketName}/ssl_certificateAdd SSL Certificate
BucketSSLCertificateAPIGetStorageSSLCertificatesGet /storage/buckets/{bucketName}/ssl_certificateGet Bucket SSL Certificate
BucketSSLCertificateAPIRemoveStorageSSLCertificateDelete /storage/buckets/{bucketName}/ssl_certificateRemove SSL Certificate
BucketUsageAPIGetBucketUsageGet /storage/buckets/{bucketName}/usage/storageGet Bucket Usage
BucketUsageAPIGetStorageAPIUsageGet /storage/buckets/{bucketName}/usage/apiGet API Usage
BulkPhoneNumberCampaignsAPIGetAssignmentTaskStatusGet /phoneNumberAssignmentByProfile/{taskId}Get Assignment Task Status
BulkPhoneNumberCampaignsAPIGetPhoneNumberStatusGet /phoneNumberAssignmentByProfile/{taskId}/phoneNumbersGet Phone Number Status
BulkPhoneNumberCampaignsAPIPostAssignMessagingProfileToCampaignPost /phoneNumberAssignmentByProfileAssign Messaging Profile To Campaign
BulkPhoneNumberOperationsAPICreateDeletePhoneNumbersJobPost /phone_numbers/jobs/delete_phone_numbersDelete a batch of numbers
BulkPhoneNumberOperationsAPICreatePhoneNumbersJobUpdateEmergencySettingsPost /phone_numbers/jobs/update_emergency_settingsUpdate the emergency settings from a batch of numbers
BulkPhoneNumberOperationsAPICreateUpdatePhoneNumbersJobPost /phone_numbers/jobs/update_phone_numbersUpdate a batch of numbers
BulkPhoneNumberOperationsAPIListPhoneNumbersJobsGet /phone_numbers/jobsLists the phone numbers jobs
BulkPhoneNumberOperationsAPIRetrievePhoneNumbersJobGet /phone_numbers/jobs/{id}Retrieve a phone numbers job
BundlesAPIGetBillingBundleByIdGet /bundle_pricing/billing_bundles/{bundle_id}Get Bundle By Id
BundlesAPIGetUserBillingBundlesGet /bundle_pricing/billing_bundlesRetrieve Bundles
CDRUsageReportsAPIGetCDRUsageReportSyncGet /reports/cdr_usage_reports/syncGenerates and fetches CDR Usage Reports
CSVDownloadsAPICreateCsvDownloadPost /phone_numbers/csv_downloadsCreate a CSV download
CSVDownloadsAPIGetCsvDownloadGet /phone_numbers/csv_downloads/{id}Retrieve a CSV download
CSVDownloadsAPIListCsvDownloadsGet /phone_numbers/csv_downloadsList CSV downloads
CallCommandsAPIAnswerCallPost /calls/{call_control_id}/actions/answerAnswer call
CallCommandsAPIBridgeCallPost /calls/{call_control_id}/actions/bridgeBridge calls
CallCommandsAPICallGatherUsingAIPost /calls/{call_control_id}/actions/gather_using_aiGather using AI
CallCommandsAPICallStartAIAssistantPost /calls/{call_control_id}/actions/ai_assistant_startStart AI Assistant
CallCommandsAPICallStopAIAssistantPost /calls/{call_control_id}/actions/ai_assistant_stopStop AI Assistant
CallCommandsAPIDialCallPost /callsDial
CallCommandsAPIEnqueueCallPost /calls/{call_control_id}/actions/enqueueEnqueue call
CallCommandsAPIGatherCallPost /calls/{call_control_id}/actions/gatherGather
CallCommandsAPIGatherUsingAudioPost /calls/{call_control_id}/actions/gather_using_audioGather using audio
CallCommandsAPIGatherUsingSpeakPost /calls/{call_control_id}/actions/gather_using_speakGather using speak
CallCommandsAPIHangupCallPost /calls/{call_control_id}/actions/hangupHangup call
CallCommandsAPILeaveQueuePost /calls/{call_control_id}/actions/leave_queueRemove call from a queue
CallCommandsAPINoiseSuppressionStartPost /calls/{call_control_id}/actions/suppression_startNoise Suppression Start (BETA)
CallCommandsAPINoiseSuppressionStopPost /calls/{call_control_id}/actions/suppression_stopNoise Suppression Stop (BETA)
CallCommandsAPIPauseCallRecordingPost /calls/{call_control_id}/actions/record_pauseRecord pause
CallCommandsAPIReferCallPost /calls/{call_control_id}/actions/referSIP Refer a call
CallCommandsAPIRejectCallPost /calls/{call_control_id}/actions/rejectReject a call
CallCommandsAPIResumeCallRecordingPost /calls/{call_control_id}/actions/record_resumeRecord resume
CallCommandsAPISendDTMFPost /calls/{call_control_id}/actions/send_dtmfSend DTMF
CallCommandsAPISendSIPInfoPost /calls/{call_control_id}/actions/send_sip_infoSend SIP info
CallCommandsAPISpeakCallPost /calls/{call_control_id}/actions/speakSpeak text
CallCommandsAPIStartCallForkPost /calls/{call_control_id}/actions/fork_startForking start
CallCommandsAPIStartCallPlaybackPost /calls/{call_control_id}/actions/playback_startPlay audio URL
CallCommandsAPIStartCallRecordPost /calls/{call_control_id}/actions/record_startRecording start
CallCommandsAPIStartCallStreamingPost /calls/{call_control_id}/actions/streaming_startStreaming start
CallCommandsAPIStartCallTranscriptionPost /calls/{call_control_id}/actions/transcription_startTranscription start
CallCommandsAPIStartSiprecSessionPost /calls/{call_control_id}/actions/siprec_startSIPREC start
CallCommandsAPIStopCallForkPost /calls/{call_control_id}/actions/fork_stopForking stop
CallCommandsAPIStopCallGatherPost /calls/{call_control_id}/actions/gather_stopGather stop
CallCommandsAPIStopCallPlaybackPost /calls/{call_control_id}/actions/playback_stopStop audio playback
CallCommandsAPIStopCallRecordingPost /calls/{call_control_id}/actions/record_stopRecording stop
CallCommandsAPIStopCallStreamingPost /calls/{call_control_id}/actions/streaming_stopStreaming stop
CallCommandsAPIStopCallTranscriptionPost /calls/{call_control_id}/actions/transcription_stopTranscription stop
CallCommandsAPIStopSiprecSessionPost /calls/{call_control_id}/actions/siprec_stopSIPREC stop
CallCommandsAPITransferCallPost /calls/{call_control_id}/actions/transferTransfer call
CallCommandsAPIUpdateClientStatePut /calls/{call_control_id}/actions/client_state_updateUpdate client state
CallControlApplicationsAPICreateCallControlApplicationPost /call_control_applicationsCreate a call control application
CallControlApplicationsAPIDeleteCallControlApplicationDelete /call_control_applications/{id}Delete a call control application
CallControlApplicationsAPIListCallControlApplicationsGet /call_control_applicationsList call control applications
CallControlApplicationsAPIRetrieveCallControlApplicationGet /call_control_applications/{id}Retrieve a call control application
CallControlApplicationsAPIUpdateCallControlApplicationPatch /call_control_applications/{id}Update a call control application
CallInformationAPIListConnectionActiveCallsGet /connections/{connection_id}/active_callsList all active calls for given connection
CallInformationAPIRetrieveCallStatusGet /calls/{call_control_id}Retrieve a call status
CallRecordingsAPICreateCustomStorageCredentialsPost /custom_storage_credentials/{connection_id}Create a custom storage credential
CallRecordingsAPIDeleteCustomStorageCredentialsDelete /custom_storage_credentials/{connection_id}Delete a stored credential
CallRecordingsAPIDeleteRecordingDelete /recordings/{recording_id}Delete a call recording
CallRecordingsAPIDeleteRecordingTranscriptionDelete /recording_transcriptions/{recording_transcription_id}Delete a recording transcription
CallRecordingsAPIDeleteRecordingsDelete /recordings/actions/deleteDelete a list of call recordings
CallRecordingsAPIGetCustomStorageCredentialsGet /custom_storage_credentials/{connection_id}Retrieve a stored credential
CallRecordingsAPIGetRecordingGet /recordings/{recording_id}Retrieve a call recording
CallRecordingsAPIGetRecordingTranscriptionGet /recording_transcriptions/{recording_transcription_id}Retrieve a recording transcription
CallRecordingsAPIGetRecordingTranscriptionsGet /recording_transcriptionsList all recording transcriptions
CallRecordingsAPIGetRecordingsGet /recordingsList all call recordings
CallRecordingsAPIUpdateCustomStorageCredentialsPut /custom_storage_credentials/{connection_id}Update a stored credential
CampaignAPIAcceptCampaignPost /campaign/acceptSharing/{campaignId}Accept Shared Campaign
CampaignAPIDeactivateCampaignDelete /campaign/{campaignId}Deactivate My Campaign
CampaignAPIGetCampaignGet /campaign/{campaignId}Get My Campaign
CampaignAPIGetCampaignCostGet /campaign/usecase/costGet Campaign Cost
CampaignAPIGetCampaignMnoMetadataGet /campaign/{campaignId}/mnoMetadataGet Campaign Mno Metadata
CampaignAPIGetCampaignOperationStatusGet /campaign/{campaignId}/operationStatusGet My Campaign Operation Status
CampaignAPIGetCampaignOsrAttributesGet /campaign/{campaignId}/osr/attributesGet My Osr Campaign Attributes
CampaignAPIGetCampaignSharingStatusGet /campaign/{campaignId}/sharingGet Sharing Status
CampaignAPIGetCampaignsGet /campaignList Campaigns
CampaignAPIGetUsecaseQualificationGet /campaignBuilder/brand/{brandId}/usecase/{usecase}Qualify By Usecase
CampaignAPIPostCampaignPost /campaignBuilderSubmit Campaign
CampaignAPIUpdateCampaignPut /campaign/{campaignId}Update My Campaign
ChatAPIChatPublicChatCompletionsPostPost /ai/chat/completionsCreate a chat completion
ChatAPIGetModelsPublicModelsGetGet /ai/modelsGet available models
ChatAPIPostSummaryPost /ai/summarizeSummarize file content
ClustersAPIComputeNewClusterPublicTextClustersPostPost /ai/clustersCompute new clusters
ClustersAPIDeleteClusterByTaskIdPublicTextClustersTaskIdDeleteDelete /ai/clusters/{task_id}Delete a cluster
ClustersAPIFetchClusterByTaskIdPublicTextClustersTaskIdGetGet /ai/clusters/{task_id}Fetch a cluster
ClustersAPIFetchClusterImageByTaskIdPublicTextClustersTaskIdImageGetGet /ai/clusters/{task_id}/graphFetch a cluster visualization
ClustersAPIListAllRequestedClustersPublicTextClustersGetGet /ai/clustersList all clusters
ConferenceCommandsAPICreateConferencePost /conferencesCreate conference
ConferenceCommandsAPIHoldConferenceParticipantsPost /conferences/{id}/actions/holdHold conference participants
ConferenceCommandsAPIJoinConferencePost /conferences/{id}/actions/joinJoin a conference
ConferenceCommandsAPILeaveConferencePost /conferences/{id}/actions/leaveLeave a conference
ConferenceCommandsAPIListConferenceParticipantsGet /conferences/{conference_id}/participantsList conference participants
ConferenceCommandsAPIListConferencesGet /conferencesList conferences
ConferenceCommandsAPIMuteConferenceParticipantsPost /conferences/{id}/actions/muteMute conference participants
ConferenceCommandsAPIPauseConferenceRecordingPost /conferences/{id}/actions/record_pauseConference recording pause
ConferenceCommandsAPIPlayConferenceAudioPost /conferences/{id}/actions/playPlay audio to conference participants
ConferenceCommandsAPIResumeConferenceRecordingPost /conferences/{id}/actions/record_resumeConference recording resume
ConferenceCommandsAPIRetrieveConferenceGet /conferences/{id}Retrieve a conference
ConferenceCommandsAPISpeakTextToConferencePost /conferences/{id}/actions/speakSpeak text to conference participants
ConferenceCommandsAPIStartConferenceRecordingPost /conferences/{id}/actions/record_startConference recording start
ConferenceCommandsAPIStopConferenceAudioPost /conferences/{id}/actions/stopStop audio being played on the conference
ConferenceCommandsAPIStopConferenceRecordingPost /conferences/{id}/actions/record_stopConference recording stop
ConferenceCommandsAPIUnholdConferenceParticipantsPost /conferences/{id}/actions/unholdUnhold conference participants
ConferenceCommandsAPIUnmuteConferenceParticipantsPost /conferences/{id}/actions/unmuteUnmute conference participants
ConferenceCommandsAPIUpdateConferencePost /conferences/{id}/actions/updateUpdate conference participant
ConnectionsAPIListConnectionsGet /connectionsList connections
ConnectionsAPIRetrieveConnectionGet /connections/{id}Retrieve a connection
ConversationsAPICreateNewConversationPublicConversationsPostPost /ai/conversationsCreate a conversation
ConversationsAPIDeleteConversationByIdPublicConversationsDeleteDelete /ai/conversations/{conversation_id}Delete a conversation
ConversationsAPIGetConversationByIdPublicConversationsGetGet /ai/conversations/{conversation_id}Get a conversation
ConversationsAPIGetConversationsPublicConversationIdInsightsGetGet /ai/conversations/{conversation_id}/conversations-insightsGet insights for a conversation
ConversationsAPIGetConversationsPublicConversationIdMessagesGetGet /ai/conversations/{conversation_id}/messagesGet conversation messages
ConversationsAPIGetConversationsPublicConversationsGetGet /ai/conversationsList conversations
ConversationsAPIUpdateConversationByIdPublicConversationsPutPut /ai/conversations/{conversation_id}Update conversation metadata
CountryCoverageAPIRetreiveCountryCoverageGet /country_coverageGet country coverage
CountryCoverageAPIRetreiveSpecificCountryCoverageGet /country_coverage/countries/{country_code}Get coverage for a specific country
CoverageAPIListNetworkCoverageGet /network_coverageList network coverage locations
CredentialConnectionsAPICheckRegistrationStatusPost /credential_connections/{id}/actions/check_registration_statusCheck a Credential Connection Registration Status
CredentialConnectionsAPICreateCredentialConnectionPost /credential_connectionsCreate a credential connection
CredentialConnectionsAPIDeleteCredentialConnectionDelete /credential_connections/{id}Delete a credential connection
CredentialConnectionsAPIListCredentialConnectionsGet /credential_connectionsList credential connections
CredentialConnectionsAPIRetrieveCredentialConnectionGet /credential_connections/{id}Retrieve a credential connection
CredentialConnectionsAPIUpdateCredentialConnectionPatch /credential_connections/{id}Update a credential connection
CredentialsAPICreateTelephonyCredentialPost /telephony_credentialsCreate a credential
CredentialsAPIDeleteTelephonyCredentialDelete /telephony_credentials/{id}Delete a credential
CredentialsAPIFindTelephonyCredentialsGet /telephony_credentialsList all credentials
CredentialsAPIGetTelephonyCredentialGet /telephony_credentials/{id}Get a credential
CredentialsAPIUpdateTelephonyCredentialPatch /telephony_credentials/{id}Update a credential
CustomerServiceRecordAPICreateCustomerServiceRecordPost /customer_service_recordsCreate a customer service record
CustomerServiceRecordAPIGetCustomerServiceRecordGet /customer_service_records/{customer_service_record_id}Get a customer service record
CustomerServiceRecordAPIListCustomerServiceRecordsGet /customer_service_recordsList customer service records
CustomerServiceRecordAPIVerifyPhoneNumberCoveragePost /customer_service_records/phone_number_coveragesVerify CSR phone number coverage
DataMigrationAPICreateMigrationPost /storage/migrationsCreate a Migration
DataMigrationAPICreateMigrationSourcePost /storage/migration_sourcesCreate a Migration Source
DataMigrationAPIDeleteMigrationSourceDelete /storage/migration_sources/{id}Delete a Migration Source
DataMigrationAPIGetMigrationGet /storage/migrations/{id}Get a Migration
DataMigrationAPIGetMigrationSourceGet /storage/migration_sources/{id}Get a Migration Source
DataMigrationAPIListMigrationSourceCoverageGet /storage/migration_source_coverageList Migration Source coverage
DataMigrationAPIListMigrationSourcesGet /storage/migration_sourcesList all Migration Sources
DataMigrationAPIListMigrationsGet /storage/migrationsList all Migrations
DataMigrationAPIStopMigrationPost /storage/migrations/{id}/actions/stopStop a Migration
DebuggingAPIListCallEventsGet /call_eventsList call events
DetailRecordsAPISearchDetailRecordsGet /detail_recordsSearch detail records
DialogflowIntegrationAPICreateDialogflowConnectionPost /dialogflow_connections/{connection_id}Create a Dialogflow Connection
DialogflowIntegrationAPIDeleteDialogflowConnectionDelete /dialogflow_connections/{connection_id}Delete stored Dialogflow Connection
DialogflowIntegrationAPIGetDialogflowConnectionGet /dialogflow_connections/{connection_id}Retrieve stored Dialogflow Connection
DialogflowIntegrationAPIUpdateDialogflowConnectionPut /dialogflow_connections/{connection_id}Update stored Dialogflow Connection
DocumentsAPICreateDocumentPost /documentsUpload a document
DocumentsAPIDeleteDocumentDelete /documents/{id}Delete a document
DocumentsAPIDownloadDocumentGet /documents/{id}/downloadDownload a document
DocumentsAPIListDocumentLinksGet /document_linksList all document links
DocumentsAPIListDocumentsGet /documentsList all documents
DocumentsAPIRetrieveDocumentGet /documents/{id}Retrieve a document
DocumentsAPIUpdateDocumentPatch /documents/{id}Update a document
DynamicEmergencyAddressesAPICreateDynamicEmergencyAddressPost /dynamic_emergency_addressesCreate a dynamic emergency address.
DynamicEmergencyAddressesAPIDeleteDynamicEmergencyAddressDelete /dynamic_emergency_addresses/{id}Delete a dynamic emergency address
DynamicEmergencyAddressesAPIGetDynamicEmergencyAddressGet /dynamic_emergency_addresses/{id}Get a dynamic emergency address
DynamicEmergencyAddressesAPIListDynamicEmergencyAddressesGet /dynamic_emergency_addressesList dynamic emergency addresses
DynamicEmergencyEndpointsAPICreateDynamicEmergencyEndpointPost /dynamic_emergency_endpointsCreate a dynamic emergency endpoint.
DynamicEmergencyEndpointsAPIDeleteDynamicEmergencyEndpointDelete /dynamic_emergency_endpoints/{id}Delete a dynamic emergency endpoint
DynamicEmergencyEndpointsAPIGetDynamicEmergencyEndpointGet /dynamic_emergency_endpoints/{id}Get a dynamic emergency endpoint
DynamicEmergencyEndpointsAPIListDynamicEmergencyEndpointsGet /dynamic_emergency_endpointsList dynamic emergency endpoints
EmbeddingsAPIEmbeddingBucketFilesPublicEmbeddingBucketsBucketNameDeleteDelete /ai/embeddings/buckets/{bucket_name}Disable AI for an Embedded Bucket
EmbeddingsAPIGetBucketNameGet /ai/embeddings/buckets/{bucket_name}Get file-level embedding statuses for a bucket
EmbeddingsAPIGetEmbeddingBucketsGet /ai/embeddings/bucketsList embedded buckets
EmbeddingsAPIGetEmbeddingTaskGet /ai/embeddings/{task_id}Get an embedding task's status
EmbeddingsAPIGetTasksByStatusGet /ai/embeddingsGet Tasks by Status
EmbeddingsAPIPostEmbeddingPost /ai/embeddingsEmbed documents
EmbeddingsAPIPostEmbeddingSimilaritySearchPost /ai/embeddings/similarity-searchSearch for documents
EmbeddingsAPIPostEmbeddingUrlPost /ai/embeddings/urlEmbed URL content
EnumAPIGetEnumEndpointGet /enum/{endpoint}Get Enum
ExternalConnectionsAPICreateExternalConnectionPost /external_connectionsCreates an External Connection
ExternalConnectionsAPICreateExternalConnectionUploadPost /external_connections/{id}/uploadsCreates an Upload request
ExternalConnectionsAPIDeleteExternalConnectionDelete /external_connections/{id}Deletes an External Connection
ExternalConnectionsAPIDeleteExternalConnectionLogMessageDelete /external_connections/log_messages/{id}Dismiss a log message
ExternalConnectionsAPIGetExternalConnectionGet /external_connections/{id}Retrieve an External Connection
ExternalConnectionsAPIGetExternalConnectionCivicAddressGet /external_connections/{id}/civic_addresses/{address_id}Retrieve a Civic Address
ExternalConnectionsAPIGetExternalConnectionLogMessageGet /external_connections/log_messages/{id}Retrieve a log message
ExternalConnectionsAPIGetExternalConnectionPhoneNumberGet /external_connections/{id}/phone_numbers/{phone_number_id}Retrieve a phone number
ExternalConnectionsAPIGetExternalConnectionReleaseGet /external_connections/{id}/releases/{release_id}Retrieve a Release request
ExternalConnectionsAPIGetExternalConnectionUploadGet /external_connections/{id}/uploads/{ticket_id}Retrieve an Upload request
ExternalConnectionsAPIGetExternalConnectionUploadsStatusGet /external_connections/{id}/uploads/statusGet the count of pending upload requests
ExternalConnectionsAPIListCivicAddressesGet /external_connections/{id}/civic_addressesList all civic addresses and locations
ExternalConnectionsAPIListExternalConnectionLogMessagesGet /external_connections/log_messagesList all log messages
ExternalConnectionsAPIListExternalConnectionPhoneNumbersGet /external_connections/{id}/phone_numbersList all phone numbers
ExternalConnectionsAPIListExternalConnectionReleasesGet /external_connections/{id}/releasesList all Releases
ExternalConnectionsAPIListExternalConnectionUploadsGet /external_connections/{id}/uploadsList all Upload requests
ExternalConnectionsAPIListExternalConnectionsGet /external_connectionsList all External Connections
ExternalConnectionsAPIOperatorConnectRefreshPost /operator_connect/actions/refreshRefresh Operator Connect integration
ExternalConnectionsAPIRefreshExternalConnectionUploadsPost /external_connections/{id}/uploads/refreshRefresh the status of all Upload requests
ExternalConnectionsAPIRetryUploadPost /external_connections/{id}/uploads/{ticket_id}/retryRetry an Upload request
ExternalConnectionsAPIUpdateExternalConnectionPatch /external_connections/{id}Update an External Connection
ExternalConnectionsAPIUpdateExternalConnectionPhoneNumberPatch /external_connections/{id}/phone_numbers/{phone_number_id}Update a phone number
ExternalConnectionsAPIUpdateLocationPatch /external_connections/{id}/locations/{location_id}Update a location's static emergency address
FQDNConnectionsAPICreateFqdnConnectionPost /fqdn_connectionsCreate an FQDN connection
FQDNConnectionsAPIDeleteFqdnConnectionDelete /fqdn_connections/{id}Delete an FQDN connection
FQDNConnectionsAPIListFqdnConnectionsGet /fqdn_connectionsList FQDN connections
FQDNConnectionsAPIRetrieveFqdnConnectionGet /fqdn_connections/{id}Retrieve an FQDN connection
FQDNConnectionsAPIUpdateFqdnConnectionPatch /fqdn_connections/{id}Update an FQDN connection
FQDNsAPICreateFqdnPost /fqdnsCreate an FQDN
FQDNsAPIDeleteFqdnDelete /fqdns/{id}Delete an FQDN
FQDNsAPIListFqdnsGet /fqdnsList FQDNs
FQDNsAPIRetrieveFqdnGet /fqdns/{id}Retrieve an FQDN
FQDNsAPIUpdateFqdnPatch /fqdns/{id}Update an FQDN
FineTuningAPICancelNewFinetuningjobPublicFinetuningPostPost /ai/fine_tuning/jobs/{job_id}/cancelCancel a fine tuning job
FineTuningAPICreateNewFinetuningjobPublicFinetuningPostPost /ai/fine_tuning/jobsCreate a fine tuning job
FineTuningAPIGetFinetuningjobPublicFinetuningGetGet /ai/fine_tuning/jobsList fine tuning jobs
FineTuningAPIGetFinetuningjobPublicFinetuningJobIdGetGet /ai/fine_tuning/jobs/{job_id}Get a fine tuning job
GlobalIPsAPICreateGlobalIpPost /global_ipsCreate a Global IP
GlobalIPsAPICreateGlobalIpAssignmentPost /global_ip_assignmentsCreate a Global IP assignment
GlobalIPsAPICreateGlobalIpHealthCheckPost /global_ip_health_checksCreate a Global IP health check
GlobalIPsAPIDeleteGlobalIpDelete /global_ips/{id}Delete a Global IP
GlobalIPsAPIDeleteGlobalIpAssignmentDelete /global_ip_assignments/{id}Delete a Global IP assignment
GlobalIPsAPIDeleteGlobalIpHealthCheckDelete /global_ip_health_checks/{id}Delete a Global IP health check
GlobalIPsAPIGetGlobalIpGet /global_ips/{id}Retrieve a Global IP
GlobalIPsAPIGetGlobalIpAssignmentGet /global_ip_assignments/{id}Retrieve a Global IP
GlobalIPsAPIGetGlobalIpAssignmentHealthGet /global_ip_assignment_healthGlobal IP Assignment Health Check Metrics
GlobalIPsAPIGetGlobalIpAssignmentUsageGet /global_ip_assignments_usageGlobal IP Assignment Usage Metrics
GlobalIPsAPIGetGlobalIpHealthCheckGet /global_ip_health_checks/{id}Retrieve a Global IP health check
GlobalIPsAPIGetGlobalIpLatencyGet /global_ip_latencyGlobal IP Latency Metrics
GlobalIPsAPIGetGlobalIpUsageGet /global_ip_usageGlobal IP Usage Metrics
GlobalIPsAPIListGlobalIpAllowedPortsGet /global_ip_allowed_portsList all Global IP Allowed Ports
GlobalIPsAPIListGlobalIpAssignmentsGet /global_ip_assignmentsList all Global IP assignments
GlobalIPsAPIListGlobalIpHealthCheckTypesGet /global_ip_health_check_typesList all Global IP Health check types
GlobalIPsAPIListGlobalIpHealthChecksGet /global_ip_health_checksList all Global IP health checks
GlobalIPsAPIListGlobalIpProtocolsGet /global_ip_protocolsList all Global IP Protocols
GlobalIPsAPIListGlobalIpsGet /global_ipsList all Global IPs
GlobalIPsAPIUpdateGlobalIpAssignmentPatch /global_ip_assignments/{id}Update a Global IP assignment
IPAddressesAPICreateAccessIpAddressPost /access_ip_addressCreate new Access IP Address
IPAddressesAPIDeleteAccessIpAddressDelete /access_ip_address/{access_ip_address_id}Delete access IP address
IPAddressesAPIGetAccessIpAddressGet /access_ip_address/{access_ip_address_id}Retrieve an access IP address
IPAddressesAPIListAccessIpAddressesGet /access_ip_addressList all Access IP Addresses
IPConnectionsAPICreateIpConnectionPost /ip_connectionsCreate an Ip connection
IPConnectionsAPIDeleteIpConnectionDelete /ip_connections/{id}Delete an Ip connection
IPConnectionsAPIListIpConnectionsGet /ip_connectionsList Ip connections
IPConnectionsAPIRetrieveIpConnectionGet /ip_connections/{id}Retrieve an Ip connection
IPConnectionsAPIUpdateIpConnectionPatch /ip_connections/{id}Update an Ip connection
IPRangesAPIAccessIpRangesAccessIpRangeIdDeleteDelete /access_ip_ranges/{access_ip_range_id}Delete access IP ranges
IPRangesAPICreateAccessIPRangePost /access_ip_rangesCreate new Access IP Range
IPRangesAPIListAccessIpRangesGet /access_ip_rangesList all Access IP Ranges
IPsAPICreateIpPost /ipsCreate an Ip
IPsAPIDeleteIpDelete /ips/{id}Delete an Ip
IPsAPIListIpsGet /ipsList Ips
IPsAPIRetrieveIpGet /ips/{id}Retrieve an Ip
IPsAPIUpdateIpPatch /ips/{id}Update an Ip
IntegrationSecretsAPICreateIntegrationSecretPost /integration_secretsCreate a secret
IntegrationSecretsAPIDeleteIntegrationSecretDelete /integration_secrets/{id}Delete an integration secret
IntegrationSecretsAPIListIntegrationSecretsGet /integration_secretsList integration secrets
InventoryLevelAPICreateInventoryCoverageGet /inventory_coverageCreate an inventory coverage request
MDRDetailReportsAPIGetPaginatedMdrsGet /reports/mdrsFetch all Mdr records
MDRUsageReportsAPIDeleteUsageReportDelete /reports/mdr_usage_reports/{id}Delete MDR Usage Report
MDRUsageReportsAPIGetMDRUsageReportSyncGet /reports/mdr_usage_reports/syncGenerate and fetch MDR Usage Report
MDRUsageReportsAPIGetMdrUsageReportsGet /reports/mdr_usage_reportsFetch all Messaging usage reports
MDRUsageReportsAPIGetUsageReportGet /reports/mdr_usage_reports/{id}Retrieve messaging report
MDRUsageReportsAPISubmitUsageReportPost /reports/mdr_usage_reportsCreate MDR Usage Report
ManagedAccountsAPICreateManagedAccountPost /managed_accountsCreate a new managed account.
ManagedAccountsAPIDisableManagedAccountPost /managed_accounts/{id}/actions/disableDisables a managed account
ManagedAccountsAPIEnableManagedAccountPost /managed_accounts/{id}/actions/enableEnables a managed account
ManagedAccountsAPIListAllocatableGlobalOutboundChannelsGet /managed_accounts/allocatable_global_outbound_channelsDisplay information about allocatable global outbound channels for the current user.
ManagedAccountsAPIListManagedAccountsGet /managed_accountsLists accounts managed by the current user.
ManagedAccountsAPIRetrieveManagedAccountGet /managed_accounts/{id}Retrieve a managed account
ManagedAccountsAPIUpdateManagedAccountPatch /managed_accounts/{id}Update a managed account
ManagedAccountsAPIUpdateManagedAccountGlobalChannelLimitPatch /managed_accounts/{id}/update_global_channel_limitUpdate the amount of allocatable global outbound channels allocated to a specific managed account.
MediaStorageAPIAPICreateMediaStoragePost /mediaUpload media
MediaStorageAPIAPIDeleteMediaStorageDelete /media/{media_name}Deletes stored media
MediaStorageAPIAPIDownloadMediaGet /media/{media_name}/downloadDownload stored media
MediaStorageAPIAPIGetMediaStorageGet /media/{media_name}Retrieve stored media
MediaStorageAPIAPIListMediaStorageGet /mediaList uploaded media
MediaStorageAPIAPIUpdateMediaStoragePut /media/{media_name}Update stored media
MessagesAPICreateGroupMmsMessagePost /messages/group_mmsSend a group MMS message
MessagesAPICreateLongCodeMessagePost /messages/long_codeSend a long code message
MessagesAPICreateNumberPoolMessagePost /messages/number_poolSend a message using number pool
MessagesAPICreateShortCodeMessagePost /messages/short_codeSend a short code message
MessagesAPIGetMessageGet /messages/{id}Retrieve a message
MessagesAPISendMessagePost /messagesSend a message
MessagingHostedNumberAPICheckEligibilityNumbersGet /messaging_hosted_number_orders/eligibility_numbers_checkCheck eligibility of phone numbers for hosted messaging
MessagingHostedNumberAPICreateMessagingHostedNumberOrderPost /messaging_hosted_number_ordersCreate a messaging hosted number order
MessagingHostedNumberAPICreateVerificationCodesForMessagingHostedNumberOrderPost /messaging_hosted_number_orders/{id}/verification_codesCreate verification codes for the hosted numbers order
MessagingHostedNumberAPIDeleteMessagingHostedNumberDelete /messaging_hosted_numbers/{id}Delete a messaging hosted number
MessagingHostedNumberAPIGetMessagingHostedNumberOrderGet /messaging_hosted_number_orders/{id}Retrieve a messaging hosted number order
MessagingHostedNumberAPIListMessagingHostedNumberOrdersGet /messaging_hosted_number_ordersList messaging hosted number orders
MessagingHostedNumberAPIUploadMessagingHostedNumberOrderFilePost /messaging_hosted_number_orders/{id}/actions/file_uploadUpload file required for a messaging hosted number order
MessagingHostedNumberAPIValidateVerificationCodesForMessagingHostedNumberOrderPost /messaging_hosted_number_orders/{id}/validation_codesValidate the verification codes for the hosted numbers order
MessagingProfilesAPICreateMessagingProfilePost /messaging_profilesCreate a messaging profile
MessagingProfilesAPIDeleteMessagingProfileDelete /messaging_profiles/{id}Delete a messaging profile
MessagingProfilesAPIGetMessagingProfileMetricsGet /messaging_profiles/{id}/metricsRetrieve messaging profile metrics
MessagingProfilesAPIListMessagingProfilesGet /messaging_profilesList messaging profiles
MessagingProfilesAPIListProfileMetricsGet /messaging_profile_metricsList messaging profile metrics
MessagingProfilesAPIListProfilePhoneNumbersGet /messaging_profiles/{id}/phone_numbersList phone numbers associated with a messaging profile
MessagingProfilesAPIListProfileShortCodesGet /messaging_profiles/{id}/short_codesList short codes associated with a messaging profile
MessagingProfilesAPIRetrieveMessagingProfileGet /messaging_profiles/{id}Retrieve a messaging profile
MessagingProfilesAPIUpdateMessagingProfilePatch /messaging_profiles/{id}Update a messaging profile
MessagingTollfreeVerificationAPIDeleteVerificationRequestDelete /messaging_tollfree/verification/requests/{id}Delete Verification Request
MessagingTollfreeVerificationAPIGetVerificationRequestGet /messaging_tollfree/verification/requests/{id}Get Verification Request
MessagingTollfreeVerificationAPIListVerificationRequestsGet /messaging_tollfree/verification/requestsList Verification Requests
MessagingTollfreeVerificationAPISubmitVerificationRequestPost /messaging_tollfree/verification/requestsSubmit Verification Request
MessagingTollfreeVerificationAPIUpdateVerificationRequestPatch /messaging_tollfree/verification/requests/{id}Update Verification Request
MessagingURLDomainsAPIListMessagingUrlDomainsGet /messaging_url_domainsList messaging URL domains
MobileNetworkOperatorsAPIGetMobileNetworkOperatorsGet /mobile_network_operatorsList mobile network operators
NetworksAPICreateDefaultGatewayPost /networks/{id}/default_gatewayCreate Default Gateway.
NetworksAPICreateNetworkPost /networksCreate a Network
NetworksAPIDeleteDefaultGatewayDelete /networks/{id}/default_gatewayDelete Default Gateway.
NetworksAPIDeleteNetworkDelete /networks/{id}Delete a Network
NetworksAPIGetDefaultGatewayGet /networks/{id}/default_gatewayGet Default Gateway status.
NetworksAPIGetNetworkGet /networks/{id}Retrieve a Network
NetworksAPIListNetworkInterfacesGet /networks/{id}/network_interfacesList all Interfaces for a Network.
NetworksAPIListNetworksGet /networksList all Networks
NetworksAPIUpdateNetworkPatch /networks/{id}Update a Network
NotificationsAPICreateNotificationChannelsPost /notification_channelsCreate a notification channel
NotificationsAPICreateNotificationProfilePost /notification_profilesCreate a notification profile
NotificationsAPICreateNotificationSettingPost /notification_settingsAdd a Notification Setting
NotificationsAPIDeleteNotificationChannelDelete /notification_channels/{id}Delete a notification channel
NotificationsAPIDeleteNotificationProfileDelete /notification_profiles/{id}Delete a notification profile
NotificationsAPIDeleteNotificationSettingDelete /notification_settings/{id}Delete a notification setting
NotificationsAPIFindNotificationsEventsGet /notification_eventsList all Notifications Events
NotificationsAPIFindNotificationsEventsConditionsGet /notification_event_conditionsList all Notifications Events Conditions
NotificationsAPIFindNotificationsProfilesGet /notification_profilesList all Notifications Profiles
NotificationsAPIGetNotificationChannelGet /notification_channels/{id}Get a notification channel
NotificationsAPIGetNotificationProfileGet /notification_profiles/{id}Get a notification profile
NotificationsAPIGetNotificationSettingGet /notification_settings/{id}Get a notification setting
NotificationsAPIListNotificationChannelsGet /notification_channelsList notification channels
NotificationsAPIListNotificationSettingsGet /notification_settingsList notification settings
NotificationsAPIUpdateNotificationChannelPatch /notification_channels/{id}Update a notification channel
NotificationsAPIUpdateNotificationProfilePatch /notification_profiles/{id}Update a notification profile
NumberConfigurationsAPIBulkUpdateMessagingSettingsOnPhoneNumbersPost /messaging_numbers_bulk_updatesUpdate the messaging profile of multiple phone numbers
NumberConfigurationsAPIGetBulkUpdateMessagingSettingsOnPhoneNumbersStatusGet /messaging_numbers_bulk_updates/{order_id}Retrieve bulk update status
NumberConfigurationsAPIGetPhoneNumberMessagingSettingsGet /phone_numbers/{id}/messagingRetrieve a phone number with messaging settings
NumberConfigurationsAPIListPhoneNumbersWithMessagingSettingsGet /phone_numbers/messagingList phone numbers with messaging settings
NumberConfigurationsAPIUpdatePhoneNumberMessagingSettingsPatch /phone_numbers/{id}/messagingUpdate the messaging profile and/or messaging product of a phone number
NumberLookupAPILookupNumberGet /number_lookup/{phone_number}Lookup phone number data
NumberPortoutAPICreatePortoutReportPost /portouts/reportsCreate a port-out related report
NumberPortoutAPIFindPortoutCommentsGet /portouts/{id}/commentsList all comments for a portout request
NumberPortoutAPIFindPortoutRequestGet /portouts/{id}Get a portout request
NumberPortoutAPIGetPortRequestSupportingDocumentsGet /portouts/{id}/supporting_documentsList supporting documents on a portout request
NumberPortoutAPIGetPortoutReportGet /portouts/reports/{id}Retrieve a report
NumberPortoutAPIListPortoutEventsGet /portouts/eventsList all port-out events
NumberPortoutAPIListPortoutRejectionsGet /portouts/rejections/{portout_id}List eligible port-out rejection codes for a specific order
NumberPortoutAPIListPortoutReportsGet /portouts/reportsList port-out related reports
NumberPortoutAPIListPortoutRequestGet /portoutsList portout requests
NumberPortoutAPIPostPortRequestCommentPost /portouts/{id}/commentsCreate a comment on a portout request
NumberPortoutAPIPostPortRequestSupportingDocumentsPost /portouts/{id}/supporting_documentsCreate a list of supporting documents on a portout request
NumberPortoutAPIRepublishPortoutEventPost /portouts/events/{id}/republishRepublish a port-out event
NumberPortoutAPIShowPortoutEventGet /portouts/events/{id}Show a port-out event
NumberPortoutAPIUpdatePortoutStatusPatch /portouts/{id}/{status}Update Status
NumbersFeaturesAPIPostNumbersFeaturesPost /numbers_featuresRetrieve the features for a list of numbers
OTAUpdatesAPIGetOtaUpdateGet /ota_updates/{id}Get OTA update
OTAUpdatesAPIListOtaUpdatesGet /ota_updatesList OTA updates
ObjectAPIDeleteObjectDelete /{bucketName}/{objectName}DeleteObject
ObjectAPIDeleteObjectsPost /{bucketName}DeleteObjects
ObjectAPIGetObjectGet /{bucketName}/{objectName}GetObject
ObjectAPIHeadObjectHead /{bucketName}/{objectName}HeadObject
ObjectAPIListObjectsGet /{bucketName}ListObjectsV2
ObjectAPIPutObjectPut /{bucketName}/{objectName}PutObject
OutboundVoiceProfilesAPICreateVoiceProfilePost /outbound_voice_profilesCreate an outbound voice profile
OutboundVoiceProfilesAPIDeleteOutboundVoiceProfileDelete /outbound_voice_profiles/{id}Delete an outbound voice profile
OutboundVoiceProfilesAPIGetOutboundVoiceProfileGet /outbound_voice_profiles/{id}Retrieve an outbound voice profile
OutboundVoiceProfilesAPIListOutboundVoiceProfilesGet /outbound_voice_profilesGet all outbound voice profiles
OutboundVoiceProfilesAPIUpdateOutboundVoiceProfilePatch /outbound_voice_profiles/{id}Updates an existing outbound voice profile.
PhoneNumberBlockOrdersAPICreateNumberBlockOrderPost /number_block_ordersCreate a number block order
PhoneNumberBlockOrdersAPIListNumberBlockOrdersGet /number_block_ordersList number block orders
PhoneNumberBlockOrdersAPIRetrieveNumberBlockOrderGet /number_block_orders/{number_block_order_id}Retrieve a number block order
PhoneNumberBlocksBackgroundJobsAPICreatePhoneNumberBlockDeletionJobPost /phone_number_blocks/jobs/delete_phone_number_blockDeletes all numbers associated with a phone number block
PhoneNumberBlocksBackgroundJobsAPIGetPhoneNumberBlocksJobGet /phone_number_blocks/jobs/{id}Retrieves a phone number blocks job
PhoneNumberBlocksBackgroundJobsAPIListPhoneNumberBlocksJobsGet /phone_number_blocks/jobsLists the phone number blocks jobs
PhoneNumberCampaignsAPICreatePhoneNumberCampaignPost /phone_number_campaignsCreate New Phone Number Campaign
PhoneNumberCampaignsAPIDeletePhoneNumberCampaignDelete /phone_number_campaigns/{phoneNumber}Delete Phone Number Campaign
PhoneNumberCampaignsAPIGetAllPhoneNumberCampaignsGet /phone_number_campaignsRetrieve All Phone Number Campaigns
PhoneNumberCampaignsAPIGetSinglePhoneNumberCampaignGet /phone_number_campaigns/{phoneNumber}Get Single Phone Number Campaign
PhoneNumberCampaignsAPIPutPhoneNumberCampaignPut /phone_number_campaigns/{phoneNumber}Create New Phone Number Campaign
PhoneNumberConfigurationsAPIDeletePhoneNumberDelete /phone_numbers/{id}Delete a phone number
PhoneNumberConfigurationsAPIEnablePhoneNumberEmergencyPost /phone_numbers/{id}/actions/enable_emergencyEnable emergency for a phone number
PhoneNumberConfigurationsAPIGetPhoneNumberVoiceSettingsGet /phone_numbers/{id}/voiceRetrieve a phone number with voice settings
PhoneNumberConfigurationsAPIListPhoneNumbersGet /phone_numbersList phone numbers
PhoneNumberConfigurationsAPIListPhoneNumbersWithVoiceSettingsGet /phone_numbers/voiceList phone numbers with voice settings
PhoneNumberConfigurationsAPIPhoneNumberBundleStatusChangePatch /phone_numbers/{id}/actions/bundle_status_changeChange the bundle status for a phone number (set to being in a bundle or remove from a bundle)
PhoneNumberConfigurationsAPIRetrievePhoneNumberGet /phone_numbers/{id}Retrieve a phone number
PhoneNumberConfigurationsAPISlimListPhoneNumbersGet /phone_numbers/slimSlim List phone numbers
PhoneNumberConfigurationsAPIUpdatePhoneNumberPatch /phone_numbers/{id}Update a phone number
PhoneNumberConfigurationsAPIUpdatePhoneNumberVoiceSettingsPatch /phone_numbers/{id}/voiceUpdate a phone number with voice settings
PhoneNumberOrdersAPICancelSubNumberOrderPatch /sub_number_orders/{sub_number_order_id}/cancelCancel a sub number order
PhoneNumberOrdersAPICreateCommentPost /commentsCreate a comment
PhoneNumberOrdersAPICreateNumberOrderPost /number_ordersCreate a number order
PhoneNumberOrdersAPIGetNumberOrderPhoneNumberGet /number_order_phone_numbers/{number_order_phone_number_id}Retrieve a single phone number within a number order.
PhoneNumberOrdersAPIGetSubNumberOrderGet /sub_number_orders/{sub_number_order_id}Retrieve a sub number order
PhoneNumberOrdersAPIListCommentsGet /commentsRetrieve all comments
PhoneNumberOrdersAPIListNumberOrdersGet /number_ordersList number orders
PhoneNumberOrdersAPIListSubNumberOrdersGet /sub_number_ordersList sub number orders
PhoneNumberOrdersAPIMarkCommentReadPatch /comments/{id}/readMark a comment as read
PhoneNumberOrdersAPIRetrieveCommentGet /comments/{id}Retrieve a comment
PhoneNumberOrdersAPIRetrieveNumberOrderGet /number_orders/{number_order_id}Retrieve a number order
PhoneNumberOrdersAPIRetrieveOrderPhoneNumbersGet /number_order_phone_numbersRetrieve a list of phone numbers associated to orders
PhoneNumberOrdersAPIUpdateNumberOrderPatch /number_orders/{number_order_id}Update a number order
PhoneNumberOrdersAPIUpdateNumberOrderPhoneNumberPatch /number_order_phone_numbers/{number_order_phone_number_id}Update requirements for a single phone number within a number order.
PhoneNumberOrdersAPIUpdateSubNumberOrderPatch /sub_number_orders/{sub_number_order_id}Update a sub number order's requirements
PhoneNumberPortingAPIPostPortabilityCheckPost /portability_checksRun a portability check
PhoneNumberReservationsAPICreateNumberReservationPost /number_reservationsCreate a number reservation
PhoneNumberReservationsAPIExtendNumberReservationExpiryTimePost /number_reservations/{number_reservation_id}/actions/extendExtend a number reservation
PhoneNumberReservationsAPIListNumberReservationsGet /number_reservationsList number reservations
PhoneNumberReservationsAPIRetrieveNumberReservationGet /number_reservations/{number_reservation_id}Retrieve a number reservation
PhoneNumberSearchAPIListAvailablePhoneNumberBlocksGet /available_phone_number_blocksList available phone number blocks
PhoneNumberSearchAPIListAvailablePhoneNumbersGet /available_phone_numbersList available phone numbers
PortingOrdersAPIActivatePortingOrderPost /porting_orders/{id}/actions/activateActivate every number in a porting order asynchronously.
PortingOrdersAPICancelPortingOrderPost /porting_orders/{id}/actions/cancelCancel a porting order
PortingOrdersAPIConfirmPortingOrderPost /porting_orders/{id}/actions/confirmSubmit a porting order.
PortingOrdersAPICreateAdditionalDocumentsPost /porting_orders/{id}/additional_documentsCreate a list of additional documents
PortingOrdersAPICreateLoaConfigurationPost /porting/loa_configurationsCreate a LOA configuration
PortingOrdersAPICreatePhoneNumberConfigurationsPost /porting_orders/phone_number_configurationsCreate a list of phone number configurations
PortingOrdersAPICreatePortingOrderPost /porting_ordersCreate a porting order
PortingOrdersAPICreatePortingOrderCommentPost /porting_orders/{id}/commentsCreate a comment for a porting order
PortingOrdersAPICreatePortingPhoneNumberBlockPost /porting_orders/{porting_order_id}/phone_number_blocksCreate a phone number block
PortingOrdersAPICreatePortingPhoneNumberExtensionPost /porting_orders/{porting_order_id}/phone_number_extensionsCreate a phone number extension
PortingOrdersAPICreatePortingReportPost /porting/reportsCreate a porting related report
PortingOrdersAPIDeleteAdditionalDocumentDelete /porting_orders/{id}/additional_documents/{additional_document_id}Delete an additional document
PortingOrdersAPIDeleteLoaConfigurationDelete /porting/loa_configurations/{id}Delete a LOA configuration
PortingOrdersAPIDeletePortingOrderDelete /porting_orders/{id}Delete a porting order
PortingOrdersAPIDeletePortingPhoneNumberBlockDelete /porting_orders/{porting_order_id}/phone_number_blocks/{id}Delete a phone number block
PortingOrdersAPIDeletePortingPhoneNumberExtensionDelete /porting_orders/{porting_order_id}/phone_number_extensions/{id}Delete a phone number extension
PortingOrdersAPIGetLoaConfigurationGet /porting/loa_configurations/{id}Retrieve a LOA configuration
PortingOrdersAPIGetPortingOrderGet /porting_orders/{id}Retrieve a porting order
PortingOrdersAPIGetPortingOrderLoaTemplateGet /porting_orders/{id}/loa_templateDownload a porting order loa template
PortingOrdersAPIGetPortingOrderSubRequestGet /porting_orders/{id}/sub_requestRetrieve the associated V1 sub_request_id and port_request_id
PortingOrdersAPIGetPortingOrdersActivationJobGet /porting_orders/{id}/activation_jobs/{activationJobId}Retrieve a porting activation job
PortingOrdersAPIGetPortingReportGet /porting/reports/{id}Retrieve a report
PortingOrdersAPIListAdditionalDocumentsGet /porting_orders/{id}/additional_documentsList additional documents
PortingOrdersAPIListAllowedFocWindowsGet /porting_orders/{id}/allowed_foc_windowsList allowed FOC dates
PortingOrdersAPIListExceptionTypesGet /porting_orders/exception_typesList all exception types
PortingOrdersAPIListLoaConfigurationsGet /porting/loa_configurationsList LOA configurations
PortingOrdersAPIListPhoneNumberConfigurationsGet /porting_orders/phone_number_configurationsList all phone number configurations
PortingOrdersAPIListPortingEventsGet /porting/eventsList all porting events
PortingOrdersAPIListPortingOrderActivationJobsGet /porting_orders/{id}/activation_jobsList all porting activation jobs
PortingOrdersAPIListPortingOrderCommentsGet /porting_orders/{id}/commentsList all comments of a porting order
PortingOrdersAPIListPortingOrderRequirementsGet /porting_orders/{id}/requirementsList porting order requirements
PortingOrdersAPIListPortingOrdersGet /porting_ordersList all porting orders
PortingOrdersAPIListPortingPhoneNumberBlocksGet /porting_orders/{porting_order_id}/phone_number_blocksList all phone number blocks
PortingOrdersAPIListPortingPhoneNumberExtensionsGet /porting_orders/{porting_order_id}/phone_number_extensionsList all phone number extensions
PortingOrdersAPIListPortingPhoneNumbersGet /porting_phone_numbersList all porting phone numbers
PortingOrdersAPIListPortingReportsGet /porting/reportsList porting related reports
PortingOrdersAPIListVerificationCodesGet /porting_orders/{id}/verification_codesList verification codes
PortingOrdersAPIPreviewLoaConfigurationGet /porting/loa_configurations/{id}/previewPreview a LOA configuration
PortingOrdersAPIPreviewLoaConfigurationParamsPost /porting/loa_configuration/previewPreview the LOA configuration parameters
PortingOrdersAPIRepublishPortingEventPost /porting/events/{id}/republishRepublish a porting event
PortingOrdersAPISendPortingVerificationCodesPost /porting_orders/{id}/verification_codes/sendSend the verification codes
PortingOrdersAPISharePortingOrderPost /porting_orders/{id}/actions/shareShare a porting order
PortingOrdersAPIShowPortingEventGet /porting/events/{id}Show a porting event
PortingOrdersAPIUpdateLoaConfigurationPatch /porting/loa_configurations/{id}Update a LOA configuration
PortingOrdersAPIUpdatePortingOrderPatch /porting_orders/{id}Edit a porting order
PortingOrdersAPIUpdatePortingOrdersActivationJobPatch /porting_orders/{id}/activation_jobs/{activationJobId}Update a porting activation job
PortingOrdersAPIVerifyPortingVerificationCodesPost /porting_orders/{id}/verification_codes/verifyVerify the verification code for a list of phone numbers
PresignedObjectURLsAPICreatePresignedObjectUrlPost /storage/buckets/{bucketName}/{objectName}/presigned_urlCreate Presigned Object URL
PrivateWirelessGatewaysAPICreatePrivateWirelessGatewayPost /private_wireless_gatewaysCreate a Private Wireless Gateway
PrivateWirelessGatewaysAPIDeleteWirelessGatewayDelete /private_wireless_gateways/{id}Delete a Private Wireless Gateway
PrivateWirelessGatewaysAPIGetPrivateWirelessGatewayGet /private_wireless_gateways/{id}Get a Private Wireless Gateway
PrivateWirelessGatewaysAPIGetPrivateWirelessGatewaysGet /private_wireless_gatewaysGet all Private Wireless Gateways
ProgrammableFaxApplicationsAPICreateFaxApplicationPost /fax_applicationsCreates a Fax Application
ProgrammableFaxApplicationsAPIDeleteFaxApplicationDelete /fax_applications/{id}Deletes a Fax Application
ProgrammableFaxApplicationsAPIGetFaxApplicationGet /fax_applications/{id}Retrieve a Fax Application
ProgrammableFaxApplicationsAPIListFaxApplicationsGet /fax_applicationsList all Fax Applications
ProgrammableFaxApplicationsAPIUpdateFaxApplicationPatch /fax_applications/{id}Update a Fax Application
ProgrammableFaxCommandsAPICancelFaxPost /faxes/{id}/actions/cancelCancel a fax
ProgrammableFaxCommandsAPIDeleteFaxDelete /faxes/{id}Delete a fax
ProgrammableFaxCommandsAPIListFaxesGet /faxesView a list of faxes
ProgrammableFaxCommandsAPIRefreshFaxPost /faxes/{id}/actions/refreshRefresh a fax
ProgrammableFaxCommandsAPISendFaxPost /faxesSend a fax
ProgrammableFaxCommandsAPIViewFaxGet /faxes/{id}View a fax
PublicInternetGatewaysAPICreatePublicInternetGatewayPost /public_internet_gatewaysCreate a Public Internet Gateway
PublicInternetGatewaysAPIDeletePublicInternetGatewayDelete /public_internet_gateways/{id}Delete a Public Internet Gateway
PublicInternetGatewaysAPIGetPublicInternetGatewayGet /public_internet_gateways/{id}Retrieve a Public Internet Gateway
PublicInternetGatewaysAPIListPublicInternetGatewaysGet /public_internet_gatewaysList all Public Internet Gateways
PushCredentialsAPICreatePushCredentialPost /mobile_push_credentialsCreates a new mobile push credential
PushCredentialsAPIDeletePushCredentialByIdDelete /mobile_push_credentials/{push_credential_id}Deletes a mobile push credential
PushCredentialsAPIGetPushCredentialByIdGet /mobile_push_credentials/{push_credential_id}Retrieves a mobile push credential
PushCredentialsAPIListPushCredentialsGet /mobile_push_credentialsList mobile push credentials
QueueCommandsAPIListQueueCallsGet /queues/{queue_name}/callsRetrieve calls from a queue
QueueCommandsAPIRetrieveCallFromQueueGet /queues/{queue_name}/calls/{call_control_id}Retrieve a call from a queue
QueueCommandsAPIRetrieveCallQueueGet /queues/{queue_name}Retrieve a call queue
RCSMessagingAPIMesssagesRcsPostPost /messsages/rcsSend an RCS message
RegionsAPIListRegionsGet /regionsList all Regions
RegulatoryRequirementsAPIListRegulatoryRequirementsGet /regulatory_requirementsRetrieve regulatory requirements
RegulatoryRequirementsAPIListRegulatoryRequirementsPhoneNumbersGet /phone_numbers_regulatory_requirementsRetrieve regulatory requirements for a list of phone numbers
ReportingAPICreateWdrReportPost /wireless/detail_records_reportsCreate a Wireless Detail Records (WDRs) Report
ReportingAPIDeleteWdrReportDelete /wireless/detail_records_reports/{id}Delete a Wireless Detail Record (WDR) Report
ReportingAPIGetWdrReportGet /wireless/detail_records_reports/{id}Get a Wireless Detail Record (WDR) Report
ReportingAPIGetWdrReportsGet /wireless/detail_records_reportsGet all Wireless Detail Records (WDRs) Reports
ReportsAPICreateBillingGroupReportPost /ledger_billing_group_reportsCreate a ledger billing group report
ReportsAPIGetBillingGroupReportGet /ledger_billing_group_reports/{id}Get a ledger billing group report
RequirementGroupsAPICreateRequirementGroupPost /requirement_groupsCreate a new requirement group
RequirementGroupsAPIDeleteRequirementGroupDelete /requirement_groups/{id}Delete a requirement group by ID
RequirementGroupsAPIGetRequirementGroupGet /requirement_groups/{id}Get a single requirement group by ID
RequirementGroupsAPIGetRequirementGroupsGet /requirement_groupsList requirement groups
RequirementGroupsAPISubmitRequirementGroupPost /requirement_groups/{id}/submit_for_approvalSubmit a Requirement Group for Approval
RequirementGroupsAPIUpdateNumberOrderPhoneNumberRequirementGroupPost /number_order_phone_numbers/{id}/requirement_groupUpdate requirement group for a phone number order
RequirementGroupsAPIUpdateRequirementGroupPatch /requirement_groups/{id}Update requirement values in requirement group
RequirementGroupsAPIUpdateSubNumberOrderRequirementGroupPost /sub_number_orders/{id}/requirement_groupUpdate requirement group for a sub number order
RequirementTypesAPIListRequirementTypesGet /requirement_typesList all requirement types
RequirementTypesAPIRetrieveRequirementTypeGet /requirement_types/{id}Retrieve a requirement type
RequirementsAPIListRequirementsGet /requirementsList all requirements
RequirementsAPIRetrieveDocumentRequirementsGet /requirements/{id}Retrieve a document requirement
RoomCompositionsAPICreateRoomCompositionPost /room_compositionsCreate a room composition.
RoomCompositionsAPIDeleteRoomCompositionDelete /room_compositions/{room_composition_id}Delete a room composition.
RoomCompositionsAPIListRoomCompositionsGet /room_compositionsView a list of room compositions.
RoomCompositionsAPIViewRoomCompositionGet /room_compositions/{room_composition_id}View a room composition.
RoomParticipantsAPIListRoomParticipantsGet /room_participantsView a list of room participants.
RoomParticipantsAPIViewRoomParticipantGet /room_participants/{room_participant_id}View a room participant.
RoomRecordingsAPIDeleteRoomRecordingDelete /room_recordings/{room_recording_id}Delete a room recording.
RoomRecordingsAPIDeleteRoomRecordingsDelete /room_recordingsDelete several room recordings in a bulk.
RoomRecordingsAPIListRoomRecordingsGet /room_recordingsView a list of room recordings.
RoomRecordingsAPIViewRoomRecordingGet /room_recordings/{room_recording_id}View a room recording.
RoomSessionsAPIEndSessionPost /room_sessions/{room_session_id}/actions/endEnd a room session.
RoomSessionsAPIKickParticipantInSessionPost /room_sessions/{room_session_id}/actions/kickKick participants from a room session.
RoomSessionsAPIListRoomSessionsGet /room_sessionsView a list of room sessions.
RoomSessionsAPIMuteParticipantInSessionPost /room_sessions/{room_session_id}/actions/muteMute participants in room session.
RoomSessionsAPIRetrieveListRoomParticipantsGet /room_sessions/{room_session_id}/participantsView a list of room participants.
RoomSessionsAPIUnmuteParticipantInSessionPost /room_sessions/{room_session_id}/actions/unmuteUnmute participants in room session.
RoomSessionsAPIViewRoomSessionGet /room_sessions/{room_session_id}View a room session.
RoomsAPICreateRoomPost /roomsCreate a room.
RoomsAPIDeleteRoomDelete /rooms/{room_id}Delete a room.
RoomsAPIListRoomsGet /roomsView a list of rooms.
RoomsAPIRetrieveListRoomSessionsGet /rooms/{room_id}/sessionsView a list of room sessions.
RoomsAPIUpdateRoomPatch /rooms/{room_id}Update a room.
RoomsAPIViewRoomGet /rooms/{room_id}View a room.
RoomsClientTokensAPICreateRoomClientTokenPost /rooms/{room_id}/actions/generate_join_client_tokenCreate Client Token to join a room.
RoomsClientTokensAPIRefreshRoomClientTokenPost /rooms/{room_id}/actions/refresh_client_tokenRefresh Client Token to join a room.
SIMCardActionsAPIGetBulkSimCardActionGet /bulk_sim_card_actions/{id}Get bulk SIM card action details
SIMCardActionsAPIGetSimCardActionGet /sim_card_actions/{id}Get SIM card action details
SIMCardActionsAPIListBulkSimCardActionsGet /bulk_sim_card_actionsList bulk SIM card actions
SIMCardActionsAPIListSimCardActionsGet /sim_card_actionsList SIM card actions
SIMCardGroupActionsAPIGetSimCardGroupActionGet /sim_card_group_actions/{id}Get SIM card group action details
SIMCardGroupActionsAPIGetSimCardGroupActionsGet /sim_card_group_actionsList SIM card group actions
SIMCardGroupsAPICreateSimCardGroupPost /sim_card_groupsCreate a SIM card group
SIMCardGroupsAPIDeleteSimCardGroupDelete /sim_card_groups/{id}Delete a SIM card group
SIMCardGroupsAPIGetAllSimCardGroupsGet /sim_card_groupsGet all SIM card groups
SIMCardGroupsAPIGetSimCardGroupGet /sim_card_groups/{id}Get SIM card group
SIMCardGroupsAPIRemoveSimCardGroupPrivateWirelessGatewayPost /sim_card_groups/{id}/actions/remove_private_wireless_gatewayRequest Private Wireless Gateway removal from SIM card group
SIMCardGroupsAPISetPrivateWirelessGatewayForSimCardGroupPost /sim_card_groups/{id}/actions/set_private_wireless_gatewayRequest Private Wireless Gateway assignment for SIM card group
SIMCardGroupsAPIUpdateSimCardGroupPatch /sim_card_groups/{id}Update a SIM card group
SIMCardOrdersAPICreateSimCardOrderPost /sim_card_ordersCreate a SIM card order
SIMCardOrdersAPIGetSimCardOrderGet /sim_card_orders/{id}Get a single SIM card order
SIMCardOrdersAPIGetSimCardOrdersGet /sim_card_ordersGet all SIM card orders
SIMCardOrdersAPIPreviewSimCardOrdersPost /sim_card_order_previewPreview SIM card orders
SIMCardsAPIDeleteSimCardDelete /sim_cards/{id}Deletes a SIM card
SIMCardsAPIDeleteSimCardDataUsageNotificationsDelete /sim_card_data_usage_notifications/{id}Delete SIM card data usage notifications
SIMCardsAPIDisableSimCardPost /sim_cards/{id}/actions/disableRequest a SIM card disable
SIMCardsAPIEnableSimCardPost /sim_cards/{id}/actions/enableRequest a SIM card enable
SIMCardsAPIGetSimCardGet /sim_cards/{id}Get SIM card
SIMCardsAPIGetSimCardActivationCodeGet /sim_cards/{id}/activation_codeGet activation code for an eSIM
SIMCardsAPIGetSimCardDataUsageNotificationGet /sim_card_data_usage_notifications/{id}Get a single SIM card data usage notification
SIMCardsAPIGetSimCardDeviceDetailsGet /sim_cards/{id}/device_detailsGet SIM card device details
SIMCardsAPIGetSimCardPublicIpGet /sim_cards/{id}/public_ipGet SIM card public IP definition
SIMCardsAPIGetSimCardsGet /sim_cardsGet all SIM cards
SIMCardsAPIGetWirelessConnectivityLogsGet /sim_cards/{id}/wireless_connectivity_logsList wireless connectivity logs
SIMCardsAPIListDataUsageNotificationsGet /sim_card_data_usage_notificationsList SIM card data usage notifications
SIMCardsAPIPatchSimCardDataUsageNotificationPatch /sim_card_data_usage_notifications/{id}Updates information for a SIM Card Data Usage Notification
SIMCardsAPIPostSimCardDataUsageNotificationPost /sim_card_data_usage_notificationsCreate a new SIM card data usage notification
SIMCardsAPIPurchaseESimPost /actions/purchase/esimsPurchase eSIMs
SIMCardsAPIRegisterSimCardsPost /actions/register/sim_cardsRegister SIM cards
SIMCardsAPIRemoveSimCardPublicIpPost /sim_cards/{id}/actions/remove_public_ipRequest removing a SIM card public IP
SIMCardsAPISetPublicIPsBulkPost /sim_cards/actions/bulk_set_public_ipsRequest bulk setting SIM card public IPs.
SIMCardsAPISetSimCardPublicIpPost /sim_cards/{id}/actions/set_public_ipRequest setting a SIM card public IP
SIMCardsAPISetSimCardStandbyPost /sim_cards/{id}/actions/set_standbyRequest setting a SIM card to standby
SIMCardsAPIUpdateSimCardPatch /sim_cards/{id}Update a SIM card
SIMCardsAPIValidateRegistrationCodesPost /sim_cards/actions/validate_registration_codesValidate SIM cards registration codes
SIPRECConnectorsAPICreateSiprecConnectorPost /siprec_connectorsCreate a SIPREC connector
SIPRECConnectorsAPIDeleteSiprecConnectorDelete /siprec_connectors/{connector_name}Delete a SIPREC connector
SIPRECConnectorsAPIGetSiprecConnectorGet /siprec_connectors/{connector_name}Retrieve a SIPREC connector
SIPRECConnectorsAPIUpdateSiprecConnectorPut /siprec_connectors/{connector_name}Update a SIPREC connector
SharedCampaignsAPIGetPartnerCampaignSharingStatusGet /partnerCampaign/{campaignId}/sharingGet Sharing Status
SharedCampaignsAPIGetPartnerCampaignsSharedByUserGet /partnerCampaign/sharedByMeGet Partner Campaigns Shared By User
SharedCampaignsAPIGetSharedCampaignGet /partner_campaigns/{campaignId}Get Single Shared Campaign
SharedCampaignsAPIGetSharedCampaignsGet /partner_campaignsList Shared Campaigns
SharedCampaignsAPIUpdateSharedCampaignPatch /partner_campaigns/{campaignId}Update Single Shared Campaign
ShortCodesAPIListShortCodesGet /short_codesList short codes
ShortCodesAPIRetrieveShortCodeGet /short_codes/{id}Retrieve a short code
ShortCodesAPIUpdateShortCodePatch /short_codes/{id}Update short code
TeXMLApplicationsAPICreateTexmlApplicationPost /texml_applicationsCreates a TeXML Application
TeXMLApplicationsAPIDeleteTexmlApplicationDelete /texml_applications/{id}Deletes a TeXML Application
TeXMLApplicationsAPIFindTexmlApplicationsGet /texml_applicationsList all TeXML Applications
TeXMLApplicationsAPIGetTexmlApplicationGet /texml_applications/{id}Retrieve a TeXML Application
TeXMLApplicationsAPIUpdateTexmlApplicationPatch /texml_applications/{id}Update a TeXML Application
TeXMLRESTCommandsAPICreateTexmlSecretPost /texml/secretsCreate a TeXML secret
TeXMLRESTCommandsAPIDeleteTeXMLCallRecordingDelete /texml/Accounts/{account_sid}/Recordings/{recording_sid}.jsonDelete recording resource
TeXMLRESTCommandsAPIDeleteTeXMLRecordingTranscriptionDelete /texml/Accounts/{account_sid}/Transcriptions/{recording_transcription_sid}.jsonDelete a recording transcription
TeXMLRESTCommandsAPIDeleteTexmlConferenceParticipantDelete /texml/Accounts/{account_sid}/Conferences/{conference_sid}/Participants/{call_sid}Delete a conference participant
TeXMLRESTCommandsAPIDeprecatedInitiateTexmlCallPost /texml/calls/{application_id}(Deprecated) Initiate an outbound call
TeXMLRESTCommandsAPIDeprecatedUpdateTexmlCallPost /texml/calls/{call_sid}/update(Deprecated) Update call
TeXMLRESTCommandsAPIDialTexmlConferenceParticipantPost /texml/Accounts/{account_sid}/Conferences/{conference_sid}/ParticipantsDial a new conference participant
TeXMLRESTCommandsAPIFetchTeXMLCallRecordingsGet /texml/Accounts/{account_sid}/Calls/{call_sid}/Recordings.jsonFetch recordings for a call
TeXMLRESTCommandsAPIFetchTeXMLConferenceRecordingsGet /texml/Accounts/{account_sid}/Conferences/{conference_sid}/Recordings.jsonFetch recordings for a conference
TeXMLRESTCommandsAPIGetTeXMLCallRecordingGet /texml/Accounts/{account_sid}/Recordings/{recording_sid}.jsonFetch recording resource
TeXMLRESTCommandsAPIGetTeXMLCallRecordingsGet /texml/Accounts/{account_sid}/Recordings.jsonFetch multiple recording resources
TeXMLRESTCommandsAPIGetTeXMLRecordingTranscriptionGet /texml/Accounts/{account_sid}/Transcriptions/{recording_transcription_sid}.jsonFetch a recording transcription resource
TeXMLRESTCommandsAPIGetTeXMLRecordingTranscriptionsGet /texml/Accounts/{account_sid}/Transcriptions.jsonList recording transcriptions
TeXMLRESTCommandsAPIGetTexmlCallGet /texml/Accounts/{account_sid}/Calls/{call_sid}Fetch a call
TeXMLRESTCommandsAPIGetTexmlCallsGet /texml/Accounts/{account_sid}/CallsFetch multiple call resources
TeXMLRESTCommandsAPIGetTexmlConferenceGet /texml/Accounts/{account_sid}/Conferences/{conference_sid}Fetch a conference resource
TeXMLRESTCommandsAPIGetTexmlConferenceParticipantGet /texml/Accounts/{account_sid}/Conferences/{conference_sid}/Participants/{call_sid}Get conference participant resource
TeXMLRESTCommandsAPIGetTexmlConferenceParticipantsGet /texml/Accounts/{account_sid}/Conferences/{conference_sid}/ParticipantsList conference participants
TeXMLRESTCommandsAPIGetTexmlConferenceRecordingsGet /texml/Accounts/{account_sid}/Conferences/{conference_sid}/RecordingsList conference recordings
TeXMLRESTCommandsAPIGetTexmlConferencesGet /texml/Accounts/{account_sid}/ConferencesList conference resources
TeXMLRESTCommandsAPIInitiateTexmlCallPost /texml/Accounts/{account_sid}/CallsInitiate an outbound call
TeXMLRESTCommandsAPIStartTeXMLCallRecordingPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Recordings.jsonRequest recording for a call
TeXMLRESTCommandsAPIStartTeXMLCallStreamingPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Streams.jsonStart streaming media from a call.
TeXMLRESTCommandsAPIStartTeXMLSiprecSessionPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Siprec.jsonRequest siprec session for a call
TeXMLRESTCommandsAPIUpdateTeXMLCallRecordingPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Recordings/{recording_sid}.jsonUpdate recording on a call
TeXMLRESTCommandsAPIUpdateTeXMLCallStreamingPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Streams/{streaming_sid}.jsonUpdate streaming on a call
TeXMLRESTCommandsAPIUpdateTeXMLSiprecSessionPost /texml/Accounts/{account_sid}/Calls/{call_sid}/Siprec/{siprec_sid}.jsonUpdates siprec session for a call
TeXMLRESTCommandsAPIUpdateTexmlCallPost /texml/Accounts/{account_sid}/Calls/{call_sid}Update call
TeXMLRESTCommandsAPIUpdateTexmlConferencePost /texml/Accounts/{account_sid}/Conferences/{conference_sid}Update a conference resource
TeXMLRESTCommandsAPIUpdateTexmlConferenceParticipantPost /texml/Accounts/{account_sid}/Conferences/{conference_sid}/Participants/{call_sid}Update a conference participant
TextToSpeechCommandsAPIGenerateTextToSpeechPost /text-to-speech/speechGenerate speech from text
TextToSpeechCommandsAPIListTextToSpeechVoicesGet /text-to-speech/voicesList available text to speech voices
UsageReportsBETAAPIGetUsageReportsGet /usage_reportsGet Telnyx product usage data (BETA)
UsageReportsBETAAPIListUsageReportsOptionsGet /usage_reports/optionsGet Usage Reports query options (BETA)
UserAddressesAPICreateUserAddressPost /user_addressesCreates a user address
UserAddressesAPIFindUserAddressGet /user_addressesList all user addresses
UserAddressesAPIGetUserAddressGet /user_addresses/{id}Retrieve a user address
UserBundlesAPICreateUserBundlesBulkPost /bundle_pricing/user_bundles/bulkCreate User Bundles
UserBundlesAPIDeactivateUserBundleDelete /bundle_pricing/user_bundles/{user_bundle_id}Deactivate User Bundle
UserBundlesAPIGetUnusedUserBundlesGet /bundle_pricing/user_bundles/unusedGet Unused User Bundles
UserBundlesAPIGetUserBundleByIdGet /bundle_pricing/user_bundles/{user_bundle_id}Get User Bundle by Id
UserBundlesAPIGetUserBundleResourcesGet /bundle_pricing/user_bundles/{user_bundle_id}/resourcesGet User Bundle Resources
UserBundlesAPIGetUserBundlesGet /bundle_pricing/user_bundlesGet User Bundles
UserTagsAPIGetUserTagsGet /user_tagsList User Tags
VerifiedNumbersAPICreateVerifiedNumberPost /verified_numbersRequest phone number verification
VerifiedNumbersAPIDeleteVerifiedNumberDelete /verified_numbers/{phone_number}Delete a verified number
VerifiedNumbersAPIGetVerifiedNumberGet /verified_numbers/{phone_number}Retrieve a verified number
VerifiedNumbersAPIListVerifiedNumbersGet /verified_numbersList all Verified Numbers
VerifiedNumbersAPIVerifyVerificationCodePost /verified_numbers/{phone_number}/actions/verifySubmit verification code
VerifyAPICreateFlashcallVerificationPost /verifications/flashcallTrigger Flash call verification
VerifyAPICreateVerificationCallPost /verifications/callTrigger Call verification
VerifyAPICreateVerificationSmsPost /verifications/smsTrigger SMS verification
VerifyAPICreateVerifyProfilePost /verify_profilesCreate a Verify profile
VerifyAPIDeleteProfileDelete /verify_profiles/{verify_profile_id}Delete Verify profile
VerifyAPIGetVerifyProfileGet /verify_profiles/{verify_profile_id}Retrieve Verify profile
VerifyAPIListProfileMessageTemplatesGet /verify_profiles/templatesRetrieve Verify profile message templates
VerifyAPIListProfilesGet /verify_profilesList all Verify profiles
VerifyAPIListVerificationsGet /verifications/by_phone_number/{phone_number}List verifications by phone number
VerifyAPIRetrieveVerificationGet /verifications/{verification_id}Retrieve verification
VerifyAPIUpdateVerifyProfilePatch /verify_profiles/{verify_profile_id}Update Verify profile
VerifyAPIVerifyVerificationCodeByIdPost /verifications/{verification_id}/actions/verifyVerify verification code by ID
VerifyAPIVerifyVerificationCodeByPhoneNumberPost /verifications/by_phone_number/{phone_number}/actions/verifyVerify verification code by phone number
VirtualCrossConnectsAPICreateVirtualCrossConnectPost /virtual_cross_connectsCreate a Virtual Cross Connect
VirtualCrossConnectsAPIDeleteVirtualCrossConnectDelete /virtual_cross_connects/{id}Delete a Virtual Cross Connect
VirtualCrossConnectsAPIGetVirtualCrossConnectGet /virtual_cross_connects/{id}Retrieve a Virtual Cross Connect
VirtualCrossConnectsAPIListVirtualCrossConnectCoverageGet /virtual_cross_connects_coverageList Virtual Cross Connect Cloud Coverage
VirtualCrossConnectsAPIListVirtualCrossConnectsGet /virtual_cross_connectsList all Virtual Cross Connects
VirtualCrossConnectsAPIUpdateVirtualCrossConnectPatch /virtual_cross_connects/{id}Update the Virtual Cross Connect
VoiceChannelsAPIGetAllNumbersChannelZonesGet /listList All Numbers using Channel Billing
VoiceChannelsAPIGetChannelZonesGet /channel_zonesList your voice channels for non-US zones
VoiceChannelsAPIGetNumbersChannelZonesGet /list/{channel_zone_id}List Numbers using Channel Billing for a specific Zone
VoiceChannelsAPIListInboundChannelsGet /inbound_channelsList your voice channels for US Zone
VoiceChannelsAPIPatchChannelZonePut /channel_zones/{channel_zone_id}Update voice channels for non-US Zones
VoiceChannelsAPIUpdateOutboundChannelsPatch /inbound_channelsUpdate voice channels for US Zone
VoicemailAPICreateVoicemailPost /phone_numbers/{phone_number_id}/voicemailCreate voicemail
VoicemailAPIGetVoicemailGet /phone_numbers/{phone_number_id}/voicemailGet voicemail
VoicemailAPIUpdateVoicemailPatch /phone_numbers/{phone_number_id}/voicemailUpdate voicemail
WDRDetailReportsAPIGetPaginatedWdrsGet /reports/wdrsFetches all Wdr records
WebhooksAPIGetWebhookDeliveriesGet /webhook_deliveriesList webhook deliveries
WebhooksAPIGetWebhookDeliveryGet /webhook_deliveries/{id}Find webhook_delivery details by ID
WireGuardInterfacesAPICreateWireguardInterfacePost /wireguard_interfacesCreate a WireGuard Interface
WireGuardInterfacesAPICreateWireguardPeerPost /wireguard_peersCreate a WireGuard Peer
WireGuardInterfacesAPIDeleteWireguardInterfaceDelete /wireguard_interfaces/{id}Delete a WireGuard Interface
WireGuardInterfacesAPIDeleteWireguardPeerDelete /wireguard_peers/{id}Delete the WireGuard Peer
WireGuardInterfacesAPIGetWireguardInterfaceGet /wireguard_interfaces/{id}Retrieve a WireGuard Interfaces
WireGuardInterfacesAPIGetWireguardPeerGet /wireguard_peers/{id}Retrieve the WireGuard Peer
WireGuardInterfacesAPIGetWireguardPeerConfigGet /wireguard_peers/{id}/configRetrieve Wireguard config template for Peer
WireGuardInterfacesAPIListWireguardInterfacesGet /wireguard_interfacesList all WireGuard Interfaces
WireGuardInterfacesAPIListWireguardPeersGet /wireguard_peersList all WireGuard Peers
WireGuardInterfacesAPIUpdateWireguardPeerPatch /wireguard_peers/{id}Update the WireGuard Peer
WirelessRegionsAPIWirelessRegionsGetAllGet /wireless/regionsGet all wireless regions

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

bearerAuth

  • Type: HTTP Bearer token authentication

Example

auth := context.WithValue(context.Background(), telnyx.ContextAccessToken, "BEARER_TOKEN_STRING")
r, err := client.Service.Operation(auth, args)

Documentation for Utility Methods

Due to the fact that model structure members are all pointers, this package contains a number of utility functions to easily obtain pointers to values of basic types. Each of these functions takes a value of the given basic type and returns a pointer to it:

  • PtrBool
  • PtrInt
  • PtrInt32
  • PtrInt64
  • PtrFloat
  • PtrFloat32
  • PtrFloat64
  • PtrString
  • PtrTime

Author

support@telnyx.com

package main

import (
"bytes"
"context"
crand "crypto/rand"
"encoding/json"
"fmt"
"io"
"log"
"math/rand"
"net/http"
"os"
"time"

"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/service/s3"
)

func main() {
ctx := context.Background()
randSeq := rand.Intn(1_000_000)

telnyxAPIKey := os.Getenv("TELNYX_API_KEY")
if telnyxAPIKey == "" {
log.Fatal("TELNYX_API_KEY environment variable not set")
}

region := "us-central-1"
endpoint := fmt.Sprintf("https://%s.telnyxcloudstorage.com", region)

// 1. Initializing the AWS client with specific options
cfg, err := config.LoadDefaultConfig(ctx,
config.WithRegion(region),
config.WithCredentialsProvider(aws.CredentialsProviderFunc(
func(context.Context) (aws.Credentials, error) {
return aws.Credentials{
AccessKeyID: telnyxAPIKey, // Use your Telnyx API key
SecretAccessKey: telnyxAPIKey, // Optional, can be left blank
}, nil
})),
config.WithS3UseARNRegion(true),
config.WithS3DisableExpressAuth(true),
config.WithS3DisableMultiRegionAccessPoints(true),
)
if err != nil {
log.Fatalf("s3 configuration error: %v", err)
}
cfg.BaseEndpoint = aws.String(endpoint)

s3Client := s3.NewFromConfig(cfg)
log.Printf("Created S3 client for region (%v) and endpoint (%v)", cfg.Region, *cfg.BaseEndpoint)

// test-bucket-us-central-1.23-34.randomNumber
ts := time.Now()
bucketName := fmt.Sprintf("%v-%s.%v-%v.%v", "test-bucket", region, ts.Hour(), ts.Minute(), randSeq)
log.Printf("Generated bucket name: %q", bucketName)

// Create two objects in memory
objs := make(map[string]*bytes.Reader)
noFiles := 2
for i := 0; i < noFiles; i++ {
ct := make([]byte, 1024*32)
// fill with random data
if _, err := crand.Read(ct); err != nil {
log.Fatalf("failed to read random data: %v", err)
}

objName := fmt.Sprintf("%v.txt", i)
objs[objName] = bytes.NewReader(ct)
}

// 2. Create a bucket
_, err = s3Client.CreateBucket(ctx, &s3.CreateBucketInput{
Bucket: aws.String(bucketName),
})
if err != nil {
log.Fatalf("unable to create bucket: %v", err)
}
log.Printf("Created bucket: %v", bucketName)

// 3. Upload the two objects into the newly created bucket
for objName, body := range objs {
if _, err = s3Client.PutObject(ctx, &s3.PutObjectInput{
Bucket: aws.String(bucketName),
Key: aws.String(objName),
Body: body,
}); err != nil {
log.Fatalf("unable to upload file (%v): %v", objName, err)
}

log.Printf("Uploaded file (%v) to bucket: %v", objName, bucketName)
}

// 4. List objects in the bucket
listObj, err := s3Client.ListObjectsV2(ctx, &s3.ListObjectsV2Input{
Bucket: aws.String(bucketName),
})
if err != nil {
log.Fatalf("unable to list objects: %v", err)
}

for _, item := range listObj.Contents {
log.Printf("Listed object: %v", *item.Key)
}

// 5. Download the object first
out, err := s3Client.GetObject(ctx, &s3.GetObjectInput{
Bucket: aws.String(bucketName),
Key: aws.String("1.txt"),
})
if err != nil {
log.Fatalf("unable to download object: %v", err)
}
defer out.Body.Close()

dl, err := io.ReadAll(out.Body)
if err != nil {
log.Fatalf("unable to read object data: %v", err)
}

log.Printf("downloaded file size: %d", len(dl))

// 6. Create a presigned URL for the first file
url := fmt.Sprintf("https://api.telnyx.com/v2/storage/buckets/%v/%v/presigned_url", bucketName, "1.txt")

req, err := http.NewRequest(http.MethodPost, url, bytes.NewReader([]byte(`{"TTL": 30}`)))
if err != nil {
log.Fatalf("unable to create presigned request: %v", err)
}
req.Header.Set("Authorization", "Bearer "+telnyxAPIKey)

resp, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatalf("unable to send presigned request: %v", err)
}
defer resp.Body.Close()

if resp.StatusCode != http.StatusOK {
b, _ := io.ReadAll(resp.Body)
log.Fatalf("unexpected status code: %v | response: %s", resp.StatusCode, b)
}

type presignedURL struct {
Data struct {
Token string `json:"token"`
ExpiresAt time.Time `json:"expires_at"`
PresignedURL string `json:"presigned_url"`
} `json:"data"`
}

var purl presignedURL
if err := json.NewDecoder(resp.Body).Decode(&purl); err != nil {
log.Fatalf("unable to decode presigned URL: %v", err)
}

log.Printf("Generated presigned URL: %v", purl.Data.PresignedURL)

// 7. Download the file again using the presigned URL
res, err := http.Get(purl.Data.PresignedURL)
if err != nil {
log.Fatalf("unable to download presigned URL: %v", err)
}
defer res.Body.Close()

log.Printf("Downloaded presigned URL status code: %v", res.StatusCode)
}

Run the program.

TELNYX_API_KEY=_YOUR_API_KEY go run main.go

2024/08/15 13:14:29 Created S3 client for region (us-central-1) and endpoint (https://us-central-1.telnyxcloudstorage.com)
2024/08/15 13:14:29 Generated bucket name: "test-bucket-us-central-1.13-14.536341"
2024/08/15 13:14:30 Created bucket: test-bucket-us-central-1.13-14.536341
2024/08/15 13:14:31 Uploaded file (0.txt) to bucket: test-bucket-us-central-1.13-14.536341
2024/08/15 13:14:31 Uploaded file (1.txt) to bucket: test-bucket-us-central-1.13-14.536341
2024/08/15 13:14:31 Listed object: 0.txt
2024/08/15 13:14:31 Listed object: 1.txt
2024/08/15 13:14:32 downloaded file size: 32768
2024/08/15 13:14:32 Generated presigned URL: https://us-central-1.telnyxcloudstorage.com/test-bucket-us-central-1.13-14.536341/1.txt?X-AMZ-Security-Token=sometoken
2024/08/15 13:14:33 Downloaded presigned URL status code: 200