Vouch has exposed specific resources via a REST API to perform certain functions of the platform externally. These endpoints are available to customers who are on the Enterprise tier.

The following guide outlines the various REST API endpoints available around the Campaign feature within the Platform.

Create a Campaign

Create a new Campaign within your entity.

Notes

  • A Campaign must have at least one question in order for the API request to be successful.

  • If account is not supplied / email is not recognised, the Vouch will be associated with the Account Owner

  • The Campaign will be created in a LIVE status, with the generated URL accessible immediately after.

Endpoint

POST https://api.vouchfor.com/api/v1/campaigns 

Request Body

{
"campaign": {
"name": "Happy Customers",
"note" : {
"text": "thanks for Vouching for us!"
},
"questions" : [
{
"text": "this is question 1",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}, {
"text": "this is question 2",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}
],
"options" : {
"showCustomerFields": true
}
}
}

Response

{
"campaign" : {
"id" : "cccccccccc",
"status" : "LIVE",
"url" : "https://app.vouchfor.com/c/cccccccccc",
"name": "Happy Customers",
"note" : {
"text": "thanks for Vouching for us!"
},
"questions" : [
{
"text": "this is question 1",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}, {
"text": "this is question 2",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}
],
"options" : {
"showCustomerFields": true
}
},
"entity" : {
"id" : "eeeeeeeeee",
"name" : "Vouch",
"url" : "https://vouchfor.com"
},
"account" : {
"name" : "David Stirk",
"email" : "[email protected]"
}
}

Publish a Campaign

Publish a specific Campaign.

Endpoint

POST https://api.vouchfor.com/api/v1/campaigns/:id/publish

Pause a Campaign

Pause a specific Campaign.

Endpoint

POST https://api.vouchfor.com/api/v1/campaigns/:id/pause

Delete a Campaign

Delete a specific Campaign.

Endpoint

POST https://api.vouchfor.com/api/v1/campaigns/:id/delete

Retrieve a Campaign

Retrieve a specific Campaign from within your Vouch entity.

Endpoint

GET https://api.vouchfor.com/api/v1/campaigns/:id

Response

{
"campaign" : {
"id" : "cccccccccc",
"status" : "DRAFT | LIVE | PAUSED",
"url" : "https://app.vouchfor.com/c/cccccccccc",
"counts" : {
"views" : 1,
"starts" : 0,
"responses" : 0
}
"name": "Happy Customers",
"note" : {
"text": "thanks for Vouching for us!"
},
"questions" : [
{
"text": "this is question 1",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}, {
"text": "this is question 2",
"type": "VIDEO",
"optional": false,
"maxduration": 0
}
],
"options" : {
"showCustomerFields": true
}
},
"entity" : {
"id" : "eeeeeeeeee",
"name" : "Vouch",
"url" : "https://vouchfor.com"
},
"account" : {
"name" : "David Stirk",
"email" : "[email protected]"
}
}

Retrieve Metrics for a Campaign

Retrieve metrics relating to a specific Campaign

Endpoint

GET https://api.vouchfor.com/api/v1/campaigns/:id/counts

Response

{
"counts" : {
"views" : 0,
"starts" : 0,
"responses" : 0
}
}

Retrieve a list of Campaigns

Retrieve a list of all Campaigns from within your Vouch entity.

Notes

  • The status of the Campaign will determine whether a url is provided or not. Draft Campaigns will not have a URL.

Endpoint

GET https://api.vouchfor.com/api/v1/campaigns 

Response

{
"campaigns" : [
{
"id" : "ccccccccc1",
"status" : "LIVE",
"url" : "https://app.vouchfor.com/c/ccccccccc1",
"name": "Happy Customers"
}, {
"id" : "ccccccccc2",
"status" : "PAUSED",
"url" : "https://app.vouchfor.com/c/ccccccccc2",
"name": "Unhappy Customers"
}, {
"id" : "ccccccccc3",
"status" : "DRAFT",
"name": "Undecided Customers"
}
]
}

Retrieve a list of Campaign Responses

Endpoint

GET https://api.vouchfor.com/api/v1/campaigns/:id/vouches

Response

{
"vouches" : [
{
"id" : "vvvvvvvvv1",
"status" : "DRAFT"
}, {
"id" : "vvvvvvvvv2",
"status" : "SENT",
"url" : "https://app.vouchfor.com/request/vvvvvvvvv2"
}, {
"id" : "vvvvvvvvv3",
"status" : "PUBLISHED",
"url" : "https://app.vouchfor.com/request/vvvvvvvvv3"
}, {
"id" : "vvvvvvvvv4",
"status" : "VIEWED",
"url" : "https://app.vouchfor.com/request/vvvvvvvvv4"
}, {
"id" : "vvvvvvvvv5",
"status" : "SUBMITTED",
"url" : "https://app.vouchfor.com/request/vvvvvvvvv5"
}, {
"id" : "vvvvvvvvv6",
"status" : "RESPONDED",
"url" : "https://app.vouchfor.com/request/vvvvvvvvv6"
}
]
}
Did this answer your question?