クイックスタート - 5分で圧縮APIにアクセス
いくつかの簡単なステップでSmartSlim圧縮APIサービスにアクセスし、curl / Python / Java / Node.jsで初回の圧縮リクエストを送信
ステップ 1:アカウント登録とAPI Key取得
圧縮APIの呼び出しを開始する前に、UGLYPEAR DATAアカウントを登録し、アプリを作成してAPI Keyを取得する必要があります
コンソールで登録
UGLYPEAR DATAデベロッパーコンソールにアクセスし、メールアドレスまたは電話番号でアカウントを登録し、実名認証を完了するとサービスの利用を開始できます。
アプリを作成
コンソールにログイン後、「アプリ管理」で新規アプリを作成し、アプリ名、用途の説明を入力し、必要なサービスソリューションを選定します。
API Keyを取得
アプリ作成完了後、システムがそのアプリに固有のAPI Keyを生成します。安全に保管し、クライアントコードや公開リポジトリに漏洩しないでください。
セキュリティヒント:API Keyはアカウント認証情報と同等です。環境変数またはシークレット管理サービスから読み込み、ソースコードにハードコードしたりコードリポジトリに送信しないでください。
ステップ 2:初回API呼び出し(curl)
API Key取得後、curlを使用して圧縮リクエストを迅速に送信し、アクセス性とサービス可用性を検証できます
curl -X POST https://api.uglypear.com/v1/compress \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F "file=@document.pdf" \
-F "quality=high"
リクエスト中の YOUR_API_KEY を実際のAPI Keyに置き換え、file=@document.pdf は圧縮対象のローカルファイルを指定、quality パラメータは以下から選定可能 low / medium / high。
ステップ 3:Pythonサンプルコード
Python requestsライブラリを使用してファイルをアップロードし圧縮結果を取得、バックエンドサービス統合とデータ処理スクリプトに適しています
import requests
url = "https://api.uglypear.com/v1/compress"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("document.pdf", "rb")}
data = {"quality": "high", "format": "pdf"}
response = requests.post(url, headers=headers, files=files, data=data)
result = response.json()
print(f"圧縮完了、ダウンロードリンク: {result['download_url']}")
ステップ 4:Node.jsサンプルコード
Node.jsでform-dataとfetchを使用してファイルをアップロード、サーバー側NodeアプリとServerlessシナリオに適しています
const FormData = require('form-data');
const fs = require('fs');
const form = new FormData();
form.append('file', fs.createReadStream('document.pdf'));
form.append('quality', 'high');
fetch('https://api.uglypear.com/v1/compress', {
method: 'POST',
headers: { 'Authorization': 'Bearer YOUR_API_KEY', ...form.getHeaders() },
body: form
}).then(res => res.json()).then(data => console.log(data));
ステップ 5:Javaサンプルコード(OkHttp)
Java OkHttpクライアントでmultipartリクエストを構築、エンタープライズ級JavaバックエンドとAndroidアプリ統合に適しています
import okhttp3.*;
import java.io.File;
public class CompressDemo {
public static void main(String[] args) throws Exception {
OkHttpClient client = new OkHttpClient();
File file = new File("document.pdf");
RequestBody body = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("file", file.getName(),
RequestBody.create(file, MediaType.parse("application/pdf")))
.addFormDataPart("quality", "high")
.build();
Request request = new Request.Builder()
.url("https://api.uglypear.com/v1/compress")
.addHeader("Authorization", "Bearer YOUR_API_KEY")
.post(body)
.build();
try (Response response = client.newCall(request).execute()) {
System.out.println(response.body().string());
}
}
}
APIレスポンスフォーマット説明
圧縮リクエスト成功後、サーバーはJSONフォーマットのレスポンスを返し、タスク識別子と圧縮結果情報を含みます
{
"task_id": "task_8f3c2a1b9e7d4c5f",
"status": "completed",
"download_url": "https://api.uglypear.com/v1/tasks/task_8f3c2a1b9e7d4c5f/download",
"original_size": 5242880,
"compressed_size": 1572864,
"compression_ratio": "70.0%"
}
task_id
今回の圧縮タスクの唯一識別子、タスク状態照会、結果ファイルダウンロードまたはタスク削除に利用可能。
status
任務状態、取值为 pending / processing / completed / failed。
download_url
圧縮結果ファイルのダウンロードURL、タスク完了後このリンクで圧縮後のファイルを取得可能。
original_size
元のファイルサイズ、単位为字节(Byte)。
compressed_size
圧縮後ファイルサイズ、単位为字节(Byte)。
compression_ratio
圧縮率、表示サイズ削減的百分比、数值越高圧縮効果越好。
次のステップ
初回呼び出し完了後、完全なAPIドキュメントを深く理解、各言語SDKをダウンロードまたはより多くのコード例を確認できます
APIドキュメント
完全なOpenAPI 3.0インターフェース仕様を参照、パラメータ定義、エラーコードと限流戦略。
確認 APIドキュメントSDKダウンロード
Rust SDKダイナミックライブラリ、C FFIヘッダファイル、Pythonバインディングパッケージをダウンロード、統合開発を加速。
SDKをダウンロードコード例
確認バッチ圧縮、異步任務、暗号化圧縮等典型的なシナリオ的完全なサンプルコード。
確認サンプル確認完全な APIドキュメント
圧縮統合ソリューションの構築を開始、すべてのインターフェース説明、パラメータ定義とエラーコードリファレンスを参照