telnyx-fax-java
npx skills add https://github.com/team-telnyx/telnyx-ext-agent-skills --skill telnyx-fax-java
Agent 安装分布
Skill 文档
Telnyx Fax – Java
Installation
// See https://github.com/team-telnyx/telnyx-java for Maven/Gradle setup
Setup
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.
List all Fax Applications
This endpoint returns a list of your Fax Applications inside the ‘data’ attribute of the response.
GET /fax_applications
import com.telnyx.sdk.models.faxapplications.FaxApplicationListPage;
import com.telnyx.sdk.models.faxapplications.FaxApplicationListParams;
FaxApplicationListPage page = client.faxApplications().list();
Creates a Fax Application
Creates a new Fax Application based on the parameters sent in the request.
POST /fax_applications â Required: application_name, webhook_event_url
Optional: active (boolean), anchorsite_override (enum), inbound (object), outbound (object), tags (array[string]), webhook_event_failover_url (uri), webhook_timeout_secs ([‘integer’, ‘null’])
import com.telnyx.sdk.models.faxapplications.FaxApplicationCreateParams;
import com.telnyx.sdk.models.faxapplications.FaxApplicationCreateResponse;
FaxApplicationCreateParams params = FaxApplicationCreateParams.builder()
.applicationName("fax-router")
.webhookEventUrl("https://example.com")
.build();
FaxApplicationCreateResponse faxApplication = client.faxApplications().create(params);
Retrieve a Fax Application
Return the details of an existing Fax Application inside the ‘data’ attribute of the response.
GET /fax_applications/{id}
import com.telnyx.sdk.models.faxapplications.FaxApplicationRetrieveParams;
import com.telnyx.sdk.models.faxapplications.FaxApplicationRetrieveResponse;
FaxApplicationRetrieveResponse faxApplication = client.faxApplications().retrieve("1293384261075731499");
Update a Fax Application
Updates settings of an existing Fax Application based on the parameters of the request.
PATCH /fax_applications/{id} â Required: application_name, webhook_event_url
Optional: active (boolean), anchorsite_override (enum), fax_email_recipient ([‘string’, ‘null’]), inbound (object), outbound (object), tags (array[string]), webhook_event_failover_url (uri), webhook_timeout_secs ([‘integer’, ‘null’])
import com.telnyx.sdk.models.faxapplications.FaxApplicationUpdateParams;
import com.telnyx.sdk.models.faxapplications.FaxApplicationUpdateResponse;
FaxApplicationUpdateParams params = FaxApplicationUpdateParams.builder()
.id("1293384261075731499")
.applicationName("fax-router")
.webhookEventUrl("https://example.com")
.build();
FaxApplicationUpdateResponse faxApplication = client.faxApplications().update(params);
Deletes a Fax Application
Permanently deletes a Fax Application.
DELETE /fax_applications/{id}
import com.telnyx.sdk.models.faxapplications.FaxApplicationDeleteParams;
import com.telnyx.sdk.models.faxapplications.FaxApplicationDeleteResponse;
FaxApplicationDeleteResponse faxApplication = client.faxApplications().delete("1293384261075731499");
View a list of faxes
GET /faxes
import com.telnyx.sdk.models.faxes.FaxListPage;
import com.telnyx.sdk.models.faxes.FaxListParams;
FaxListPage page = client.faxes().list();
Send a fax
Send a fax.
POST /faxes â Required: connection_id, from, to
Optional: black_threshold (integer), client_state (string), from_display_name (string), media_name (string), media_url (string), monochrome (boolean), preview_format (enum), quality (enum), store_media (boolean), store_preview (boolean), t38_enabled (boolean), webhook_url (string)
import com.telnyx.sdk.models.faxes.FaxCreateParams;
import com.telnyx.sdk.models.faxes.FaxCreateResponse;
FaxCreateParams params = FaxCreateParams.builder()
.connectionId("234423")
.from("+13125790015")
.to("+13127367276")
.build();
FaxCreateResponse fax = client.faxes().create(params);
View a fax
GET /faxes/{id}
import com.telnyx.sdk.models.faxes.FaxRetrieveParams;
import com.telnyx.sdk.models.faxes.FaxRetrieveResponse;
FaxRetrieveResponse fax = client.faxes().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Delete a fax
DELETE /faxes/{id}
import com.telnyx.sdk.models.faxes.FaxDeleteParams;
client.faxes().delete("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Cancel a fax
Cancel the outbound fax that is in one of the following states: queued, media.processed, originated or sending
POST /faxes/{id}/actions/cancel
import com.telnyx.sdk.models.faxes.actions.ActionCancelParams;
import com.telnyx.sdk.models.faxes.actions.ActionCancelResponse;
ActionCancelResponse response = client.faxes().actions().cancel("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Refresh a fax
Refreshes the inbound fax’s media_url when it has expired
POST /faxes/{id}/actions/refresh
import com.telnyx.sdk.models.faxes.actions.ActionRefreshParams;
import com.telnyx.sdk.models.faxes.actions.ActionRefreshResponse;
ActionRefreshResponse response = client.faxes().actions().refresh("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Webhooks
The following webhook events are sent to your configured webhook URL.
All webhooks include telnyx-timestamp and telnyx-signature-ed25519 headers for verification (Standard Webhooks compatible).
| Event | Description |
|---|---|
fax.delivered |
Fax Delivered |
fax.failed |
Fax Failed |
fax.media.processed |
Fax Media Processed |
fax.queued |
Fax Queued |
fax.sending.started |
Fax Sending Started |
Webhook payload fields
fax.delivered
| Field | Type | Description |
|---|---|---|
data.record_type |
enum | Identifies the type of the resource. |
data.id |
uuid | Identifies the type of resource. |
data.occurred_at |
date-time | ISO 8601 datetime of when the event occurred. |
data.event_type |
enum | The type of event being delivered. |
data.payload.call_duration_secs |
integer | The duration of the call in seconds. |
data.payload.connection_id |
string | The ID of the connection used to send the fax. |
data.payload.direction |
enum | The direction of the fax. |
data.payload.fax_id |
uuid | Identifies the fax. |
data.payload.original_media_url |
string | The original URL to the PDF used for the fax’s media. |
data.payload.media_name |
string | The media_name used for the fax’s media. |
data.payload.to |
string | The phone number, in E.164 format, the fax will be sent to or SIP URI |
data.payload.from |
string | The phone number, in E.164 format, the fax will be sent from. |
data.payload.user_id |
uuid | Identifier of the user to whom the fax belongs |
data.payload.page_count |
integer | Number of transferred pages |
data.payload.status |
enum | The status of the fax. |
data.payload.client_state |
string | State received from a command. |
meta.attempt |
integer | The delivery attempt number. |
meta.delivered_to |
uri | The URL the webhook was delivered to. |
fax.failed
| Field | Type | Description |
|---|---|---|
data.record_type |
enum | Identifies the type of the resource. |
data.id |
uuid | Identifies the type of resource. |
data.occurred_at |
date-time | ISO 8601 datetime of when the event occurred. |
data.event_type |
enum | The type of event being delivered. |
data.payload.connection_id |
string | The ID of the connection used to send the fax. |
data.payload.direction |
enum | The direction of the fax. |
data.payload.fax_id |
uuid | Identifies the fax. |
data.payload.original_media_url |
string | The original URL to the PDF used for the fax’s media. |
data.payload.media_name |
string | The media_name used for the fax’s media. |
data.payload.to |
string | The phone number, in E.164 format, the fax will be sent to or SIP URI |
data.payload.from |
string | The phone number, in E.164 format, the fax will be sent from. |
data.payload.user_id |
uuid | Identifier of the user to whom the fax belongs |
data.payload.failure_reason |
enum | Cause of the sending failure |
data.payload.status |
enum | The status of the fax. |
data.payload.client_state |
string | State received from a command. |
meta.attempt |
integer | The delivery attempt number. |
meta.delivered_to |
uri | The URL the webhook was delivered to. |
fax.media.processed
| Field | Type | Description |
|---|---|---|
data.record_type |
enum | Identifies the type of the resource. |
data.id |
uuid | Identifies the type of resource. |
data.occurred_at |
date-time | ISO 8601 datetime of when the event occurred. |
data.event_type |
enum | The type of event being delivered. |
data.payload.connection_id |
string | The ID of the connection used to send the fax. |
data.payload.direction |
enum | The direction of the fax. |
data.payload.fax_id |
uuid | Identifies the fax. |
data.payload.original_media_url |
string | The original URL to the PDF used for the fax’s media. |
data.payload.media_name |
string | The media_name used for the fax’s media. |
data.payload.to |
string | The phone number, in E.164 format, the fax will be sent to or SIP URI |
data.payload.from |
string | The phone number, in E.164 format, the fax will be sent from. |
data.payload.user_id |
uuid | Identifier of the user to whom the fax belongs |
data.payload.status |
enum | The status of the fax. |
data.payload.client_state |
string | State received from a command. |
meta.attempt |
integer | The delivery attempt number. |
meta.delivered_to |
uri | The URL the webhook was delivered to. |
fax.queued
| Field | Type | Description |
|---|---|---|
data.record_type |
enum | Identifies the type of the resource. |
data.id |
uuid | Identifies the type of resource. |
data.occurred_at |
date-time | ISO 8601 datetime of when the event occurred. |
data.event_type |
enum | The type of event being delivered. |
data.payload.connection_id |
string | The ID of the connection used to send the fax. |
data.payload.direction |
enum | The direction of the fax. |
data.payload.fax_id |
uuid | Identifies the fax. |
data.payload.original_media_url |
string | The original URL to the PDF used for the fax’s media. |
data.payload.media_name |
string | The media_name used for the fax’s media. |
data.payload.to |
string | The phone number, in E.164 format, the fax will be sent to or SIP URI |
data.payload.from |
string | The phone number, in E.164 format, the fax will be sent from. |
data.payload.user_id |
uuid | Identifier of the user to whom the fax belongs |
data.payload.status |
enum | The status of the fax. |
data.payload.client_state |
string | State received from a command. |
meta.attempt |
integer | The delivery attempt number. |
meta.delivered_to |
uri | The URL the webhook was delivered to. |
fax.sending.started
| Field | Type | Description |
|---|---|---|
data.record_type |
enum | Identifies the type of the resource. |
data.id |
uuid | Identifies the type of resource. |
data.occurred_at |
date-time | ISO 8601 datetime of when the event occurred. |
data.event_type |
enum | The type of event being delivered. |
data.payload.connection_id |
string | The ID of the connection used to send the fax. |
data.payload.direction |
enum | The direction of the fax. |
data.payload.fax_id |
uuid | Identifies the fax. |
data.payload.original_media_url |
string | The original URL to the PDF used for the fax’s media. |
data.payload.media_name |
string | The media_name used for the fax’s media. |
data.payload.to |
string | The phone number, in E.164 format, the fax will be sent to or SIP URI |
data.payload.from |
string | The phone number, in E.164 format, the fax will be sent from. |
data.payload.user_id |
uuid | Identifier of the user to whom the fax belongs |
data.payload.status |
enum | The status of the fax. |
data.payload.client_state |
string | State received from a command. |
meta.attempt |
integer | The delivery attempt number. |
meta.delivered_to |
uri | The URL the webhook was delivered to. |