运营平台使用指南
  • 产品简介
  • 快速上手 - App
  • 快速上手 - Web
  • 快速上手 - H5
  • 快速上手 - 小程序
  • 开发者文档
    • Webhook 通道对接
    • SDK集成
      • SDK更新日志
      • iOS SDK
        • iOS SDK 概述
        • 弹窗 SDK(iOS)
        • 推送 SDK(iOS)
        • 资源位 SDK(iOS)
        • 集成后调试指南
        • 常见问题
        • iOS 推送证书设置指南
        • iOS推送1.3.2及以前推送版本升级指导
        • iOS SDK 1.1.2及以下旧版本升级指导
      • Android SDK
        • 弹窗 SDK (Android)
        • 推送 SDK(Android)
        • 资源位 SDK(Android)
      • Flutter SDK
        • 弹窗 SDK(Flutter)
      • RN SDK
        • 弹窗 SDK( RN)
      • 小程序SDK
        • 弹窗SDK(微信小程序)
        • 资源位SDK(微信小程序)
        • 调试指南(小程序)
        • 小程序获取设备访问ID
        • 弹窗SDK(支付宝小程序)
        • 小程序集成常见问题
      • Web弹窗SDK
      • H5弹窗SDK
    • 厂商通道
      • 华为推送通道集成指南
      • 小米推送通道集成指南
      • 魅族推送通道集成指南
      • vivo推送通道集成指南
      • OPPO推送通道集成指南
    • API参考
      • 弹窗API
      • 推送API
  • 产品使用文档
    • 权限配置
    • 弹窗
      • 创建弹窗
      • 弹窗数据
      • 弹窗管理
      • A/B测试
    • 资源位
      • 创建资源位
      • 轮播图设置
      • 资源位数据
    • 推送
      • 概述
      • 推送准备
      • 创建推送
      • 推送数据
    • 短信
      • 阿里云短信
      • 云片短信
      • 创蓝短信
    • Webhook
    • 用户分层
    • 流程画布
      • 流程画布核心功能
      • ABtest
  • FAQ
    • 弹窗 FAQ
    • 推送(Push) FAQ
    • 术语解释
Powered by GitBook
On this page
  • 1. 概述
  • 2. 认证
  • 3. 使用注意
  • 4. 接口说明
  • 接口:素材上传
  • 接口:创建消息
  • 接口:更新消息
  • 接口:删除消息
  • 接口:获取所有消息

Was this helpful?

  1. 开发者文档
  2. API参考

弹窗API

PreviousAPI参考Next推送API

Last updated 4 years ago

Was this helpful?

1. 概述

为满足广大客户更灵活创建弹窗的诉求,GrowingIO 提供了一套创建弹窗的API。本文档旨在说明一些调用流程,逻辑及相关接口说明。

2. 认证

为保证数据安全,GrowingIO所有的API服务,请求Head中需要携带 Token。

Token 获取详见:

获取到 Token 后所有的 HTTP 请求头都需要带上 X-Client-Id 和 Authorization,具体如下:

名称

类型

描述

示例

X-Client-Id

string

GrowingIO分配的公钥,请在GrowingIO后台“项目配置”页面获取

X-Client-Id: 123abc

Authorization

string

认证后获取到的Token

Authorization: {替换成获取到的Token}

例子:

X-Client-Id: 7f8it37dxdt91x4n5cvuvccc1cgaqe21
Authorization:  EcWylTb23T5yoNMkna51VsyVfGovQHMVc1neljuK5TpqNTz9U5c9Z2BYZLUos244

3. 使用注意

  1. 接口调用频率限制:单个 Token 调用限制 1200次/分钟。

  2. 项目UID 指的是访问项目的时候,页面 URL 以 /projects/:project_uid 开头,例如 https://www.growingio.com/admin/projects/nxog09md/dashboard 中的 "nxog09mx"。

  3. 创建站内消息需要使用分群作为目标用户,分群获取接口参考文档:

  4. 创建消息需要指定对应应用的 ID,通过以下接口获得(请求Head中均需要携带Token )

GET https://www.growingio.com/api/v1/projects/项目UID/meta/products

返回字段:

字段名

类型

说明

示例

id

string

产品编号

GQPDxPNm

name

string

名字

GrowingIO测试产品

displayName

string

产品显示名称,展示在deeplink页面

gio

activated

bool

是否有效

true

spn

string

spn

www.gioee.com

urlScheme

string

产品的URL Scheme

8137d31f4e7b819f

platform

string

平台

iOS

createdAt

long

创建时间

1522019721098

5. 创建站内消息需要先上传素材到GrowingIO服务,参素材上传接口

6. 接口调用流程:

4. 接口说明

接口:素材上传

URL:https://www.growingio.com/api/v1/projects/:project_uid/meta/marketing_medias

方法:POST

请求对象:

字段名

类型

说明

file

字符串

图片base64编码后的值。

请求示例:

Headers: 
Content-Type: application/json
X-Client-Id: 7f8it37dxdt91x4n5cvuvccc1cgaqe22
Authorization: EcWylTb23T5yoNMkna51VsyVfGovQHMVc1

Request Body:
{
  "file":"data:image/jpeg;base64,......."
}

返回示例:

{
 "url":"https://statics.growingio.com/media/20190813/3/1565873249372/test.jpeg"
 }

接口:创建消息

URL:https://www.growingio.com/api/v1/projects/:project_uid/meta/marketing_in_app_messages

方法:POST

请求对象:

字段名

类型

是否必填

说明

name

字符串

是

消息名称。建议使用业务含义名称+时间戳,不可重复,便于在管理后台查看使用。

示例:用户召回弹窗20190716170520

audience

字符串

是

目标人群。

分群:分群 id

访问用户:visitors

新访问用户:newVisitors

登陆用户:loginUsers

新登录用户:newLoginUsers

rule

对象

是

消息触发规则配置。

state

字符串

否

activated:上线(默认)

draft:草稿

stop:下线

archived:归档

content

对象

是

消息素材,图片的地址。

rule

字段名

类型

是否必填

说明

targets

对象数组

是

指定产品和跳转页面的关系。

action

字符串

是

打开应用:appOpen

自定义埋点事件:事件key

limit

数字

是

本条消息最大展示次数。

startAt

数字

否

预约上线起始时间,unix时间戳

endAt

数字

否

预约下线时间unix时间戳

triggerCd

数字

否

本条消息展示间隔,单位秒。

targets里每个target的结构:

字段名

类型

是否必传

说明

productId

字符串

是

产品ID,从上面的产品信息接口获取

type

字符串

是

点击转跳链接类型。

打开网页:“openH5”

打开应用内具体页面:“openUrl”

自定义参数:“custom”

url

字符串

是

点击跳转路径。网页需要制定具体协议,支持 http/https。

示例:com.growingio.push 或者

https://www.gio.com

parameters

对象

是

点击跳转携带参数,以 queryString 的形式添加到 url 后面。比如 {"key1": "value1"} 会转化为 "?key1=value1" 添加到 url 后。

示例:{"key1": "value1", "key2": "value2"}

请求示例:

Headers: 
Content-Type: application/json
X-Client-Id: 7f8it37dxdt91x4n5cvuvccc1cgaqe22
Authorization: EcWylTb23T5yoNMkna51VsyVfGovQHMVc1

Request Body:
{
	"name": "用户召回弹窗",
	"audience": "nPNYj7aR",
	"rule": {
		"targets": [{
				"productId": "L9GcmZo6",
				"type": "openUrl",
				"url": "MainActivity",
				"parameters": {
					"key1": "value1",
					"key2": "value2"
				}
			},
			{
				"productId": "a9xVmZo5",
				"type": "openUrl",
				"url": "ViewController",
				"parameters": {
					"key1": "value1",
					"key2": "value2"
				}
			}
		],
		"action": "appOpen",
		"limit": 2,
		"startAt": 1565870400000,
		"triggerCd": 86400
	},
	"content": "https://k8s-statics.growingio.com/media/20190523/3/1558601993407/test.png"
}

返回示例:

字段名

类型

说明

示例

id

字符串

消息ID

xL9GWJ96

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

 Response Data  

{
  "id" : "wL9GWJ96"
}

接口:更新消息

URL:https://www.growingio.com/api/v1/projects/:project_uid/meta/marketing_in_app_messages/:message_id

方法:PUT

请求体:同创建消息

接口:删除消息

URL:https://www.growingio.com/api/v1/projects/:project_uid/meta/marketing_in_app_messages/:message_id

方法:DELETE

Headers: 
Content-Type: application/json
X-Client-Id: 7f8it37dxdt91x4n5cvuvccc1cgaqe22
Authorization: EcWylTb23T5yoNMkna51VsyVfGovQHMVc1

返回:

HTTP/1.1 204 No Content

接口:获取所有消息

URL: https://www.growingio.com/api/v1/projects/:project_uid/meta/marketing_in_app_messages

方法:GET

Headers: 
Content-Type: application/json
X-Client-Id: 7f8it37dxdt91x4n5cvuvccc1cgaqe22
Authorization: EcWylTb23T5yoNMkna51VsyVfGovQHMVc1

返回:消息列表

GrowingIO接口认证
获取分群列表