telnyx-porting-out-java

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->

Telnyx Porting Out - Java

Telnyx 号码转出 - Java

Installation

安装

text
<!-- Maven -->
<dependency>
    <groupId>com.telnyx.sdk</groupId>
    <artifactId>telnyx</artifactId>
    <version>6.36.0</version>
</dependency>

// Gradle
implementation("com.telnyx.sdk:telnyx:6.36.0")
text
<!-- Maven -->
<dependency>
    <groupId>com.telnyx.sdk</groupId>
    <artifactId>telnyx</artifactId>
    <version>6.36.0</version>
</dependency>

// Gradle
implementation("com.telnyx.sdk:telnyx:6.36.0")

Setup

配置

java
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.
java
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;

TelnyxClient client = TelnyxOkHttpClient.fromEnv();
以下所有示例均假设
client
已经按照上述方式完成初始化。

Error Handling

错误处理

All API calls can fail with network errors, rate limits (429), validation errors (422), or authentication errors (401). Always handle errors in production code:
java
import com.telnyx.sdk.errors.TelnyxServiceException;

try {
    var result = client.messages().send(params);
} catch (TelnyxServiceException e) {
    System.err.println("API error " + e.statusCode() + ": " + e.getMessage());
    if (e.statusCode() == 422) {
        System.err.println("Validation error — check required fields and formats");
    } else if (e.statusCode() == 429) {
        // Rate limited — wait and retry with exponential backoff
        Thread.sleep(1000);
    }
}
Common error codes:
401
invalid API key,
403
insufficient permissions,
404
resource not found,
422
validation error (check field formats),
429
rate limited (retry with exponential backoff).
所有API调用都可能失败,原因包括网络错误、限流(429)、验证错误(422)或者认证错误(401)。在生产代码中请务必处理错误:
java
import com.telnyx.sdk.errors.TelnyxServiceException;

try {
    var result = client.messages().send(params);
} catch (TelnyxServiceException e) {
    System.err.println("API error " + e.statusCode() + ": " + e.getMessage());
    if (e.statusCode() == 422) {
        System.err.println("Validation error — check required fields and formats");
    } else if (e.statusCode() == 429) {
        // Rate limited — wait and retry with exponential backoff
        Thread.sleep(1000);
    }
}
常见错误码:
401
API密钥无效,
403
权限不足,
404
资源未找到,
422
验证错误(请检查字段格式),
429
请求被限流(请使用指数退避策略重试)。

Important Notes

重要说明

  • Pagination: List methods return a page. Use
    .autoPager()
    for automatic iteration:
    for (var item : page.autoPager()) { ... }
    . For manual control, use
    .hasNextPage()
    and
    .nextPage()
    .
  • 分页: 列表方法返回单页数据。如需自动遍历所有数据可使用
    .autoPager()
    for (var item : page.autoPager()) { ... }
    。如需手动控制分页,可使用
    .hasNextPage()
    .nextPage()
    方法。

List portout requests

列出转出请求

Returns the portout requests according to filters
GET /portouts
java
import com.telnyx.sdk.models.portouts.PortoutListPage;
import com.telnyx.sdk.models.portouts.PortoutListParams;

PortoutListPage page = client.portouts().list();
Returns:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)
根据筛选条件返回转出请求
GET /portouts
java
import com.telnyx.sdk.models.portouts.PortoutListPage;
import com.telnyx.sdk.models.portouts.PortoutListParams;

PortoutListPage page = client.portouts().list();
返回字段:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)

List all port-out events

列出所有转出事件

Returns a list of all port-out events.
GET /portouts/events
java
import com.telnyx.sdk.models.portouts.events.EventListPage;
import com.telnyx.sdk.models.portouts.events.EventListParams;

EventListPage page = client.portouts().events().list();
Returns:
available_notification_methods
(array[string]),
created_at
(date-time),
event_type
(enum: portout.status_changed, portout.foc_date_changed, portout.new_comment),
id
(uuid),
payload
(object),
payload_status
(enum: created, completed),
portout_id
(uuid),
record_type
(string),
updated_at
(date-time)
返回所有转出事件的列表
GET /portouts/events
java
import com.telnyx.sdk.models.portouts.events.EventListPage;
import com.telnyx.sdk.models.portouts.events.EventListParams;

EventListPage page = client.portouts().events().list();
返回字段:
available_notification_methods
(array[string]),
created_at
(date-time),
event_type
(enum: portout.status_changed, portout.foc_date_changed, portout.new_comment),
id
(uuid),
payload
(object),
payload_status
(enum: created, completed),
portout_id
(uuid),
record_type
(string),
updated_at
(date-time)

Show a port-out event

查看单个转出事件

Show a specific port-out event.
GET /portouts/events/{id}
java
import com.telnyx.sdk.models.portouts.events.EventRetrieveParams;
import com.telnyx.sdk.models.portouts.events.EventRetrieveResponse;

EventRetrieveResponse event = client.portouts().events().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
available_notification_methods
(array[string]),
created_at
(date-time),
event_type
(enum: portout.status_changed, portout.foc_date_changed, portout.new_comment),
id
(uuid),
payload
(object),
payload_status
(enum: created, completed),
portout_id
(uuid),
record_type
(string),
updated_at
(date-time)
展示指定的转出事件详情
GET /portouts/events/{id}
java
import com.telnyx.sdk.models.portouts.events.EventRetrieveParams;
import com.telnyx.sdk.models.portouts.events.EventRetrieveResponse;

EventRetrieveResponse event = client.portouts().events().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
available_notification_methods
(array[string]),
created_at
(date-time),
event_type
(enum: portout.status_changed, portout.foc_date_changed, portout.new_comment),
id
(uuid),
payload
(object),
payload_status
(enum: created, completed),
portout_id
(uuid),
record_type
(string),
updated_at
(date-time)

Republish a port-out event

重新推送转出事件

Republish a specific port-out event.
POST /portouts/events/{id}/republish
java
import com.telnyx.sdk.models.portouts.events.EventRepublishParams;

client.portouts().events().republish("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
重新推送指定的转出事件
POST /portouts/events/{id}/republish
java
import com.telnyx.sdk.models.portouts.events.EventRepublishParams;

client.portouts().events().republish("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");

List eligible port-out rejection codes for a specific order

列出指定订单符合条件的转出拒绝码

Given a port-out ID, list rejection codes that are eligible for that port-out
GET /portouts/rejections/{portout_id}
java
import com.telnyx.sdk.models.portouts.PortoutListRejectionCodesParams;
import com.telnyx.sdk.models.portouts.PortoutListRejectionCodesResponse;

PortoutListRejectionCodesResponse response = client.portouts().listRejectionCodes("329d6658-8f93-405d-862f-648776e8afd7");
Returns:
code
(integer),
description
(string),
reason_required
(boolean)
根据转出ID,列出该转出请求可使用的拒绝码
GET /portouts/rejections/{portout_id}
java
import com.telnyx.sdk.models.portouts.PortoutListRejectionCodesParams;
import com.telnyx.sdk.models.portouts.PortoutListRejectionCodesResponse;

PortoutListRejectionCodesResponse response = client.portouts().listRejectionCodes("329d6658-8f93-405d-862f-648776e8afd7");
返回字段:
code
(integer),
description
(string),
reason_required
(boolean)

List port-out related reports

列出转出相关报告

List the reports generated about port-out operations.
GET /portouts/reports
java
import com.telnyx.sdk.models.portouts.reports.ReportListPage;
import com.telnyx.sdk.models.portouts.reports.ReportListParams;

ReportListPage page = client.portouts().reports().list();
Returns:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)
列出转出操作生成的所有报告
GET /portouts/reports
java
import com.telnyx.sdk.models.portouts.reports.ReportListPage;
import com.telnyx.sdk.models.portouts.reports.ReportListParams;

ReportListPage page = client.portouts().reports().list();
返回字段:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)

Create a port-out related report

创建转出相关报告

Generate reports about port-out operations.
POST /portouts/reports
java
import com.telnyx.sdk.models.portouts.reports.ExportPortoutsCsvReport;
import com.telnyx.sdk.models.portouts.reports.ReportCreateParams;
import com.telnyx.sdk.models.portouts.reports.ReportCreateResponse;

ReportCreateParams params = ReportCreateParams.builder()
    .params(ExportPortoutsCsvReport.builder()
        .filters(ExportPortoutsCsvReport.Filters.builder().build())
        .build())
    .reportType(ReportCreateParams.ReportType.EXPORT_PORTOUTS_CSV)
    .build();
ReportCreateResponse report = client.portouts().reports().create(params);
Returns:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)
生成转出操作相关的报告
POST /portouts/reports
java
import com.telnyx.sdk.models.portouts.reports.ExportPortoutsCsvReport;
import com.telnyx.sdk.models.portouts.reports.ReportCreateParams;
import com.telnyx.sdk.models.portouts.reports.ReportCreateResponse;

ReportCreateParams params = ReportCreateParams.builder()
    .params(ExportPortoutsCsvReport.builder()
        .filters(ExportPortoutsCsvReport.Filters.builder().build())
        .build())
    .reportType(ReportCreateParams.ReportType.EXPORT_PORTOUTS_CSV)
    .build();
ReportCreateResponse report = client.portouts().reports().create(params);
返回字段:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)

Retrieve a report

获取单个报告

Retrieve a specific report generated.
GET /portouts/reports/{id}
java
import com.telnyx.sdk.models.portouts.reports.ReportRetrieveParams;
import com.telnyx.sdk.models.portouts.reports.ReportRetrieveResponse;

ReportRetrieveResponse report = client.portouts().reports().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)
获取指定的已生成报告详情
GET /portouts/reports/{id}
java
import com.telnyx.sdk.models.portouts.reports.ReportRetrieveParams;
import com.telnyx.sdk.models.portouts.reports.ReportRetrieveResponse;

ReportRetrieveResponse report = client.portouts().reports().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
created_at
(date-time),
document_id
(uuid),
id
(uuid),
params
(object),
record_type
(string),
report_type
(enum: export_portouts_csv),
status
(enum: pending, completed),
updated_at
(date-time)

Get a portout request

获取单个转出请求

Returns the portout request based on the ID provided
GET /portouts/{id}
java
import com.telnyx.sdk.models.portouts.PortoutRetrieveParams;
import com.telnyx.sdk.models.portouts.PortoutRetrieveResponse;

PortoutRetrieveResponse portout = client.portouts().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)
根据提供的ID返回对应转出请求详情
GET /portouts/{id}
java
import com.telnyx.sdk.models.portouts.PortoutRetrieveParams;
import com.telnyx.sdk.models.portouts.PortoutRetrieveResponse;

PortoutRetrieveResponse portout = client.portouts().retrieve("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)

List all comments for a portout request

列出转出请求的所有评论

Returns a list of comments for a portout request.
GET /portouts/{id}/comments
java
import com.telnyx.sdk.models.portouts.comments.CommentListParams;
import com.telnyx.sdk.models.portouts.comments.CommentListResponse;

CommentListResponse comments = client.portouts().comments().list("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
body
(string),
created_at
(string),
id
(string),
portout_id
(string),
record_type
(string),
user_id
(string)
返回指定转出请求的评论列表
GET /portouts/{id}/comments
java
import com.telnyx.sdk.models.portouts.comments.CommentListParams;
import com.telnyx.sdk.models.portouts.comments.CommentListResponse;

CommentListResponse comments = client.portouts().comments().list("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
body
(string),
created_at
(string),
id
(string),
portout_id
(string),
record_type
(string),
user_id
(string)

Create a comment on a portout request

为转出请求添加评论

Creates a comment on a portout request.
POST /portouts/{id}/comments
Optional:
body
(string)
java
import com.telnyx.sdk.models.portouts.comments.CommentCreateParams;
import com.telnyx.sdk.models.portouts.comments.CommentCreateResponse;

CommentCreateResponse comment = client.portouts().comments().create("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
body
(string),
created_at
(string),
id
(string),
portout_id
(string),
record_type
(string),
user_id
(string)
为指定转出请求创建一条评论
POST /portouts/{id}/comments
可选参数:
body
(string)
java
import com.telnyx.sdk.models.portouts.comments.CommentCreateParams;
import com.telnyx.sdk.models.portouts.comments.CommentCreateResponse;

CommentCreateResponse comment = client.portouts().comments().create("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
body
(string),
created_at
(string),
id
(string),
portout_id
(string),
record_type
(string),
user_id
(string)

List supporting documents on a portout request

列出转出请求的支持文档

List every supporting documents for a portout request.
GET /portouts/{id}/supporting_documents
java
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentListParams;
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentListResponse;

SupportingDocumentListResponse supportingDocuments = client.portouts().supportingDocuments().list("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
created_at
(string),
document_id
(uuid),
id
(uuid),
portout_id
(uuid),
record_type
(string),
type
(enum: loa, invoice),
updated_at
(string)
列出指定转出请求的所有支持文档
GET /portouts/{id}/supporting_documents
java
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentListParams;
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentListResponse;

SupportingDocumentListResponse supportingDocuments = client.portouts().supportingDocuments().list("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
created_at
(string),
document_id
(uuid),
id
(uuid),
portout_id
(uuid),
record_type
(string),
type
(enum: loa, invoice),
updated_at
(string)

Create a list of supporting documents on a portout request

为转出请求添加支持文档列表

Creates a list of supporting documents on a portout request.
POST /portouts/{id}/supporting_documents
Optional:
documents
(array[object])
java
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentCreateParams;
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentCreateResponse;

SupportingDocumentCreateResponse supportingDocument = client.portouts().supportingDocuments().create("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
Returns:
created_at
(string),
document_id
(uuid),
id
(uuid),
portout_id
(uuid),
record_type
(string),
type
(enum: loa, invoice),
updated_at
(string)
为指定转出请求创建一批支持文档
POST /portouts/{id}/supporting_documents
可选参数:
documents
(array[object])
java
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentCreateParams;
import com.telnyx.sdk.models.portouts.supportingdocuments.SupportingDocumentCreateResponse;

SupportingDocumentCreateResponse supportingDocument = client.portouts().supportingDocuments().create("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e");
返回字段:
created_at
(string),
document_id
(uuid),
id
(uuid),
portout_id
(uuid),
record_type
(string),
type
(enum: loa, invoice),
updated_at
(string)

Update Status

更新状态

Authorize or reject portout request
PATCH /portouts/{id}/{status}
— Required:
reason
Optional:
host_messaging
(boolean)
java
import com.telnyx.sdk.models.portouts.PortoutUpdateStatusParams;
import com.telnyx.sdk.models.portouts.PortoutUpdateStatusResponse;

PortoutUpdateStatusParams params = PortoutUpdateStatusParams.builder()
    .id("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
    .status(PortoutUpdateStatusParams.Status.AUTHORIZED)
    .reason("I do not recognize this transaction")
    .build();
PortoutUpdateStatusResponse response = client.portouts().updateStatus(params);
Returns:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)
批准或拒绝转出请求
PATCH /portouts/{id}/{status}
— 必填参数:
reason
可选参数:
host_messaging
(boolean)
java
import com.telnyx.sdk.models.portouts.PortoutUpdateStatusParams;
import com.telnyx.sdk.models.portouts.PortoutUpdateStatusResponse;

PortoutUpdateStatusParams params = PortoutUpdateStatusParams.builder()
    .id("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
    .status(PortoutUpdateStatusParams.Status.AUTHORIZED)
    .reason("I do not recognize this transaction")
    .build();
PortoutUpdateStatusResponse response = client.portouts().updateStatus(params);
返回字段:
already_ported
(boolean),
authorized_name
(string),
carrier_name
(string),
city
(string),
created_at
(string),
current_carrier
(string),
end_user_name
(string),
foc_date
(string),
host_messaging
(boolean),
id
(string),
inserted_at
(string),
lsr
(array[string]),
phone_numbers
(array[string]),
pon
(string),
reason
(string | null),
record_type
(string),
rejection_code
(integer),
requested_foc_date
(string),
service_address
(string),
spid
(string),
state
(string),
status
(enum: pending, authorized, ported, rejected, rejected-pending, canceled),
support_key
(string),
updated_at
(string),
user_id
(uuid),
vendor
(uuid),
zip
(string)