Remerge · AsyncAPI Specification

Remerge Webhooks

Version

View Spec View on GitHub CompanyAdvertisingAdTechMobileRetargetingDemand-Side PlatformUser AcquisitionMarketingAsyncAPIWebhooksEvents

AsyncAPI Specification

remerge-webhooks.yml Raw ↑
generated: '2026-08-12'
method: searched
source: >-
  https://help.remerge.io/hc/en-us/articles/360000810894-Click-Impression-Placeholders
  (the macro catalogue and the server-side forwarding behaviour),
  https://help.remerge.io/hc/en-us/articles/115002376365-How-to-set-up-postbacks-with-Adjust
  and
  https://help.remerge.io/hc/en-us/articles/5028262839826-How-to-set-up-Postbacks-with-AppsFlyer
  (the inbound postback leg).
description: >-
  Remerge's event/callback surface, captured as a webhook catalogue. There is no
  AsyncAPI document — Remerge publishes none, and none was found on any host or
  in its GitHub org, so nothing here was fabricated into a spec. What Remerge
  does operate is a two-way server-to-server callback contract: outbound, it
  fires client-registered Click and Impression Template URLs with macros
  substituted; inbound, measurement partners POST/GET attribution postbacks back
  to the Event Tracking API.
asyncapi_spec: null
asyncapi_spec_note: >-
  Probed https://remerge.events/asyncapi.yaml, /openapi.json and /.well-known/*
  (all 404 on 2026-08-12) and searched the github.com/remerge org — no event
  specification is published.
transport: HTTPS
encoding: query-string macro substitution into a client-supplied template URL
delivery_semantics: at-most-once (fire and forget; no documented retry or ack)
signing: none documented
subscription_management: >-
  Not self-service. Click and Impression Template URLs are registered with a
  Remerge Account Manager, not through an API or dashboard endpoint documented
  publicly.

outbound:
  description: >-
    Remerge substitutes macros into the partner's template URL and calls it
    server-side when the corresponding ad event occurs.
  events:
  - name: click
    trigger: A user clicks a Remerge-served ad.
    target: Client/partner-registered Click Template URL
    payload_style: URL macros
  - name: impression
    trigger: A Remerge ad impression is served.
    target: Client/partner-registered Impression Template URL
    payload_style: URL macros
  macros:
  - {placeholder: '{external_campaign_name_raw}', content: Campaign Name, example: remerge_ios}
  - {placeholder: '{campaign}', content: Campaign ID, example: '235266'}
  - {placeholder: '{ad_name}', content: Creative Name (file name), example: creative_banner_320_50.png}
  - {placeholder: '{ad}', alias: '{creative}', content: Creative ID, example: '34688'}
  - {placeholder: '{device_id_raw}', content: Google Advertising ID or Apple IDFA, example: DBC04712-89D2-4447-9855-559E49ACF8D7}
  - {placeholder: '{country}', content: Country, example: de}
  - {placeholder: '{partner}', content: Partner, example: applovin23}
  - {placeholder: '{publisher}', content: Publisher app id or package, example: com.gramgames.tenten}
  - {placeholder: '{click_id}', alias: '{clickid}', content: Click ID unique to the RTB impression slot, example: wCvxiqsvjH34EUCD}
  - {placeholder: '{{Ad.Label.Name.Encode}}', content: Creative Set / ad label name, example: christmas_2022}
  cost_macros:
  - {placeholder: cpc, content: cost_type, example: cpc}
  - {placeholder: '{{Campaign.BuyingPriceAsMoney.Float32 "USD"}}', content: amount, example: '0.23'}
  - {placeholder: usd, content: currency, example: 'usd, eur'}
  client_context:
    user_agent_and_ip: >-
      For a client-side Click URL the partner receives the User-Agent and IP
      directly from the device. For server-side click and impression forwarding
      Remerge passes the User-Agent header and puts the originating IP in
      X-Forwarded-For. Remerge explicitly has no separate macros for User-Agent
      or IP address.

inbound:
  description: >-
    The return leg — measurement partners and clients forward attributed events
    back to Remerge at the Event Tracking API, echoing the click_id, campaign
    and label they received on the outbound call.
  endpoint: https://remerge.events/event
  method: GET
  response: HTTP 204 (no body, no acknowledgement of acceptance)
  correlation_key: click_id
  payload_families:
  - {name: in-app event, docs: 'https://help.remerge.io/hc/en-us/articles/6078711583260-Event-Data-Forwarding'}
  - {name: attribution, docs: 'https://help.remerge.io/hc/en-us/articles/6056005123484-Attribution-Data-Forwarding'}
  - {name: BI / non-app event, docs: 'https://help.remerge.io/hc/en-us/articles/6055918247580-BI-Data-Forwarding'}
  - {name: SKAdNetwork, docs: 'https://help.remerge.io/hc/en-us/articles/6056007052060-SKAdNetwork-Data-Forwarding'}
  documented_partner_integrations:
  - {partner: Adjust, docs: 'https://help.remerge.io/hc/en-us/articles/115002376365-How-to-set-up-postbacks-with-Adjust'}
  - {partner: AppsFlyer, docs: 'https://help.remerge.io/hc/en-us/articles/5028262839826-How-to-set-up-Postbacks-with-AppsFlyer'}
  - {partner: Singular}
  - {partner: Branch}
  - {partner: Kochava}
  - {partner: Airbridge}
  - {partner: 'IGAWorks (Adbrix Original and Remaster)'}
  - {partner: mParticle}
  - {partner: ActionIQ}

gaps:
- No AsyncAPI or CloudEvents description of either leg.
- No payload signing, no shared secret on the outbound call, and no replay protection.
- >-
  No delivery guarantees, retry policy, or dead-letter behaviour is published
  for the outbound click/impression calls.
- >-
  The inbound leg's 204 is unconditional, so a partner cannot tell from the
  response whether Remerge accepted the event. The docs direct partners to
  confirm success with their Account Manager instead.