Suppose I have an existing Pardot visitor_id I get through cookies and then after a user submits a web form to me I invoke a Salesforce web service that creates a lead for me. How do I associate the lead to an existing Pardot visitor?
I don't know the definitive answer to your question but I think I can point you in the right direction.
- You've configured a CRM connector between Pardot and Salesforce
- You have access to the Pardot API
Here's your sequence of events
An anonymous visitor has browsed your site and a Pardot cookie was created by the Pardot tracking code, and you gain access to the visitor_id value from that cookie.
Somehow you've gained information from this person without telling Pardot and you've created a Lead record that represents them.
Pardot and Salesforce will synchronize (here's my assumption that you configured a connector) and a new Prospect will be created in Pardot that matches the Lead record in Salesforce.
At this moment the newly-created Prospect is not associated with the Visitor (visitor_id) that YOU know is the same human being.
Here's where the API comes in. You can use the API to tell Pardot that a specific visitor_id should match a specific Prospect.
Scroll to the bottom of this API documentation to see more: Visitors API Documentation
You can get the prospect_id from the API by searching for your new Prospect.