首页
/ Mixpanel Data API Client 技术文档

Mixpanel Data API Client 技术文档

2024-12-23 10:41:43作者:宣海椒Queenly

1. 安装指南

1.1 使用 Gem 安装

你可以通过以下命令安装 mixpanel_client gem:

gem install mixpanel_client

1.2 使用 Gemfile 安装

如果你使用 Gemfile,可以在文件中添加以下内容:

gem 'mixpanel_client'

然后运行 bundle install 来安装 gem。

2. 项目的使用说明

2.1 初始化客户端

首先,你需要在 Ruby 脚本中引入 rubygemsmixpanel_client,然后初始化 Mixpanel::Client 实例:

require 'rubygems'
require 'mixpanel_client'

client = Mixpanel::Client.new(
  api_secret: 'changeme',
  timeout: 240, # 默认是 60 秒,增加以减少超时错误

  # 可选的 URI 覆盖(例如 https://developer.mixpanel.com/reference/overview)
  base_uri: 'api-eu.mixpanel.com',
  data_uri: 'example-data.com',
  import_uri: 'example-import.com'
)

2.2 请求数据

你可以通过 client.request 方法来请求数据。以下是一个示例,请求特定事件的属性数据:

data = client.request(
  'events/properties',
  event:     'Product Clicked',
  name:      'product-clicked',
  values:    '["value1", "value2"]',
  type:      'unique',
  unit:      'day',
  limit:      5,
  from_date: '2013-12-1', # 日期范围
  to_date:   '2014-3-1'   # 日期范围
)

2.3 使用时间间隔

你也可以使用时间间隔而不是明确的日期范围:

data = client.request(
  'events/properties',
  event:    'Product Clicked',
  name:     'product-clicked',
  values:   '["value1", "value2"]',
  type:     'unique',
  unit:     'day',
  limit:     5,
  interval: 7 # 时间间隔
)

2.4 导入数据

使用导入 API 来指定过去的时间。你需要在数据中包含 API 令牌,并将其编码为 JSON 和 Base64:

data_to_import = {
    'event' => 'firstLogin', 
    'properties' => {
        'distinct_id' => guid, 
        'time' => time_as_integer_seconds_since_epoch, 
        'token' => api_token
    }
}
encoded_data = Base64.encode64(data_to_import.to_json)

data = client.request('import', {:data => encoded_data, :api_key => api_key})

注意:每次只能导入一个事件。

3. 项目API使用文档

3.1 请求方法

client.request 方法用于向 Mixpanel API 发送请求。你可以通过传递不同的参数来获取不同类型的数据。

3.2 参数说明

  • event: 事件名称。
  • name: 属性名称。
  • values: 属性值数组。
  • type: 数据类型(如 unique)。
  • unit: 时间单位(如 day)。
  • limit: 返回结果的数量限制。
  • from_date: 开始日期。
  • to_date: 结束日期。
  • interval: 时间间隔(以天为单位)。

3.3 导入数据

导入数据时,需要将数据编码为 JSON 和 Base64,并使用 client.request 方法发送请求。

4. 项目安装方式

4.1 通过 Gem 安装

gem install mixpanel_client

4.2 通过 Gemfile 安装

Gemfile 中添加:

gem 'mixpanel_client'

然后运行 bundle install

4.3 开发环境

如果你是开发者,可以使用以下命令来运行测试和检查代码质量:

rake -T
rake spec
rake spec:externals
rubocop

以上是 Mixpanel Data API Client 项目的技术文档,希望对你有所帮助。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
178
263
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
868
514
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
130
183
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
288
323
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
373
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
600
58
GitNextGitNext
基于可以运行在OpenHarmony的git,提供git客户端操作能力
ArkTS
10
3