Skip to main content

Overview

With Server-Side Verification (SSV) for rewarded ads, Adrop sends a callback to your server URL when a user completes watching an ad. This lets you verify reward grants on your own server and prevent abuse. The callback payload is encrypted with your API key, so even if the URL is exposed, only a party holding the API key can decrypt its contents.

Setup

1

Prepare an API key

Create an API key first — it will be used to decrypt the SSV callback payload. SSV registration requires at least one active API key in the project.See Integrations & API Keys for instructions.
2

Register the SSV

Under [Management] > [Integrations] > Reward Ad SSV, click [+ Register Reward Ad SSV].
3

Send userId / customData from the SDK

Set userId and customData via setServerSideVerificationOptions() in the SDK. These values are included in the callback payload.See the SDK guides for each platform:
Only HTTPS URLs are accepted at registration/edit time. Private IPs (localhost, 10.x, 172.16–31.x, 192.168.x, 169.254.x) are blocked.

Request Specification

Adrop delivers the callback as follows. The request body is AES-256-GCM encrypted.
Each segment is a hex string separated by colons (:). After decryption, the plaintext JSON has the following shape:
transactionId is unique. If your server receives a transactionId that was already processed, handle it idempotently to avoid granting duplicate rewards.

Decrypting the Payload

The AES-256-GCM key is the raw API key hashed with SHA-256 (32 bytes).

Node.js

Python

SSV callbacks are designed so that only a party holding the Adrop API key can decrypt them, even if the URL is exposed. If the API key connected to the SSV is leaked, revoke it immediately on the server side and replace it with a new API key via the Integrations menu.

Editing and Deleting

Use the row menu in the Reward Ad SSV section to edit or delete an existing SSV.
  • Edit: Change the URL or the connected API key.
  • Delete: Callbacks will no longer be invoked. SDK-side userId / customData values continue to be stored in Adrop’s internal SSV log.

Integrations & API Keys

How to generate, manage, and revoke API keys

Report API

Query campaign performance and backfill revenue data via API