Retrieving Leads
Once you've requested an access token, you'll be able to start making calls to the API.
Requests & Responses
A collection is a listing of objects, for example /api/v4/leads.jsonld
will show you a list of available leads on the enterprise. You can then request more information about a specific object by making an item request, simply by adding the id to the end of the parent request, e.g. /api/v4/leads/11001.jsonld
.
Using the .jsonld
extension you'll be able to see more context about the api end point, such as supported filters and ordering options.
For example:
{
"@context": "/api/v4/contexts/Lead",
"@id": "/api/v4/leads",
"@type": "hydra:Collection",
"hydra:member": [
{
"@id": "/api/v4/leads/53284",
"@type": "Lead",
"id": 53284,
"publisherSubId": null,
"formHash": "129",
"createdTs": "2018-06-21T08:52:48+00:00",
"postcode": "",
"addressLine1": "",
"addressLine2": "",
"addressLine3": "",
"addressLine4": "",
"firstName": "Danny",
"lastName": "Hannah",
"email": "danny+ciscotest1@convertrmedia.net",
"telephone": "07702695392",
"integration": false,
"overAllocation": false,
"visible": true,
"processrStatus": 1000,
"score": 100,
"hardfail": false,
"maxScore": 100,
"baseCurrencyPublisherPayout": "0.00",
"publisherPayout": "0.00",
"baseCurrencyAdvertiserPayout": "0.00",
"advertiserPayout": "0.00",
"leadData": [
{
"@id": "/api/v4/lead-datas/1528942",
"@type": "LeadData",
"name": "emailDomain",
"value": "@convertrmedia.net"
},
{
"@id": "/api/v4/lead-datas/1528943",
"@type": "LeadData",
"name": "createdDate",
"value": "2018-06-21"
},
{
"@id": "/api/v4/lead-datas/1528944",
"@type": "LeadData",
"name": "country",
"value": "United Kingdom"
},
{
"@id": "/api/v4/lead-datas/1528950",
"@type": "LeadData",
"name": "leadHash",
"value": "27cb08764a6e16099ace1d580c5e4d5d"
}
...
],
"leadNotes": [
"/api/v4/lead-notes/90628",
"/api/v4/lead-notes/90629",
"/api/v4/lead-notes/90632",
"/api/v4/lead-notes/90633"
],
"campaign": "/api/v4/campaigns/44064",
"qaResult": {
"@id": "/api/v4/lead-qa-results/1",
"@type": "LeadQaResult",
"name": "Valid"
},
"leadFlag": {
"@id": "/api/v4/lead-flags/1",
"@type": "LeadFlag",
"name": "Valid"
},
"leadProcessrJobs": [
"/api/v4/processr-job-leads/517719",
"/api/v4/processr-job-leads/517720",
"/api/v4/processr-job-leads/517722"
]
},
...
],
"hydra:totalItems": 21,
"hydra:view": {
"@id": "/api/v4/leads?createdTs%5Bafter%5D=2018-06-20&access_token=ZmI2ZjE4OGVkMDhjYjBkZjNjZmZjOTU0ZWY4MGQ4OGU5ODYxODk3N2RhYTA1NWE0ZWRmN2ZiYTVmMzUyZTFhMQ&page=1",
"@type": "hydra:PartialCollectionView",
"hydra:first": "/api/v4/leads?createdTs%5Bafter%5D=2018-06-20&access_token=ZmI2ZjE4OGVkMDhjYjBkZjNjZmZjOTU0ZWY4MGQ4OGU5ODYxODk3N2RhYTA1NWE0ZWRmN2ZiYTVmMzUyZTFhMQ&page=1",
"hydra:last": "/api/v4/leads?createdTs%5Bafter%5D=2018-06-20&access_token=ZmI2ZjE4OGVkMDhjYjBkZjNjZmZjOTU0ZWY4MGQ4OGU5ODYxODk3N2RhYTA1NWE0ZWRmN2ZiYTVmMzUyZTFhMQ&page=3",
"hydra:next": "/api/v4/leads?createdTs%5Bafter%5D=2018-06-20&access_token=ZmI2ZjE4OGVkMDhjYjBkZjNjZmZjOTU0ZWY4MGQ4OGU5ODYxODk3N2RhYTA1NWE0ZWRmN2ZiYTVmMzUyZTFhMQ&page=2"
},
"hydra:search": {
"@type": "hydra:IriTemplate",
"hydra:template": "/api/v4/leads{?id,id[],email,campaign.id,campaign.id[],order[id],createdTs[before],createdTs[strictly_before],createdTs[after],createdTs[strictly_after],updatedTs[before],updatedTs[strictly_before],updatedTs[after],updatedTs[strictly_after]}",
"hydra:variableRepresentation": "BasicRepresentation",
"hydra:mapping": [
{
"@type": "IriTemplateMapping",
"variable": "id",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "id[]",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "email",
"property": "email",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "campaign.id",
"property": "campaign.id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "campaign.id[]",
"property": "campaign.id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[id]",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "createdTs[before]",
"property": "createdTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "createdTs[strictly_before]",
"property": "createdTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "createdTs[after]",
"property": "createdTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "createdTs[strictly_after]",
"property": "createdTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "updatedTs[before]",
"property": "updatedTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "updatedTs[strictly_before]",
"property": "updatedTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "updatedTs[after]",
"property": "updatedTs",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "updatedTs[strictly_after]",
"property": "updatedTs",
"required": false
}
]
}
}
Under the "hydra:search" property, you'll you'll see a template result which shows all available options which can be passed through to the end point.
Under "hydra:mapping", you'll notice a detailed breakdown of each of the template items, whether it's required and what property it applies too. Some example requests are as follows:
Get full collection:
GET https://{enterprise}.cvtr.io/api/v4/leads.jsonld?access_token=***
Get more information for a specific object by id:
GET https://{enterprise}.cvtr.io/api/v4/leads/11001.jsonld?access_token=***
The following request will filter the collection by a single id, or the second example will filter by multiple lead ids.
GET https://{enterprise}.cvtr.io/api/v4/leads.jsonld?id=11001&access_token=***
GET https://{enterprise}.cvtr.io/api/v4/leads.jsonld?id[]=11001&id[]=11000&access_token=***
Changing the ordering of the collection to order the results by id descending.
GET https://{enterprise}.cvtr.io/api/v4/leads.jsonld?order[id]=desc&access_token=***
You can, of course, combine both multiple ordering options and filters to make your request very specific.