Yabumi REST API

Yabumi REST API

This is the API for all of our official Yabumi apps and our Web UIs.

General Notes 全般的な注意事項

SSL only SSL のみ

We require that all requests are done over SSL.

すべてのリクエストにおいてSSLが必須です。

Request format リクエストフォーマット

Most are JSON. also, QueryString may usable but not recommended.

ほとんどがJSONです。QueryStringも利用できますが推奨されません。文字列以外の型が必要な場合は使えません。

Response format レスポンスフォーマット

Please provide extension suffix.

一目で分かりやすいように、リソース名の最後に拡張子を付加してください。

https://yabumi.cc/api/images.json

UTF-8 encoding UTF-8 エンコーディング

Every string passed to and from the Yabumi API needs to be UTF-8 encoded.

すべてのYabumi APIに送られる文字列はUTF-8である必要があります。

Date format Date フォーマット

All dates in the API are strings in the following ISO format:

全て次のようなISO形式の文字列です。リクエスト時に限り、UNIX時間(ミリ秒)の整数でも可能です。

"2014-02-23T14:42:20.000Z"

Error Handling エラー処理

Errors are returned using standard HTTP error code syntax.

エラー発生時には標準的なHTTPステータスコードを用いて状態を表現します。エラーの例は次の項に列挙しています。

Response Status Code & Errors

Type Code Description is Retryable?
Success 200 OK The request has succeeded. リクエストは成功した。
201 Created The request has succeeded and resulted in a new resource created. The newly created resource can be referenced by the URI returned in the entity of the response, Location header field. リクエストは成功し、結果として新しいリソースが作成された。新しく作成されたリソースのURIはレスポンスボディ中とLocationヘッダで示されます。
202 Accepted The request has been accepted for processing, but the processing has not been completed. リクエストは処理のために受け入れられたが、処理は完了されていない。このリクエストは実際に処理される時に失敗する可能性もある。POSTリクエストの場合は通常、新しく作成されるであろうリソースの仮のURIがレスポンスボディ中とLocationヘッダで示され、状態を確認できる。処理された結果失敗した場合は404等となる。
Client Error 400 Bad Request Invalid HTTP Method, Missing Host header, or Bad input parameter. 不正なHTTPメソッド, Hostリクエストヘッダがない, または不正なリクエストパラメーター。入力不備の場合はエラー理由が示される場合があります。 Prohibited
403 Forbidden The API understood the request, but is refusing. In many cases, reason is indicated. APIはリクエストを理解したが、実行を拒否した。多くの場合、理由が示されます。 Prohibited
404 Not Found Resource not found at the specified path. 指定されたパスにリソースはありません。 Nonsense
405 Method Not Allowed Request method not allowed. 許可されていないリクエストメソッド。Allowレスポンスヘッダで利用可能なメソッドが示されます。 Prohibited
409 Conflict The request could not be completed due to a conflict with the current state of the resource. リクエストはリソースの現在の状態と矛盾していたため続行できなかった。 If Resolved
410 Gone Requested resource is no longer available. Lost. 指定されたパスのリソースはもはや利用できない。見失った。 Nonsense
415 Unsupported Media Type Entity of the request is in a format not supported, or requested response type is unsupported. リクエストされた内容は非対応の種類である。またはリクエストしたレスポンスタイプは非対応である。 Prohibited
429 Too Many Requests This indicates that the user has sent too many requests in a given amount of time ("rate limiting"). Maybe include a Retry-After header indicating how long to wait before making a new request. 一定時間で制限を超えるリクエストが送られた("rate limiting")。待つべき時間を示すRetry-Afterヘッダが提供されるかもしれません。 Later
451 Unavailable For Legal Reasons This indicates that the server is denying access to the resource in response to a legal demand. see this. 法的な理由でリソースへのリクエストが禁止されている。詳しい仕様はこちら。不特定多数に公開されたリソースにおけるDMCA処理等の結果、この結果になる可能性があります。リソースはまもなく削除され、404になる可能性があります。 Unclear
Server Error 500 Internal Server Error Unexpected error. 予期しないエラーが発生した。 Yes
501 Not Implemented Requested execution is not implemented. Contact us if you have question in this. 指定されたリクエストの一部または全部を処理するための機能が未実装である。これに関連して不明な点がある場合は問い合わせてください。 No
503 Service Unavailable API is currently unable to handle the request due to a temporary overloading or maintenance of the server. Maybe include a Retry-After header. 過負荷状態またはメンテナンス状態であるためリクエストが続行できなかった。待つべき時間を示すRetry-Afterヘッダが提供された場合は従ってください。 Later

ステータスページでAPIの状態を確認できます。

Images API

Create a image

Method POST
URL
https://yabumi.cc/api/images.(json|txt)
Request Type multipart/form-data
Request Header
  • User-Agent required - First product name and version will be shown on Yabumi viewer.
Request Body
  • imagedata File required - These Content-Type are supported: image/png, image/jpeg, image/gif, image/svg+xml, image/x-photoshop, application/pdf
  • name Field - You can specify the image name. If not supplied, will use the filename of the imagedata.
  • expiresAt Field - Default: new Date(Date.now() + 86400000).toISOString()

... Here is an example:
curl -X POST https://yabumi.cc/api/images.json -F "imagedata=@example.jpg" -F "name=ex"
Response Type application/json, text/plain
Response Headers
  • Location - Created image URL
  • Link - RFC5988
  • X-Yabumi-Image-Url - Same as Location
  • X-Yabumi-Image-Edit-Url - PIN included URL
  • X-Yabumi-Image-Pin - PIN
  • X-Yabumi-Image-Id - Image ID

Get a image

Method HEAD, GET
URL
https://yabumi.cc/api/images/:imageId.(json|png|jpg|gif|svg|psd|pdf)
Request Type QueryString, JSON
Request Header
Request Body
  • convert Key - If requesting image/jpeg response, you can choose these quality: low, medium, high, max
  • resize Key - specify like this: "MaxWidthxMaxHeight", "MaxWidthx", "xMaxHeight"

... Here is an example:
curl -X GET https://yabumi.cc/api/images/53062920c30a48823a004b41.jpg?convert=low&resize=400x400
Response Type application/json, image/png, image/jpeg, image/gif, image/svg+xml, image/x-photoshop, application/pdf
Response Headers

Image Distribution Platform

イメージ配信プラットフォームとして

アプリ開発者の方はぜひYabumiをお試しください

ストレージの容量や負荷を気にすることなく画像共有機能等をあなたのアプリに実装できます。
チャットアプリやソーシャルアプリ等に最適です。

» API Plan Types » APIプラン一覧