配信登録、フォーマット保存、フォーマット編集、テスト送信 API

概要

インフォメーションの、配信登録、フォーマット保存、フォーマット編集、テスト送信 APIを行います。リクエストに用いるJSON形式と、レスポンスの形式、エラーコードは、3つのAPIで同一です。

URL

配信登録 API

https://${hostname}/mapi/3.1/info/add/

フォーマット保存 API

https://${hostname}/mapi/3.1/draft/add/

フォーマット編集 API

https://${hostname}/mapi/3.1/draft/{id}/edit/

テスト送信 API

https://${hostname}/mapi/3.1/test/add/

メソッド

POST

結果タイプ

1つしか返さない

リクエストパラメータ

キー名 必須 タイプ 説明
type o 文字列 次のうちいずれかの文字列を指定します
instant ... 即時送信
scheduled ... 予約送信
location ... 位置連動型送信
wifi ... Wi-Fi連動型送信
bluetooth ... bluetooth連動型送信

※テスト送信は、instantのみ指定可能です。
content_type o 文字列 次のうちいずれかの文字列を指定します
text/plain ... テキスト配信
text/html ... HTML配信
platform o 配列 配信対象のプラットフォーム
次のうちいずれか及び両方の文字列を配列で指定します
iphone, android

※契約状況によって、指定可能な値が異なります。
popup ※A 文字列 ポップアップフリーワード

※256文字以下である必要があります。
popup_items ※B objects プッシュ通知のペイロードを詳細に指定できるもの。詳細はこちら
title ※C 文字列 件名

※全角40文字相当以下推奨。1024文字以下である必要があります。
content ※C 文字列 本文

※100kbyte以下である必要があります。
url x 文字列 リンク先URL

※URLとして利用できない文字は、適切にURLエンコードする必要があります。
icon x 文字列 アイコン画像ファイルの絶対URL

※省略時はデフォルトアイコンが表示されます。
category x 文字列 カテゴリを文字列で指定

※日本語、半角英数字、アンダーバーのみ(128文字以内)
※配信カテゴリを管理するためには、アプリ側の改修が必要になります。
※活用方法としては、例えば受信したお知らせのカテゴリによって振る舞いを変えたり、FANSHIPレポートであるカテゴリだけを非表示にすることなどができます。
delivery_type x 整数 指定なし もしくは 次のいずれかの整数を指定
1 ... プッシュ通知/お知らせ表示 利用
2 ... プッシュ通知のみ利用
3 ... お知らせ通知のみ利用
4 ... プッシュ通知が許諾されているユーザにはプッシュ通知/お知らせ表示。されていないユーザにはお知らせのみ通知
send_time ※D 文字列 送信日時
(type が scheduled の場合のみ)
日本時間で指定
※ yyyy-mm-dd HH:MM:SS フォーマット
※ 未来の時刻で、最長120日先まで
location ※E 配列 配信位置
(type が location の場合のみ)
次の値を持つオブジェクトを 配列で指定します
lat .. 緯度、世界測地系 角度表記(小数)
lon .. 経度、世界測地系 角度表記(小数)
radius .. 半径、メートル単位(整数)
※ radius は、50 100 300 500 1000 2000 3000 5000 10000 のみ選択できます。
※ 最大100個まで
※ popinfo内部で保持する浮動小数点の精度の影響で、 緯度経度として登録した値に、ごく少量の誤差が出る可能性がございます。
wifissid ※F 配列 配信Wi-Fi SSID情報
(type が wifi の場合のみ)
次の値を持つオブジェクトを 配列で指定します
essid .. Wi-FiスポットのESSID(文字列)
bssid .. Wi-FiスポットのBSSID(文字列)
rssi .. 電波強度(整数)
※ essidまたはbssidのいずれか 一つの指定が必須です。
essid指定時のbssid、 bssid指定時の essidは省略可能です。
rssiを省略した場合、 電波強度の指定なしになります。
※ 最大100個まで
bluetooth ※G 配列 bluetooth端末情報
(type が bluetoothの場合のみ)
次の値を持つオブジェクトを 配列で指定します。type として、iBeacon を指定し、それぞれ指定可能な パラメータが異なります。

■iBeacon端末を利用する場合
type .. iBeacon
uuid .. uuid(必須)
major .. メジャー番号(任意)
minor .. マイナー番号(任意)
rssi .. 電波強度(デシベル)(任意)
major が省略された場合、 全てのビーコン端末が対象となります。
minor が省略された場合、 majorまでが合致したビーコン端末 に配信されます。
rssi が省略された場合、 電波強度によらず配信となります。
※ 最大100個まで
period ※E F G 配列 配信期間
(type が location、wifi、bluetooth の場合のみ)
次の値を持つオブジェクトを 配列で指定します
start ... 開始日時、JST(文字列)
end ... 終了日時、JST(文字列)
※ 最大100個まで
※ 未来の時刻で、最長120日先まで
target_id object 配信ユーザーID
iphone もしくは、androidをキーとして
配信ユーザーID文字列を配列で指定
入力できる ID は、iOS と Android を合わせて 100,000 件までです。
※下記のfilterを利用すると、より高度な条件指定が可能になるので、filterの利用を推奨します
segmentation_id x 整数 セグメントID
FANSHIP管理画面「セグメント管理」→「セグメント一覧」→「セグメント詳細」のURL末尾の数字です。または外部データ連携機能を利用することで確認できます。
※filterに設定できるsegment_id(属性 ID)とは異なります。
filter ※H object or array filterを指定します。詳細はこちら


※A

delivery_typeが3以外 delivery_typeが3
popup_itemsの指定あり 任意(popupの値が優先) 入力不可
popup_itemsの指定なし 必須 入力不可

※B

delivery_typeが3以外 delivery_typeが3
popupの指定あり 任意(popupの値が優先) 入力不可
popupの指定なし 必須 入力不可

※C
delivery_typeに2を指定した場合、入力不可。それ以外の場合、入力必須

※D
type が、scheduledの場合は必須

※E
type が、locationの場合は必須

※F
type が、wifiの場合は必須

※G
type が、bluetoothの場合は必須。

※H
テスト送信APIの場合は、利用できません。

利用可能文字について

popup, title, content, popup_items.title, poiup_items.bodyは、UTF-8がサポートする全ての文字を設定することができます。

実際の表示は端末 (OSやフォント等) に依存することにご注意ください。
絵文字や特殊文字を使う場合は、テスト配信で表示を確認していただくことを推奨します。
しかし、全端末で正常に表示されることを保証するものではありません。

delivery_type(配信タイプ)について

管理画面や FANSHIP Mangement APIを通して配信を入稿する際、配信タイプを設定できます。

バリエーション
1. PUSH通知あり、お知らせ一覧への表示あり (既存、デフォルト)
2. PUSH通知あり、お知らせ一覧への表示なし
3. PUSH通知なし、お知らせ一覧への表示あり
4 ... プッシュ通知が許諾されているユーザにはプッシュ通知/お知らせ表示。されていないユーザにはお知らせのみ通知

配信アイコンが白くなってしまいます

デフォルトアイコンは管理画面で登録するアイコンとは異なり、デフォルトアイコンは白地となります。
変更する場合は画像をpopinfoサポート宛てに送付してください。弊社にて設定させていただきます。
※画像は最大ファイルサイズ1MB未満で正方形、144×144ピクセルが推奨

target_id による配信

送信対象のユーザーIDを、プラットフォームごとに指定します。
platform パラメータに含まれないプラットフォームを指定すると、エラーになります。
popinfo ID指定配信をご利用ください

target_id と filterの違いは?

target_id は popinfo ID の指定配信にご利用いただけます(filterでも代用可能)。
filter は popinfo ID のほかに絞込の条件を指定できます。
管理画面のユーザーID絞り込みに反映されるのはfilterで指定した場合のみになります。

サンプル

  • iPhone のユーザーID XXXX-1 及び、XXXX-2 へと配信
{
  ..(略)..
  "target_id": {"iphone": ["XXXX-1", "XXXX-2"]},
  ..(略)..
}



  • iPhone のユーザーID XXXX-1 及び、Android のユーザーID YYYY-1 へと配信
{
  ..(略)..
  "target_id": {"iphone": ["XXXX-1"], "android": ["YYYY-1"]},
  ..(略)..
}


リクエストのサンプル

{
  "content": "本文",
  "platform": [
    "iphone",
    "android"
  ],
  "delivery_type": 1,
  "popup": "ポップアップ文字列",
  "content_type": "text/plain",
  "title": "件名",
  "url": "http://google.com",
  "category": "カテゴリー",
  "type": "instant",
  "icon": "http://cdn1.iconfinder.com/data/icons/yooicons_set01_socialbookmarks/128/social_google_box.png"
}

レスポンス

name タイプ 説明
id 整数 作成または編集された配信またはフォーマットのID
テスト送信APIの場合、常に -1 を返します。

レスポンスのサンプル

{
  "status": "OK",
  "result": {
    "id": 1
  }
}