パートナーアプリ向け
ユーザーが自分の進捗をBemelioに投稿。ビジュアルはあなたのカラーで。
アプリ内のボタンからBemelioが開き、「via あなたのアプリ」と署名された投稿がすでに用意されています。必要なのはリンクだけ。SDKもキーも不要です。
アクセスを申請アクセスは無料。投稿は必ずメンバー本人が確認します。



しくみ
- 1アプリにボタンをひとつ
トレーニング、読書、ランのあとに「Bemelioでシェア」を押すと、アクティビティを含むリンクが開きます。
- 2メンバーがBemelioで確認
投稿は適切な目標の中に用意済み。本人が内容を確認し、テキストを変えて、自分で投稿します。
- 3ストーリーがあなたのアプリを広める
ワンタップでストーリーにシェア。あなたのカラーとロゴ、「via あなたのアプリ」が友だちに届きます。
アプリがすること:リンクを開くだけ
SDKもサーバー間連携も不要です。アクティビティはパラメータ d に、base64urlでエンコードしたJSONとして入ります。
https://bemelio.com/partage?app=slug&outil=outil&d=base64url(JSON)リンクを作成
あなたのリンク
https://bemelio.com/partage?app=your-app&outil=lecture&d=eyJ0aXRyZSI6IueVsOmCpuS6uiIsInZpc3VlbCI6eyJ0aXRyZSI6IueVsOmCpuS6uiIsInBhZ2UiOjE0OCwidG90YWwiOjE4Nn19
JSONを見る
{
"titre": "異邦人",
"visuel": {
"titre": "異邦人",
"page": 148,
"total": 186
}
}このコードをスキャンして、スマホでリンクを試せます。
アプリが有効化されるまでは、リンクを開くとBemelioに丁寧なエラーメッセージが表示され、何も投稿されません。
ボタンは数行で
例は、いま作成したリンクを使っています。
func shareOnBemelio() {
let data: [String: Any] = [
"titre": "異邦人",
"visuel": ["titre": "異邦人", "page": 148, "total": 186],
]
guard let json = try? JSONSerialization.data(withJSONObject: data) else { return }
let d = json.base64EncodedString()
.replacingOccurrences(of: "+", with: "-")
.replacingOccurrences(of: "/", with: "_")
.replacingOccurrences(of: "=", with: "")
if let url = URL(string: "https://bemelio.com/partage?app=your-app&outil=lecture&d=\(d)") {
UIApplication.shared.open(url)
}
}すべてのツールを見る
共通フィールド
dtitre | string(48) | カードのタイトル(1行)。 |
texte | string(500) | メンバーに提案するメッセージ。本人が編集できます。 |
visuel | { } | 必須:ツールのビジュアルを描く数値。 |
stats | [3] | 任意:Bemelioがメンバーの言語で計算します。 |
ツール別のフィールド
visuel| ツール | フィールド | 必須データ |
|---|---|---|
読書 lecture | titre string(80) · auteur string(60) · page, total 0-20000 · jour 0-5000 · semaine [7] · serie 0-3650 · finDans 0-999 · fini bool · note 0-5 · lus [24] string(60) · cible 0-365 | titre | cible | lus |
ランニング course | km 0-1000 · duree 0-360000 (s) · dplus 0-20000 · trace [[lat, lon], ...] (100) | km + duree |
連続記録 serie | mois 0-11 · annee · coches [31] 1-31 · aujourdhui 0-31 · serie, record, prochain 0-100000 | serie |
サイクリング velo | km 0-2000 · semaines [8] · objectif · dplus 0-20000 · vitesse 0-200 | km |
ハイキング rando | km 0-500 · dplus, dmoins 0-20000 · altMax 0-9000 · saisonDplus | km |
水泳 natation | m 0-100000 · longueurs 0-4000 · bassin 0-100 · allure string(8) · semaines [8] | m |
瞑想 meditationヨガ yoga | min 0-1440 · jours [7] · objectif | min |
語学 langue | code string(3) · niveau, cible A1-C2 · min · mots 0-1000000 · serie | min | mots |
音楽 musique | min · jours [7] · bpm, cibleBpm 0-400 | min |
お絵描き dessin写真 photoタイマー chrono | min 0-100000 · jours [7] · unite string(14) | min |
執筆 ecriture | mots 0-1000000 · jours [14] · objectif · manuscrit 0-100 | mots |
料理 cuisine | recettes 0-1000 · cuisines [12] string(3) · niveau 0-4 · pct 0-100 | recettes | cuisines |
勉強 etudes | min · jours [7] · pct 0-100 · examDans 0-999 · matieres [5] 0-1 | min | pct |
貯金 epargne | pct 0-100 · mois 0-600 · versements金額は送らない | pct |
習慣 habitudes | jours [84] 0-1 · faites, prevues 0-100 · serie | prevues |
クライミング escalade | voies [24] { cote, res: onsight | flash | sent | project | failed } · max | voies[0] |
就職活動 emploi | envoyees, reponses, entretiens, offres 0-10000 | envoyees |
フォロワー audience | points [16] · palier · plateforme string(20) | points (2+) |
数値は正の値で、範囲内に丸められます。未知のフィールドは無視されます。必須データのないビジュアルはリンクごと拒否されます。リンク全体は最大6000文字です。
ルール
- 投稿は必ずメンバー本人が確認します。リンクが勝手に投稿することはありません。
- 金融系は金額を送らず、パーセンテージのみ。常にメンバー本人の実際の数値を使い、健康データは送りません。
- アクセスは無料です。
- アプリはBemelioによる有効化が必要です。ID、カラー、ツールをお渡しします。