https://dialedapi.evomarketing.co
The SDK repository is the reference client for the public endpoints. Read it before writing your own integration.
Public endpoints
Record a click
string
required
The vanity host that was hit, without
www.string
The path after the domain. An unknown slug falls back to the domain’s root link.
string
The incoming query string. UTM values are stored on the click and forwarded to web destinations.
string
Referring URL. Falls back to the request’s own referrer header.
string
Used to detect
ios, android, or desktop.string
Two-letter country code from the edge, stored on the click.
string
Visitor IP. Hashed with a secret key for app links only, and never stored raw.
string
Where to send the visitor: the store URL for a matching mobile platform, otherwise the decorated web destination.
string
The minted
evc_… token.string
ios, android, desktop, or null.string
web or app.string
Used as the heading on the smart install page.
object
null for web links. For app links: ios_url, android_url, android_package (parsed from the Play URL’s id parameter), and fallback_url (the token-decorated web fallback).404 with {"error":"link_not_found"}.
Record an install
string
required
The brand’s public pixel key.
string
required
Persistent device install ID. Stripped and limited to 128 characters. This is the deduplication key.
string
required
ios or android.string
The
evc_… click token read from the clipboard at first launch.string
A creator code the new user typed in the app.
string
Reported app version.
string
ISO 8601 timestamp. Defaults to now.
boolean
boolean
true when this install ID was already recorded.object
install_id, platform, attributed, resolution_method (clipboard, code, ip, or unattributed), confidence, link, code, and creator. link, code, and creator are null when unattributed.Record an event
string
required
The brand’s public pixel key.
string
default:"purchase"
One of
purchase, renewal, refund, trial, signup, lead, custom, install.string
default:"pixel"
Send
sdk from a mobile app; anything else is recorded as pixel.string
The
evc_… token captured on the landing page. A token minted for another brand’s link never credits this brand.string
A creator code the customer typed at checkout.
string
Deduplication key, limited to 128 characters. Always send one.
string
Your own user id, or the persistent install ID for SDK purchases — that is what lets a purchase inherit its install’s attribution.
number
Value in major units.
amount_cents is accepted instead.string
default:"USD"
USD, CAD, EUR, GBP, or AUD. Anything else falls back to USD.string
ISO 8601 timestamp. Defaults to now.
boolean
boolean
true when the same (brand, event_type, transaction_id) already exists.403 for an invalid pixel key, 422 with invalid_event_type for an unknown event type.
Provider webhook
string
required
revenuecat, superwall, stripe, shopify, or apple.string
required
The connection’s
evw_… inbound token. This is the baseline authentication.boolean
integer
Ledger rows written.
integer
Events that were duplicates or map to no ledger row.
404 unknown_connection, 401 on a signature failure, 422 on an unparseable payload. Any error sets the connection’s status to error with last_error.
Portal endpoints
Authenticated by the client portal session and always scoped to the brand it resolves. Shared domains and another brand’s data are never writable.GET /api/client/attribution/setup is the only portal endpoint that returns the brand’s pixel key. The links list never exposes pixel keys or raw creator user ids — creator attribution comes back as an { id, name } object.Internal endpoints
EVO team only. Requires an admin JWT withuser_typ: "evo". Surfaced in the admin console under Sales Attribution.
Connections are created by the brand in its own portal, so there is no internal create endpoint.