API
HTTP経由の画像変換
概要
Convert2WebP API を使用すると、プログラムで画像を形式間で変換できます。画像を含むマルチパート リクエストを送信し、応答本文で変換されたファイルを受け取ります。すべての処理はサーバー側で行われ、ほとんどのファイルの遅延は 1 秒未満です。
ベース URL
https://convert2webp.com/api/v1認証
認証は必要ありません。 API は無料でオープンです。すべてのリクエストは、IP アドレスごとに 1 分あたり 60 リクエストにレート制限されています。
レート制限
レート制限は IP アドレスごとに適用されます。すべての応答にはレート制限ヘッダーが含まれます。
| 限界 | 最大ファイルサイズ | 最大バッチファイル数 |
|---|---|---|
| 60 リクエスト/分 | 1ファイルあたり10MB | バッチあたり 20 ファイル |
レート制限ヘッダーはすべての応答に含まれます。 X-RateLimit-Remaining, X-RateLimit-Reset.
エンドポイント
単一の画像をターゲット形式に変換します。イメージ ファイルとオプションのパラメーターを含む multipart/form-data を受け入れます。
パラメーター
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
| file | File | 必須 | 変換する画像ファイル。 PNG、JPG、GIF、BMP、TIFF、SVG、AVIF、ICO、WebPを受け入れます。 |
| output_format | string | オプション | ターゲット出力形式: webp、png、jpg、gif、bmp、または pdf。(デフォルト: webp) |
| quality | integer | オプション | 出力品質は 1 (最低) ~ 100 (最高) です。(デフォルト: 80) |
| width | integer | オプション | ピクセル単位の最大出力幅。アスペクト比は維持されます。 |
| height | integer | オプション | ピクセル単位の最大出力高さ。アスペクト比は維持されます。 |
| strip_metadata | boolean | オプション | 出力から EXIF/IPTC/XMP メタデータを削除します。(デフォルト: true) |
レスポンス
200
変換されたイメージバイナリimage/webp
400
無効なリクエスト (ファイルが見つからない、サポートされていない形式など)application/json
413
ファイルが大きすぎますapplication/json
429
レート制限を超えましたapplication/json
500
内部サーバーエラーapplication/json
コード例
terminal
curl -X POST https://convert2webp.com/api/v1/convert \
-F "file=@photo.png" \
-F "format=webp" \
-F "quality=80" \
-o converted.webp試してみる
ファイルが選択されていません
1 回のリクエストで複数の画像を変換します。変換されたすべてのファイルを含む ZIP アーカイブを返します。
パラメーター
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
| files | File[] | 必須 | 変換する画像ファイルの配列。リクエストごとに最大 20 ファイル。 |
| format | string | オプション | すべてのファイルに適用されるターゲット出力形式。(デフォルト: webp) |
| quality | integer | オプション | 出力品質は 1 ~ 100 です。(デフォルト: 80) |
レスポンス
200
変換されたすべての画像を含む ZIP アーカイブapplication/zip
400
無効なリクエストapplication/json
413
総ペイロードが大きすぎますapplication/json
429
レート制限を超えましたapplication/json
コード例
terminal
curl -X POST https://convert2webp.com/api/v1/batch \
-F "files=@image1.png" \
-F "files=@image2.jpg" \
-F "files=@image3.gif" \
-F "format=webp" \
-F "quality=80" \
-o converted.zipサポートされているすべての入力および出力画像形式をリストします。
レスポンス
200
JSON オブジェクトのサポートされる入力および出力形式のリストapplication/json
コード例
terminal
curl https://convert2webp.com/api/v1/formats応答例
response.json
{
"input": [
"png", "jpg", "jpeg", "gif", "bmp",
"tiff", "svg", "avif", "ico", "webp"
],
"output": ["webp", "png", "jpg", "gif", "bmp", "pdf"]
}サービスの可用性を確認します。
レスポンス
200
サービスのステータスとバージョンapplication/json
コード例
terminal
curl https://convert2webp.com/api/v1/health応答例
response.json
{
"status": "ok",
"version": "1.0.0",
"timestamp": "2026-04-04T12:00:00.000Z"
}エラーコード
すべてのエラー応答は、次のような JSON 本文を返します。 error 何が問題だったかを説明するオブジェクト。
error-response.json
{
"error": {
"code": 429,
"message": "Rate limit exceeded. Please wait 30 seconds before retrying."
}
}| コード | 名前 | 説明 |
|---|---|---|
| 400 | 要求の形式が正しくありません | リクエストの形式が正しくありませんでした。必要なパラメータがすべて存在し、有効であることを確認してください。 |
| 413 | ペイロードが大きすぎます | アップロードされたファイルは 10 MB の制限を超えています。 |
| 415 | サポートされていないメディア タイプ | アップロードされたファイル形式は変換がサポートされていません。 |
| 429 | リクエストが多すぎます | レート制限 (1 分あたり 60 リクエスト) を超えました。待ってから再試行してください。 |
| 500 | 内部サーバーエラー | 予期しないエラーが発生しました。これが続く場合は、convert2webp@deployvision.com にお問い合わせください。 |