Sky Lane.

API Documentation

Reference for the Sky Lane Network ping-post API. Live credentials are issued to approved partners after onboarding — this reference describes the interface you'll integrate against.

v1 REST + JSON Bearer auth Signed webhooks

Overview

The Sky Lane Network API follows the standard ping-post pattern used across the lead exchange industry. Sellers ping a subset of lead fields to check buyer interest and pricing, then deliver the full post to the buyer that accepted the ping. Buyers configure campaigns with acceptance criteria and receive pings and posts against those campaigns in real time.

Base URL
https://api.skylanenetwork.com/v1

Content type
application/json

Authentication

All requests require a bearer token issued to your account. Sandbox keys are prefixed sk_test_, live keys are prefixed sk_live_. Keys are scoped to either buyer or seller access.

Authorization: Bearer sk_live_51H8x...

Rate limits

Default limits are 120 requests/minute per key for ping/post endpoints and 30 requests/minute for read endpoints. Limits scale with campaign volume — contact your account manager to raise them. Rate-limited responses return 429 with a Retry-After header.

POST

/leads/ping

Submitted by sellers to check buyer interest and pricing for a lead before delivering the full record. Only qualifying fields are required — never full PII — at the ping stage.

Request

{
  "vertical": "personal_loan",
  "state": "OH",
  "credit_band": "600-679",
  "income_monthly": 3200,
  "loan_amount_requested": 4000,
  "source_url": "https://example-affiliate.com/quote",
  "consent": {
    "tcpa": true,
    "language_version": "v3",
    "captured_at": "2026-08-11T14:02:31Z",
    "ip_address": "203.0.113.42"
  }
}

Response — 200 OK

{
  "ping_id": "pg_9f3d2a",
  "accepted": true,
  "bid": 18.50,
  "currency": "USD",
  "buyer_ref": "cmp_442",
  "expires_in": 120,
  "post_url": "/v1/leads/pg_9f3d2a/post"
}
POST

/leads/:ping_id/post

Delivers the full lead record to the buyer that accepted the ping. Must be called within the expires_in window returned by the ping response.

Request

{
  "first_name": "Alex",
  "last_name": "Morgan",
  "email": "alex.morgan@example.com",
  "phone": "+16145550134",
  "address": {
    "line1": "142 Maple St",
    "city": "Columbus",
    "state": "OH",
    "zip": "43215"
  },
  "employment_status": "employed_full_time"
}

Response — 201 Created

{
  "lead_id": "ld_7c21ff",
  "status": "delivered",
  "price": 18.50,
  "delivered_at": "2026-08-11T14:03:04Z"
}
GET

/leads/:lead_id

Returns delivery status, acceptance state, and return history for a previously posted lead.

{
  "lead_id": "ld_7c21ff",
  "status": "accepted",
  "returned": false,
  "return_reason": null
}
GET

/campaigns

Lists active campaigns visible to your account, including vertical, geo, and price-band filters. Buyers use this to confirm live filter configuration; sellers use it to preview which of their pings are likely to be accepted.

{
  "campaigns": [
    {
      "campaign_id": "cmp_442",
      "vertical": "personal_loan",
      "states": ["OH", "IN", "KY"],
      "status": "active"
    }
  ]
}

Webhooks

Configure a webhook URL in your partner dashboard to receive asynchronous status updates. Payloads are signed with an X-SLN-Signature HMAC header.

EventFires when
lead.acceptedA posted lead is accepted by the buyer
lead.rejectedA ping or post is declined
lead.returnedA buyer disputes and returns a delivered lead
campaign.updatedA campaign's filters, floor, or status changes

Field dictionary

Common fields shared across verticals. Each vertical adds its own qualifying fields on top of this base set — the full dictionary per vertical is shared during onboarding.

FieldTypeStageNotes
verticalstringpingVertical slug, see Verticals page
statestringpingTwo-letter USPS code
consent.tcpabooleanpingMust be true; required on every lead
consent.captured_atISO 8601pingTimestamp consent was collected at source
source_urlstringpingPage where the consumer opted in
first_name / last_namestringpostFull PII — post stage only
email / phonestringpostFull PII — post stage only

Errors

CodeMeaning
400Malformed request or missing required field
401Missing or invalid bearer token
403Key not scoped for this vertical or action
409Duplicate lead within suppression window
422Consent missing or ping/post window expired
429Rate limit exceeded

Getting credentials

API access is provisioned once a partner agreement is in place. Reach out with your traffic sources or buying criteria and we'll issue sandbox credentials alongside your onboarding call.

Request API access