Branch.io,为我的数据库中的每个用户创建我的应用程序的推荐链接,以便我可以使用他们的推荐链接批量发送电子邮件给我的用户

时间:2018-04-12 14:57:06

标签: branch.io referrals

我知道我可以在针对给定用户的本机应用中创建引荐链接。

branch.setIdentity(userId);
const branchUniversalObject = await 
branch.createBranchUniversalObject(..);
const { url } = await branchUniversalObject.generateShortUrl(linkProperties);

但我想要做的是为我的数据库中的每个用户创建一个唯一的推荐链接。不是在我的移动应用程序中,而是在管理员Web应用程序(用节点编写)中,这样我就可以通过他们独特的推荐链接向我的所有用户发送电子邮件。

如果有节点包但没有

,会做类似的事情
users.forEach(user => {
  branch.setIdentity(user.userId);
  const branchUniversalObject = await branch.createBranchUniversalObject(..);
  const { url } = await branchUniversalObject.generateShortUrl(linkProperties);
  saveUserReferalLink(user, url);
});

我一直在关注API

https://docs.branch.io/pages/apps/api/

但不太确定我需要做什么

创建一个链接 https://api.branch.io/v1/url 并将用户设置在阶段参数?

感谢您提前提供任何帮助

更新

根据Evgeniy Haydamakha的建议,documentation确实说了以下

推荐人链接

  • 使用$ identity_id
  • 创建用户
  • 使用链接数据字典
  • 中步骤1的$ identity_id创建链接

但是我一直在努力创建用户。文档建议创建如下用户

curl -XPOST https://api.branch.io/v1/profile \
  -d '{
    "branch_key":"MY_KEY",
    "identity":"steve",
    "identity_id":"444"
}'

问题是identity_id应该是什么? 444例如不起作用它不会创建用户。 id 12345678确实有效,但最终在仪表板的liveview选项卡的identityness选项卡中创建了一个用户,日期为2014-05-28,id似乎与时间有关。理想情况下,我根本不会传递一个identity_id,它会自动生成它,就像setIdentity('steve')那样。

然后我发现这篇文章,这表明我根本不需要创建一个用户,而是将我的身份传递给链接,即上面例子中的“steve”作为分支开发者身份,如果没有identity_id(与身份相关联的分支身份ID)将创建一个新身份。

https://stackoverflow.com/a/46358311/9636627

哪个好,我已经尝试了它并且它有效,现在唯一的问题是新创建的用户没有出现在liveview的“identites”标签中。我知道用户存在,因为如果我使用读取标识传递给例如“steve”,我会得到一个带有新“identity_id”(分支标识ID)的响应。

总结我的问题是

创建新用户时,identity_id(分支机构ID)实际应该是什么?

为什么当我创建新链接并传递开发者身份时,新用户不会出现在实时视图的“身份”标签中?

1 个答案:

答案 0 :(得分:0)

要通过API创建引荐链接,您需要根据Branch documentation创建用户identity_id(或手头有身份ID),然后包含 $ identity_id 进入数据字典,如下所示:

startActivityForResult(intent,GALLERY_INTENT);