1. Get an API key
Reach out at surface.surf to request access. You’ll receive a key in the formatsurf_....
2. Make a request
Pass your key in theX-API-Key header. You can look up either a Kalshi ticker or a Polymarket token ID.
3. Read the response
source is the contract you queried. match is its cross-exchange counterpart. confidence is the match score — Surface only returns matches above 0.95.
It also works in reverse
Pass the Polymarket token ID to get the Kalshi side:Check your quota
Every response includes two headers:| Header | Value |
|---|---|
X-Match-Limit-Remaining | New unique matches remaining today |
X-Match-Limit-Reset | Next reset (midnight UTC, RFC3339) |