mixi Developer Center (ミクシィ デベロッパーセンター)

mixiアプリ

mixiアプリ » 技術仕様(Graph API方式) » モバイル » 新リクエストAPIについて

新リクエストAPIについて

新リクエスト API を利用することで、ユーザは、友人やアプリのプレーヤーに「近所になってください」「花束を贈りますので受け取ってください」といった要求を送信することができます。
また、それらリクエストを、 Push通知 や メール 等で、ユーザーへお知らせすることができます。

ユーザ認可の取得

新リクエストAPI を利用するためには、mixi_apps2スコープのユーザ認可を取得する必要があります。
詳しくは ユーザ認可について を参照ください。

新リクエストを送信する

mixiアプリモバイルから新リクエストAPIを利用するには、 request:users ユーザフローを利用します。

request:users?callback=[エスケープ済みURL]

リクエストAPIにおける request:users ユーザフローの利用は、formタグを使ったPOSTメソッドによるHTTPリクエストとなります。具体的なリクエストの内容は、type属性が hiddenであるinputタグを使って記述します。指定可能なパラメータは、以下となります。

パラメータ名

callback

リクエスト送信完了画面(*)へ遷移するエスケープ済みのURLを指定します。
*SAPサーバに用意していただく必要があります。

title

送信画面のタイトルとしてユーザに表示する文章を指定します。

image

メッセージに含める画像のURL。末尾にMIME typeをカンマ区切りで指定する必要があります。但し4KB以上の画像を受信すると相手にはNo Imageの画像が表示されます。

description

リクエストの説明や、ユーザーにメッセージの入力を促す説明文をmixiアプリ側で変更したい場合に使用します。

recipients

送信したいユーザの ID を指定します

url

リクエストをユーザがクリックした際の飛び先のURL(for PC, Touch)

mobile_url

リクエストをユーザがクリックした際の飛び先のURL(for Mobile)。

body

送信されるメッセージの初期表示文章を指定します。

また、ユーザがアクセスしている端末のキャリアがドコモの場合には、 "guid=ON" パラメータも付加してください。

なお、パラメータで指定した値が長い場合、キャリアによっては送信できる上限に達する場合がありますので、ご注意ください。

リクエスト例

<form action="request:users?callback=[エスケープ済みURL]&guid=ON" method="POST">
  <input type="hidden" name="title" value="近所に引っ越してもらおう" />
  <input type="hidden" name="image" value="http://server.name/image.gif,image/gif" />
  <input type="hidden" name="recipients" value="xxxx,yyyy" />
  <input type="hidden" name="url" value="http://mixi.jp/run_appli.pl?id=[アプリID]&appParams=..." />
  <input type="hidden" name="mobile_url" value="mobileユーザがリクエストをクリックしたときの飛び先URL" />
  <input type="hidden" name="body" value="初期入力値として表示されるメッセージ" />
  <input type="submit" value="送信!" />
</form>

appParamsはJSON形式で表しURIエスケープします。
appParams以外のパラメータ名を指定した場合でもアプリの起動URLとしてパラメータは付与されますが、
mixi アプリ PC版 及び スマートフォン版 においてはappParamsで指定したパラメータのみバックエンドサーバへ送信されます。
(例:「{"uid":"1569"}」をURIエスケープして「%7B%22uid%22%3A%221569%22%7D」)

appParams=%7B%22uid%22%3A%221569%22%7D

また、もし各mixiアプリが説明文を変更したい場合は、以下のようにしてdescriptionを指定します。

<form action="request:users?callback=エスケープ済みURL&guid=ON" method="POST">
....
<input type="hidden" name="description" value="近所に引っ越してもらいたい人にメッセージを贈ろう!" />
<input type="submit" value="送信!" />
</form>

送信したユーザおよびリクエストIDの取得について

ユーザが確認画面で "はい" を押すと、指定したコールバックURLにリダイレクトされます。
実際にユーザが誰に送信したかは、コールバックURLに対してQuery String形式でデータが送信されます。
"recipientIds" パラメータにユーザIDがカンマ区切り形式で渡されます。
また、同時に作成されたリクエストのIDに関しても、 "requestId" パラメータとして渡されます。

http://example.com/foo?recipientIds=xxxx,yyyy,zzzz&requestId=abc

エラーコード

もし何らかのエラーが発生した場合は、コールバックURLが呼び出される際に、resultパラメータにfalseが、errorパラメータに具体的なエラーコードが指定されます。エラーコードの詳細は以下となります。

エラーコード

発生する状況

400

パラメータに不備がある

401

mixi_apps2スコープのユーザ認可を取得していない

403

ユーザが「やめる」を選択、指定された送信先IDが有効でない

500

mixi側の内部エラー

 

このページの上部へ