Send Lead Prosper leads to Juiced
This guide adds Juiced as a buyer inside a Lead Prosper campaign, so leads post to the Juiced API as a Direct Post buyer or a Ping Post buyer.
Route: Lead platform as buyer. In Lead Prosper, add Juiced as a Direct Post or Ping Post buyer in the campaign, post JSON to the Juiced API with a bearer token header, and map the response in the Response Parser.
You need a Lead Prosper campaign with the fields Juiced requires, a Juiced source (Vendor if a vendor runs the Lead Prosper account, Internal if it is yours), its bearer token, and the field names from View API Spec.
The gotcha: Juiced answers 201 for sold and unsold leads alike. Map ACCEPTED to /data/status equal to accepted, not to the HTTP status code, or every unsold lead is counted as sold.
Before you start
- In Lead Prosper: a campaign whose fields cover what Juiced needs (at least
zip), and access to add buyers to it. Lead Prosper says every buyer runs independently in its campaign with its own pricing, caps, filters, payload and response mapping (What is a buyer). - In Juiced: a source, its bearer token, and the endpoint and field names from View API Spec.
- Pick the source type. Use Vendor when a vendor uses Lead Prosper to send you leads, and Internal when the leads are your own. A ping returns its id in
data.id, and the post then carries it asping_id. A vendor source reads its price fromdata.price(ping reference). - Optional partner header. If Juiced gave you a partner ID for partner-attributed traffic, also send
X-Partner-Id. Leave it out otherwise.
Step by step
-
Create a source in Juiced and copy a token
Go to Ingest > Sources > New source, set the Source type, turn on Test mode and click Create source. On the Authentication tab click New bearer token > Create token and copy it. Open Overview > More actions (⋯) > View API Spec for the endpoint and field names. See setting up a source.
-
Add a buyer to the campaign
In the campaign, add a buyer and choose Direct Post for one request per lead, or Ping Post to ping first and post only after Juiced accepts (buyer types). Lead Prosper says new buyers are set to Paused by default (What is a buyer). The articles do not name the button to add one, so check in your account.
-
Set the request
In the Payload Builder, set Request Type to POST and Posting URL to
https://usejuiced.com/api/v1/leads. Choose JSON as the payload type. Under Headers addAuthorizationwithBearerand your token, andAccept: application/json. Lead Prosper fillsContent-Typefrom the payload type (Payload Builder, Direct Post setup). -
Build the JSON payload
Add one key per Juiced field and insert the campaign field token as its value, for example
first_name={{first_name}}. Keys must match the Juiced field Title exactly, including case. -
Set up the ping (Ping Post only)
Set the ping URL to
https://usejuiced.com/api/v1/pingwith the same headers, and send only the fields marked Required for ping (alwayszip). Every valid ping returns200, so read the body. In the Response Parser for the PING step, paste a sample Juiced ping response, selectmatchedin/data/statusand choose ACCEPTED. Select the price in/data/priceand choose Real-Time Price, then click Apply Configuration. In the post payload addping_idwith the{{lp_ping_response:KEY}}token the parser generates when you select theidunderdata(check the path syntax in your account) (Ping Post buyer setup, Response Parser Tool). -
Map the post response
In the Response Parser, paste a sample Juiced post response. Select
acceptedin/data/statusand choose ACCEPTED, then selectduplicateand choose DUPLICATED. Lead Prosper writes nested keys as slash paths, as in its/bids/0/payoutexample. Click Apply Configuration. Price options for a Direct Post buyer vary, so check in your account (Response Parser Tool). -
Test, then resume the buyer
Save, open the Test Buyer Tool, and send a lead with zip
00001(accepted) and another with00003(rejected). In Juiced, check Entries > Incoming logs with the Test only filter. When results match, turn off Test mode in Juiced and click Resume on the buyer (test and go live).
Field mapping
| Juiced key | Lead Prosper value |
|---|---|
first_name, last_name | The campaign fields, for example {{first_name}} |
email, phone | Campaign fields; use a payload transformer if Juiced expects a different phone format |
zip | The zip code field. Always required, on the ping and the post |
ping_id | The {{lp_ping_response:KEY}} token for data.id (Ping Post buyers only) |
| Custom answers, sub IDs, UTM values | Campaign or computed fields, posted to keys you add on the Juiced source's Fields tab |
trusted_form_cert_url | The campaign field holding the certificate URL, once the field exists in Juiced |
Example request
Headers on the ping and the post:
Authorization: Bearer <your token>
Content-Type: application/json
Accept: application/json
X-Partner-Id: <partner ID, optional>
Post body as Lead Prosper sends it after an accepted ping:
{
"ping_id": "ping_01HZX4K2M8",
"first_name": "Jane",
"last_name": "Doe",
"email": "jane@example.com",
"phone": "5555550100",
"zip": "00001"
}
For a Direct Post buyer, send the same body without ping_id. See the leads and ping API references. Responses wrap the result in data.
Response parsing
Set the Lead Prosper response parser so it reads Juiced's answers like this:
| Juiced returns | Meaning | Lead Prosper setting |
|---|---|---|
Ping 200: data.status matched, data.id, data.price | Matched; post with this id | ACCEPTED, Real-Time Price, and ping_id from data.id |
Ping: no_match, duplicate, rejected | No post needed | Leave unmapped |
201 + data.status accepted | Sold or accepted, with its data.price | ACCEPTED |
201 + data.status rejected | Received, not sold, price 0 | Leave unmapped, so it is not counted as accepted |
201 + data.status duplicate | Duplicate, not sold, price 0 | DUPLICATED |
401 unauthenticated | Missing or invalid credentials | Failed. Fix the Authorization header |
422 | Read error.code (for example validation_failed or ping_mismatch) and the field errors | Failed. Fix the field and resend |
The data.status values above are Juiced's default mapping. Confirm them on your source's API spec before you go live.
TrustedForm and Jornaya
If your Lead Prosper campaign collects a TrustedForm certificate URL or a Jornaya LeadiD, add a field such as trusted_form_cert_url or jornaya_leadid to the Juiced lead category or source, mark it Deliverable if your buyers ask for it, and add that key to the post payload. Details are in passing TrustedForm and Jornaya to Juiced.
Troubleshooting
- Every lead shows as accepted. ACCEPTED is mapped to the HTTP status code instead of the
statusvalue. Juiced answers201for sold and unsold leads, so map ACCEPTED to/data/statusequal toacceptedonly. - Unauthorized (401). A space after
Beareris missing or doubled, or a line break was pasted with the token. A new token also expires the old one 24 hours later. - 422 on the post after a ping. Read
error.codein the response:ping_mismatchmeans the post does not match its ping. Check thatping_idcarriesdata.idfrom the ping and the post repeats the same ping fields. - Fields missing in Juiced. A payload key does not match a Juiced field Title. Copy the keys from View API Spec.
- Test leads land in Audit. The zip was not a test zip, or test mode was off. Use
00001to00005.
More fixes in webhook troubleshooting.
Frequently asked
Can Lead Prosper send leads to Juiced?
Yes. Add Juiced as a Direct Post or Ping Post buyer in a Lead Prosper campaign and post JSON to the Juiced API with a bearer token in the Authorization header.
Does Juiced support Lead Prosper ping post?
Yes. Lead Prosper pings the Juiced ping endpoint and posts the full lead with ping_id set to data.id from the ping response. A matched ping returns data.price, which Lead Prosper can read as the real-time price.
How should Lead Prosper tell a sold lead from an unsold one?
Juiced returns HTTP 201 for both. In the Response Parser, map data.status accepted to ACCEPTED and duplicate to DUPLICATED. A rejected status means received but not sold, with price 0.
Should the Juiced source be Vendor or Internal?
Use Vendor when a vendor runs the Lead Prosper account and sends you leads, and Internal when the leads are your own.
How do I pass a TrustedForm certificate from Lead Prosper to Juiced?
Add a field such as trusted_form_cert_url to the Juiced lead category or source, mark it Deliverable if buyers need it, and add that key to the Lead Prosper post payload.
Route every Lead Prosper lead to the right buyer
Juiced routes each lead to your buyers by bids, caps and criteria, and moves unsold leads to your marketplace.
Scale your lead business, without limits
Juiced puts you in full control of your leads, routing, and revenue, so you can automate, optimize, and grow without chaos.
