telnyx-storage-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 Storage - Java
Telnyx Storage - 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 is already initialized as shown above.
clientjava
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
TelnyxClient client = TelnyxOkHttpClient.fromEnv();以下所有示例均假设已按照上述方式完成初始化。
clientError 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: invalid API key, insufficient permissions,
resource not found, validation error (check field formats),
rate limited (retry with exponential backoff).
401403404422429所有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);
}
}常见错误码: 无效API密钥, 权限不足, 资源未找到, 校验错误(请检查字段格式), 触发速率限制(请使用指数退避算法重试)。
401403404422429Get Bucket SSL Certificate
获取存储桶SSL证书
Returns the stored certificate detail of a bucket, if applicable.
GET /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateRetrieveParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateRetrieveResponse;
SslCertificateRetrieveResponse sslCertificate = client.storage().buckets().sslCertificate().retrieve("");Returns: (date-time), (string), (object), (object), (date-time), (date-time)
created_atidissued_byissued_tovalid_fromvalid_to返回存储桶已存储的证书详情(如适用)。
GET /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateRetrieveParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateRetrieveResponse;
SslCertificateRetrieveResponse sslCertificate = client.storage().buckets().sslCertificate().retrieve("");返回值:(日期时间)、(字符串)、(对象)、(对象)、(生效时间)、(到期时间)
created_atidissued_byissued_tovalid_fromvalid_toAdd SSL Certificate
添加SSL证书
Uploads an SSL certificate and its matching secret so that you can use Telnyx's storage as your CDN.
PUT /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateCreateParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateCreateResponse;
SslCertificateCreateResponse sslCertificate = client.storage().buckets().sslCertificate().create("");Returns: (date-time), (string), (object), (object), (date-time), (date-time)
created_atidissued_byissued_tovalid_fromvalid_to上传SSL证书及其对应的密钥,以便你可以将Telnyx存储用作CDN。
PUT /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateCreateParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateCreateResponse;
SslCertificateCreateResponse sslCertificate = client.storage().buckets().sslCertificate().create("");返回值:(日期时间)、(字符串)、(对象)、(对象)、(生效时间)、(到期时间)
created_atidissued_byissued_tovalid_fromvalid_toRemove SSL Certificate
移除SSL证书
Deletes an SSL certificate and its matching secret.
DELETE /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateDeleteParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateDeleteResponse;
SslCertificateDeleteResponse sslCertificate = client.storage().buckets().sslCertificate().delete("");Returns: (date-time), (string), (object), (object), (date-time), (date-time)
created_atidissued_byissued_tovalid_fromvalid_to删除SSL证书及其对应的密钥。
DELETE /storage/buckets/{bucketName}/ssl_certificatejava
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateDeleteParams;
import com.telnyx.sdk.models.storage.buckets.sslcertificate.SslCertificateDeleteResponse;
SslCertificateDeleteResponse sslCertificate = client.storage().buckets().sslCertificate().delete("");返回值:(日期时间)、(字符串)、(对象)、(对象)、(生效时间)、(到期时间)
created_atidissued_byissued_tovalid_fromvalid_toGet API Usage
获取API使用情况
Returns the detail on API usage on a bucket of a particular time period, group by method category.
GET /storage/buckets/{bucketName}/usage/apijava
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetApiUsageParams;
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetApiUsageResponse;
import java.time.OffsetDateTime;
UsageGetApiUsageParams params = UsageGetApiUsageParams.builder()
.bucketName("")
.filter(UsageGetApiUsageParams.Filter.builder()
.endTime(OffsetDateTime.parse("2019-12-27T18:11:19.117Z"))
.startTime(OffsetDateTime.parse("2019-12-27T18:11:19.117Z"))
.build())
.build();
UsageGetApiUsageResponse response = client.storage().buckets().usage().getApiUsage(params);Returns: (array[object]), (date-time), (object)
categoriestimestamptotal返回指定时间段内某个存储桶的API使用详情,按接口类别分组。
GET /storage/buckets/{bucketName}/usage/apijava
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetApiUsageParams;
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetApiUsageResponse;
import java.time.OffsetDateTime;
UsageGetApiUsageParams params = UsageGetApiUsageParams.builder()
.bucketName("")
.filter(UsageGetApiUsageParams.Filter.builder()
.endTime(OffsetDateTime.parse("2019-12-27T18:11:19.117Z"))
.startTime(OffsetDateTime.parse("2019-12-27T18:11:19.117Z"))
.build())
.build();
UsageGetApiUsageResponse response = client.storage().buckets().usage().getApiUsage(params);返回值:(对象数组)、(日期时间)、(对象)
categoriestimestamptotalGet Bucket Usage
获取存储桶使用情况
Returns the amount of storage space and number of files a bucket takes up.
GET /storage/buckets/{bucketName}/usage/storagejava
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetBucketUsageParams;
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetBucketUsageResponse;
UsageGetBucketUsageResponse response = client.storage().buckets().usage().getBucketUsage("");Returns: (integer), (integer), (integer), (date-time)
num_objectssizesize_kbtimestamp返回存储桶占用的存储空间大小和文件数量。
GET /storage/buckets/{bucketName}/usage/storagejava
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetBucketUsageParams;
import com.telnyx.sdk.models.storage.buckets.usage.UsageGetBucketUsageResponse;
UsageGetBucketUsageResponse response = client.storage().buckets().usage().getBucketUsage("");返回值:(整数)、(整数)、(整数)、(日期时间)
num_objectssizesize_kbtimestampCreate Presigned Object URL
创建对象预签名URL
Returns a timed and authenticated URL to download (GET) or upload (PUT) an object. This is the equivalent to AWS S3’s “presigned” URL. Please note that Telnyx performs authentication differently from AWS S3 and you MUST NOT use the presign method of AWS s3api CLI or SDK to generate the presigned URL.
POST /storage/buckets/{bucketName}/{objectName}/presigned_urlOptional: (integer)
ttljava
import com.telnyx.sdk.models.storage.buckets.BucketCreatePresignedUrlParams;
import com.telnyx.sdk.models.storage.buckets.BucketCreatePresignedUrlResponse;
BucketCreatePresignedUrlParams params = BucketCreatePresignedUrlParams.builder()
.bucketName("")
.objectName("")
.build();
BucketCreatePresignedUrlResponse response = client.storage().buckets().createPresignedUrl(params);Returns: (object)
content返回一个有时效性的身份认证URL,可用于下载(GET)或上传(PUT)对象。其功能等同于AWS S3的“预签名”URL。请注意,Telnyx的身份验证逻辑与AWS S3不同,你不得使用AWS s3api CLI或SDK的预签名方法来生成预签名URL。
POST /storage/buckets/{bucketName}/{objectName}/presigned_url可选参数:(整数)
ttljava
import com.telnyx.sdk.models.storage.buckets.BucketCreatePresignedUrlParams;
import com.telnyx.sdk.models.storage.buckets.BucketCreatePresignedUrlResponse;
BucketCreatePresignedUrlParams params = BucketCreatePresignedUrlParams.builder()
.bucketName("")
.objectName("")
.build();
BucketCreatePresignedUrlResponse response = client.storage().buckets().createPresignedUrl(params);返回值:(对象)
content