Public project key
Safe to include in your app. It is scoped to one project and authorizes resolve, match, restricted events, and optional client link creation.
Start with an SDK, raw HTTP, or one prompt for your coding agent. Ferry handles routing, deferred matching, and link-level revenue attribution.
Create a project, connect the app, and open one test link. Ferry keeps the same payload through redirect, install, and first open.
Add your bundle ID or package name, store destination, and web fallback.
Install an SDK or use the public HTTP endpoints directly.
Confirm routing, inspect the returned data, and report your first event.
curl https://api.ferrylink.io/v1/resolve \
-X POST \
-H "Content-Type: application/json" \
-H "X-Ferry-Key: pk_your_project_key" \
-d '{
"url": "https://summer.feryl.io/welcome"
}' Safe to include in your app. It is scoped to one project and authorizes resolve, match, restricted events, and optional client link creation.
Server-side only. Use it for full link management, analytics, domains, and agent-driven workflows. Never ship it in a client app.
Ferry’s API is designed so an agent can inspect the project, pick the right SDK, and wire up the complete attribution path.
Add Ferry deep linking to this app.
Use the platform SDK and the Ferry public key from
the environment. Handle the incoming data payload,
then report signup and purchase events.
Never place an sk_ key in the client app. Ferry tries deterministic methods first and only uses fingerprint matching when stronger signals are unavailable. Ambiguous candidates return no match.
/v1/resolve Resolve a Ferry URL and return its link payload.
/v1/match Match the first app open to the click that led to install.
/v1/events Report supported product events for attribution.
/v1/links Create a short-lived data-only link when enabled for the project.