Appy
← 返回博客
指南

一文看懂安装回传与 webhook

回传告诉广告平台:它带来的点击变成了安装。webhook 则告诉你自己的服务器。两者怎么运作,又该怎样安全地接收。

2026年10月15日•阅读约 4 分钟

广告平台和联盟平台按安装付费,所以每一次安装都得通知到它们。归因服务商的做法是调用它们给你的一个 URL,这就是回传。把同样的请求指向你自己的后端,就是 webhook。

click ID 怎样走完一个来回

广告平台

Appy

  1. 01点击
    GET acme.appy.to/spring?clickid=a1b2c3

    广告平台把自己的 click ID 加到你的链接上。

  2. 02安装
    install → /spring
    clickid = a1b2c3

    首次启动和这次点击对应起来。

  3. 03回传
    GET postback.network.example/install
        ?click_id=a1b2c3

    同一个 ID 原样送回,广告平台记一次转化。

链接上没有 click ID,就没有回传。用一次真实点击做端到端测试。

回传

  • 发给广告平台
  • GET,参数在 URL 里
  • 带着平台的 click ID

webhook

  • 发给你自己的服务器
  • POST,JSON 请求体
  • 带着安装、链接和事件

安全的接收端检查四件事

签名
做法对时间和请求体做 HMAC-SHA256
防止伪造请求
时效
做法超过 5 分钟就拒绝
防止重放
投递 ID
做法保存处理过的 ID
防止重复计数
速度
做法先回 2xx,稍后处理
防止多余的重试
用收到的原始请求体验签。JSON 重新序列化后,签名就对不上了。

验证 Appy webhook

Node.js

import crypto from 'node:crypto';

export function verifyAppySignature(header, rawBody, secret) {
  const parts = Object.fromEntries(header.split(',').map((part) => part.split('=')));
  const age = Math.abs(Date.now() / 1000 - Number(parts.t));
  if (!parts.t || !parts.v1 || age > 300) return false;
  const expected = crypto.createHmac('sha256', secret).update(`${parts.t}.${rawBody}`).digest('hex');
  if (parts.v1.length !== expected.length) return false;
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1));
}

你的接口挂了的时候

单次请求超时
10 秒

单次请求超时

429、5xx 或超时后重试
5

429、5xx 或超时后重试

最后一次重试前的等待
12 小时

最后一次重试前的等待

投递日志
30 天

投递日志

Appy 把安装发到哪里

在 Enterprise 套餐中,每个应用最多 10 个回传,上线前都可以在后台测试。

新安装

带签名,自动重试

  • 联盟或 CPI 平台送回它的 click ID
  • 你的后端完整 JSON webhook
  • 你的 CRM只发购买
  • Meta 或 Google 投放优化不支持
Meta 和 Google 只接受认证合作伙伴或它们自己 SDK 的数据。

延伸阅读

常见问题

什么是 S2S 回传?

一种服务器到服务器的请求,带着广告平台的 click ID,告诉它某次点击变成了安装。

怎样避免重复计数?

重试沿用同一个投递 ID。已经处理过的 ID 直接忽略。

怎么确认 webhook 真的来自 Appy?

检查 Appy-Signature 请求头,超过五分钟的请求一律拒绝。

可以把回传发给 Meta 或 Google Ads 吗?

用于投放优化不行。回传适合联盟平台、达人营销工具和你自己的系统。

继续探索

指南
2026年10月15日
4 分钟阅读

不用 MMP 也能做 Apple Ads 归因

应用里取一个 token,服务器调一次接口,就能知道安装来自哪个广告系列和关键词,不需要 IDFA。

apple ads
adservices
attribution
ios
阅读文章
指南
2026年10月15日
4 分钟阅读

在 Android 上解密 Meta Install Referrer

读取并解密 Facebook 和 Instagram 的 referrer,把安装归到广告系列、广告组和广告,浏览归因也包括在内。

meta install referrer
facebook ads
instagram ads
android
阅读文章
指南
2026年8月14日
11 分钟阅读

不用 SDK 的延迟深度链接:底层到底是怎么运作的

不嵌入归因 SDK,也能把链接意图带过应用安装这道坎。本文讲清 Android 和 iOS 上什么能真正穿过商店边界、什么会断掉,以及每种变通方案的隐私代价。

deferred deep linking
install referrer
ios
android
阅读文章

想看更多内容?浏览 博客全部主题.

把每次安装送到该去的地方

Appy 为来自链接、二维码、Apple Ads、Google Ads 和 Meta 的安装做归因,再把每一次安装发出去,带签名,自动重试。