CRM Services - Core Functions
{id}
/variants{id}
/components{id}
/componentsRequest parameters
Type of Product
Business Type
Organistion ID of who is selling the products uses different price group for pricing
Location code
Currency
Use an External Products List
Responses
Body
Food and Drink No Pricing as uses Variant and Components for Pricing
GET /products HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "4132336f-95b8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Latte",
"description": "Our signature blend espresso with steamed milk for a smooth and creamy coffee",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "SINGLE",
"sku": "LATTE-01",
"families": [
{
"id": "37803fc4-1b69-4050-9c4b-3747ea01b732",
"name": "Vizulink",
"description": "Vizulink"
}
],
"brands": [
{
"id": "b203637e-a731-11ea-a45f-42010a9a005d",
"name": "Costa Coffee",
"description": "Costa Coffee"
}
],
"pricing": []
},
{
"id": "8ced94dc-9605-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Americano",
"description": "Espresso combined with hot water for a smooth black coffee - enjoyed black or with a splash of milk",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "SINGLE",
"sku": "AMERICANO-01",
"families": [],
"brands": [],
"pricing": []
}
],
"pageable": {
"page": 0,
"size": 10,
"sort": {
"orders": []
}
},
"total": 2
}
GET /products HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "4132336f-95b8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Latte",
"description": "Our signature blend espresso with steamed milk for a smooth and creamy coffee",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "SINGLE",
"sku": "LATTE-01",
"families": [
{
"id": "37803fc4-1b69-4050-9c4b-3747ea01b732",
"name": "coffee",
"description": "Our Coffee Range"
}
],
"brands": [
{
"id": "b203637e-a731-11ea-a45f-42010a9a005d",
"name": "Costa Coffee",
"description": "Costa Coffee"
}
],
"pricing": [],
"features": [],
"filters": []
},
{
"id": "8ced94dc-9605-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Americano",
"description": "Espresso combined with hot water for a smooth black coffee - enjoyed black or with a splash of milk",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "SINGLE",
"sku": "AMERICANO-01",
"families": [],
"brands": [],
"pricing": [],
"features": [],
"filters": []
}
],
"pageable": {
"page": 0,
"size": 20,
"sort": {
"orders": []
}
},
"total": 2
}
Responses
Body
GET /products HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Essential Broadband",
"description": "Essential Broadband",
"businessType": "BROADBAND",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "BB-ESSENTIAL",
"families": [],
"brands": [],
"pricing": []
},
{
"id": "d41045fd-9da8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Superfast Broadband",
"description": "Using Fibre to the Home the fastest available speeds",
"businessType": "BROADBAND",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "BB-SUPERFAST",
"families": [],
"brands": [],
"term": {
"id": "a50eff8c-9dae-11ea-a45f-42010a9a005d",
"term": 1,
"termUnit": "MONTH",
"binding": 18,
"bindingUnit": "MONTH",
"name": "Monthly, 18 Month Binding",
"priceModel": "VARIABLE",
"autoRenew": true,
"pricing": [
{
"id": "be29be7b-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation",
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£50",
"effectiveDate": 1590278400,
"duringBinding": false,
"price": 50,
"taxModel": "INCLUSIVE"
}
],
"priceType": "ONE_OFF",
"isPrimary": false
},
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Superfast 18 Month",
"prices": [
{
"id": "99e93efa-9dbd-11ea-a45f-42010a9a005d",
"name": "Monthly Service Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£34",
"effectiveDate": 1590278400,
"duringBinding": false,
"price": 34,
"taxModel": "INCLUSIVE"
}
],
"priceModel": "FLAT",
"priceType": "RECURRING",
"isPrimary": true
}
]
}
}
],
"pageable": {
"page": 0,
"size": 10,
"sort": {
"orders": []
}
},
"total": 2
}
{id}
/variantsPath variables
Request parameters
Business Type
Organistion ID of who is selling the products uses different price group for pricing
Location code
Currency
Responses
Body
GET /products/{id}/variants HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"variants": [
{
"id": "",
"sku": "",
"attributes": [
{
"id": "guid",
"variant_value": "small",
"variant_map": {
"id": "guid",
"name": "size"
}
}
],
"pricing": {
"id": "",
"name": "",
"price_model": "FLAT",
"payment_model": "PREPAY",
"price_variants": [
{
"id": "",
"name": "",
"price": "",
"currency": "",
"display_price": 1,
"tax_model": "INCLUSIVE",
"tiering": {
"id": "",
"name": "",
"tier_type": "QTY",
"lower_tier": 1,
"upper_tier": "",
"tier_unit": "YEAR"
}
}
]
}
}
]
}
]
}
{id}
/componentsPath variables
Responses
Body
GET /products/{id}/components HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "769173ec-9ac1-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Skimmed Milk",
"description": "Skimmed Milk",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "SKIMMED-MILK-01",
"families": [],
"brands": [],
"component": {
"id": "d52d83d9-9ac3-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Milks"
}
},
"pricing": [
{
"id": "318e9723-9cf7-11ea-a45f-42010a9a005d",
"name": "Latte Coconut Milk",
"prices": [
{
"id": "fbcc3bb6-9ac2-11ea-a45f-42010a9a005d",
"name": "Coconut Milk",
"locationCode": null,
"currency": "GBP",
"displayPrice": null,
"effectiveDate": null,
"duringBinding": false,
"price": 0.45,
"taxModel": "INCLUSIVE"
}
],
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
{
"id": "a63ca7ae-9ac1-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Semi-Skimmed",
"description": "Semi Skimmed",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "SEMI-SKIM-MILK-01",
"families": [],
"brands": [],
"component": {
"id": "de34935f-9ac3-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Milks"
}
},
"pricing": [
{
"id": "e7fa1a76-9d1a-11ea-a45f-42010a9a005d",
"name": "Latte Soya Milk",
"prices": [
{
"id": "488236f0-9ac6-11ea-a45f-42010a9a005d",
"name": null,
"locationCode": null,
"currency": "GBP",
"displayPrice": null,
"effectiveDate": null,
"duringBinding": false,
"price": 0.35,
"taxModel": "INCLUSIVE"
}
],
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
{
"id": "bec0a919-9ac1-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Coconut Milk",
"description": "Exotic flavours of coconut milk",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "COCONUT-MILK-01",
"families": [],
"brands": [],
"component": {
"id": "fa19d2ab-9ac3-11ea-a45f-42010a9a005d",
"isInclusive": false,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Milks"
}
},
"pricing": [
{
"id": "f3dc3f39-9d1a-11ea-a45f-42010a9a005d",
"name": "Latte Soya Milk",
"prices": [
{
"id": "fcfd8705-9b6d-11ea-a45f-42010a9a005d",
"name": null,
"locationCode": null,
"currency": "GBP",
"displayPrice": null,
"effectiveDate": null,
"duringBinding": false,
"price": 0.25,
"taxModel": "INCLUSIVE"
}
],
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
{
"id": "d149778e-9ac1-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Soya Milk",
"description": "Made from soya for vegan friendly",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "SOYA-MILK-01",
"families": [],
"brands": [],
"component": {
"id": "7bed6914-9ac6-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Milks"
}
},
"pricing": [
{
"id": "3e30a3d3-9d1b-11ea-a45f-42010a9a005d",
"name": "Latte Character Bean",
"prices": [],
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
{
"id": "5e231add-9ac6-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Almond Milk",
"description": "Made from Almonds for vegan friendly",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "ALMOND-MILK-01",
"families": [],
"brands": [],
"component": {
"id": "8c474073-9ac6-11ea-a45f-42010a9a005d",
"isInclusive": false,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Milks"
}
},
"pricing": []
},
{
"id": "fe9c7d65-9b6b-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Siganature Blend",
"description": "Signature Blend Bean",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "SIGNATURE-01",
"families": [],
"brands": [],
"component": {
"id": "51f1d021-9b74-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Beans"
}
},
"pricing": []
},
{
"id": "0bc46df8-9b6c-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Character Blend",
"description": "Character Blend Bean",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "CHARACTER-01",
"families": [],
"brands": [],
"component": {
"id": "70dd5669-9b74-11ea-a45f-42010a9a005d",
"isInclusive": false,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Beans"
}
},
"pricing": []
},
{
"id": "2ee97ebf-9b6c-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Decaf Blend",
"description": "Decaf blend bean for coffee lovers without the buzz",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "DECAF-01",
"families": [],
"brands": [],
"component": {
"id": "74fd22b8-9b74-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "MODIFIER",
"sellType": "CROSS_SELL",
"componentMap": {
"name": "Beans"
}
},
"pricing": []
},
{
"id": "8266f5cf-9b76-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Caramel",
"description": "Caramel Syrup",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "CARAMEL-SYRUP-01",
"families": [],
"brands": [],
"component": {
"id": "37857e47-9b79-11ea-a45f-42010a9a005d",
"isInclusive": false,
"componentType": "ADD_ON",
"sellType": "UP_SELL",
"componentMap": {
"name": "Syrups"
}
},
"pricing": [
{
"id": "0102bed5-9dc9-11ea-a45f-42010a9a005d",
"name": "Latte Caramel",
"prices": [],
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
{
"id": "90742e19-9b76-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Hazelnut",
"description": "Hazelnut Syrup",
"businessType": "FOOD_DRINK",
"productType": "PHYSICAL",
"soldAs": "COMPONENT",
"sku": "HAZELNUT-SYRUP-01",
"families": [],
"brands": [],
"component": {
"id": "3ae13120-9b79-11ea-a45f-42010a9a005d",
"isInclusive": false,
"componentType": "ADD_ON",
"sellType": "UP_SELL",
"componentMap": {
"name": "Syrups"
}
},
"pricing": [
{
"id": "05ab6933-9dc9-11ea-a45f-42010a9a005d",
"name": "Latte Caramel",
"prices": [],
"priceType": "ONE_OFF",
"isPrimary": false
}
]
}
],
"pageable": {
"page": 0,
"size": 10,
"sort": {
"orders": []
}
},
"total": 12
}
{id}
/componentsPath variables
Responses
Body
GET /products/{id}/components HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "cb639733-9c34-11ea-a45f-42010a9a005d",
"createdOn": 1590526341,
"name": "Just UP Gas",
"description": "Just UP Gas Component",
"businessType": "ENERGY",
"productType": "COMPONENT",
"sku": "JUST-UP-01-GAS",
"families": [
null
],
"brands": [
null
],
"component": {
"id": "56e5ed6b-9c4b-11ea-a45f-42010a9a005d",
"isInclusive": true,
"componentType": "OPTIONAL",
"sellType": "BASE",
"componentMap": {
"name": "Fuel Type"
}
},
"pricing": [
{
"id": "0aa9ecaa-9d30-11ea-a45f-42010a9a005d",
"name": "Just UP Gas Usage",
"ratecard": {
"id": "73d2d663-9d27-11ea-a45f-42010a9a005d",
"name": "Gas Usage Charge",
"rateType": "GAS",
"effectiveDate": 1590192000,
"useProvider": true,
"rating": [
{
"id": "3bc9dd81-9d29-11ea-a45f-42010a9a005d",
"name": "Gas Unit Rate GSP 10",
"salesOrgId": "UP",
"purchaserId": null,
"rateUnit": "KWH",
"timePeriod": null,
"locationCode": "UK",
"price": 3.01,
"currency": "GBP",
"taxModel": "INCLUSIVE",
"minCharge": null,
"chargeAfter": null,
"roundTo": null,
"effectiveDate": 1590192000,
"ratingValues": [
{
"id": "d29928e5-a99b-11ea-a45f-42010a9a005d",
"rateMap": {
"id": "7bdd2769-a99b-11ea-a45f-42010a9a005d",
"name": "Outcode",
"description": "List of Postal Outcodes Relevant to the Rating"
},
"rateValue": "GU27"
}
]
}
]
},
"prices": [
null
],
"priceModel": "RATED",
"priceType": "RECURRING",
"isPrimary": true
}
]
}
],
"pageable": {
"page": 1,
"size": 10,
"sort": {
"orders": [
null
]
}
},
"total": 2
}
List of Products with Components and prices that make up the full product quotation
Request body
Existing Account information with another service to use the details such as as address and existing products to provide a new quote.
Where is the account stored
ID of the account to enable a lookup
Existing phone number
New line required
Type of Product
Type of Business
Responses
Body
Can the prices be modfied during the binding operiod fixed or variable
List of component products
Type of price
Type of pricing
How is the payment processed
POST /quotations HTTP/1.1
Content-Type: application/json
{
"service_address": {
"post_code": "",
"property_identifier": ""
},
"product_type": "SERVICE",
"businessType": "MOBILE",
"rating": [
{
"rate_type": "",
"rate_amount": 1,
"rate_value": ""
}
]
}
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341.000000000,
"name": "Essential Unlimited Fibre",
"description": "Essential Unlimited Fibre",
"businessType": "BROADBAND",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "BB-ESSENTIAL",
"families": [],
"brands": [],
"pricing": [],
"features": [
{
"id": "4ae60e4c-065f-11eb-bf12-42010a9a001b",
"name": "FREE UP router worth £70.00 just plug in and go!",
"description": "FREE UP router worth £70.00 just plug in and go!",
"language": "en",
"priority": 0
},
{
"id": "af8ca82d-0661-11eb-bf12-42010a9a001b",
"name": "Average Speed 16MB",
"description": "Average Speed 16MB",
"language": "en",
"priority": 0
},
{
"id": "fb7421e3-065e-11eb-bf12-42010a9a001b",
"name": "UK customer care and support",
"description": "UK customer care and support",
"language": "en",
"priority": 0
},
{
"id": "f2200705-0661-11eb-bf12-42010a9a001b",
"name": "Call options and extras to suit your needs",
"description": "Call options and extras to suit your needs",
"language": "en",
"priority": 0
}
],
"filters": []
},
{
"id": "d41045fd-9da8-11ea-a45f-42010a9a005d",
"createdOn": 1590526341.000000000,
"name": "Unlimited Fibre Plus",
"description": "Unlimited Fibre Plus",
"businessType": "BROADBAND",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "BB-SUPERFAST",
"families": [],
"brands": [],
"term": {
"id": "18bc6cd9-bc78-11ea-a45f-42010a9a005d",
"term": 1,
"termUnit": "MONTH",
"binding": 12,
"bindingUnit": "MONTH",
"name": "Monthly, 12 Month Binding",
"priceModel": "VARIABLE",
"autoRenew": true,
"pricing": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Ultra Ultimate",
"prices": [
{
"id": "99e93efa-9dbd-11ea-a45f-42010a9a005d",
"name": "Monthly Service Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£34",
"effectiveDate": 1590278400.000000000,
"duringBinding": false,
"price": 34.0000,
"taxModel": "INCLUSIVE"
}
],
"paymentModel": "ADD_TO_BILL",
"priceModel": "FLAT",
"priceType": "RECURRING",
"isPrimary": true
},
{
"id": "be29be7b-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation",
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£50",
"effectiveDate": 1590278400.000000000,
"duringBinding": false,
"price": 50.0000,
"taxModel": "INCLUSIVE"
}
],
"paymentModel": "PREPAY",
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
]
},
"pricing": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Ultra Ultimate",
"prices": [
{
"id": "99e93efa-9dbd-11ea-a45f-42010a9a005d",
"name": "Monthly Service Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£34",
"effectiveDate": 1590278400.000000000,
"duringBinding": false,
"price": 34.0000,
"taxModel": "INCLUSIVE"
}
],
"paymentModel": "ADD_TO_BILL",
"priceModel": "FLAT",
"priceType": "RECURRING",
"isPrimary": true
},
{
"id": "be29be7b-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation",
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£50",
"effectiveDate": 1590278400.000000000,
"duringBinding": false,
"price": 50.0000,
"taxModel": "INCLUSIVE"
}
],
"paymentModel": "PREPAY",
"priceModel": "FLAT",
"priceType": "ONE_OFF",
"isPrimary": false
}
],
"features": [
{
"id": "4ae60e4c-065f-11eb-bf12-42010a9a001b",
"name": "FREE UP router worth £70.00 just plug in and go!",
"description": "FREE UP router worth £70.00 just plug in and go!",
"language": "en",
"priority": 0
},
{
"id": "baabdc61-0661-11eb-bf12-42010a9a001b",
"name": "Average speed 35MB",
"description": "Average speed 35MB",
"language": "en",
"priority": 0
},
{
"id": "fb7421e3-065e-11eb-bf12-42010a9a001b",
"name": "UK customer care and support",
"description": "UK customer care and support",
"language": "en",
"priority": 0
},
{
"id": "f2200705-0661-11eb-bf12-42010a9a001b",
"name": "Call options and extras to suit your needs",
"description": "Call options and extras to suit your needs",
"language": "en",
"priority": 0
}
],
"filters": []
},
{
"id": "42d195d6-0658-11eb-bf12-42010a9a001b",
"createdOn": 1601826171.000000000,
"name": "Ultra Unlimited Fibre Plus",
"description": "Ultra Unlimited Fibre Plus",
"businessType": "BROADBAND",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "BB-ULTRA",
"families": [],
"brands": [],
"pricing": [],
"features": [
{
"id": "2c8f30a1-0663-11eb-bf12-42010a9a001b",
"name": "Average Speed 63MB",
"description": "Average Speed 63MB",
"language": "en",
"priority": 0
},
{
"id": "4ae60e4c-065f-11eb-bf12-42010a9a001b",
"name": "FREE UP router worth £70.00 just plug in and go!",
"description": "FREE UP router worth £70.00 just plug in and go!",
"language": "en",
"priority": 0
},
{
"id": "fb7421e3-065e-11eb-bf12-42010a9a001b",
"name": "UK customer care and support",
"description": "UK customer care and support",
"language": "en",
"priority": 0
},
{
"id": "f2200705-0661-11eb-bf12-42010a9a001b",
"name": "Call options and extras to suit your needs",
"description": "Call options and extras to suit your needs",
"language": "en",
"priority": 0
}
],
"filters": []
}
]
POST /quotations HTTP/1.1
Content-Type: application/json
{
"service_address": {
"post_code": "",
"property_identifier": ""
},
"product_type": "EXPENSE",
"businessType": "FIXED_LINE",
"rating": [
{
"rate_type": "",
"rate_amount": 1,
"rate_value": ""
}
]
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "221b48c1-9c2b-11ea-a45f-42010a9a005d",
"name": "Just UP",
"description": "Just UP fixed rate or basic package",
"businessType": "ENERGY",
"productType": "SERVICE",
"soldAs": "SINGLE",
"sku": "JUST-UP-01",
"families": [
{
"id": "4e65ee2c-abee-11ea-a45f-42010a9a005d",
"name": "Utility Point",
"description": "Utility Point Gas and Electric Products"
}
],
"brands": [
null
],
"term": {
"id": "a50eff8c-9dae-11ea-a45f-42010a9a005d",
"name": "Monthly Payment, 18 Month Binding",
"term": 1,
"termUnit": "MONTH",
"binding": 18,
"bindingUnit": "MONTH",
"priceModel": "VARIABLE",
"autoRenew": true,
"components": [
{
"id": "0aa9ecaa-9d30-11ea-a45f-42010a9a005d",
"name": "Just UP Gas",
"description": "",
"SKU": "",
"pricing": {
"priceType": "ONE_OFF",
"priceModel": "FLAT",
"paymentModel": "PREPAY",
"ratecard": {
"id": "73d2d663-9d27-11ea-a45f-42010a9a005d",
"name": "Gas Usage Charge",
"rateType": "GAS",
"rating": [
{
"id": "43d9fb32-9d29-11ea-a45f-42010a9a005d",
"name": "Gas Unit Rate GSP 11",
"rateUnit": "KWH",
"timePeriod": null,
"price": 3.48,
"currency": "GBP",
"taxModel": "INCLUSIVE",
"ratingValues": [
{
"rateMap": {
"id": "59841432-9c52-11ea-a45f-42010a9a005d",
"name": "Supplier",
"description": "Supplier Code based on UK regions 10 - 21"
},
"rateValue": "10"
}
]
}
]
},
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"price": 50,
"displayPrice": "£50",
"taxModel": "INCLUSIVE",
"duringBinding": true
},
""
]
}
}
],
"pricing": {
"priceType": "",
"priceModel": "",
"paymentModel": "",
"ratecard": {
"id": "73d2d663-9d27-11ea-a45f-42010a9a005d",
"name": "Gas Usage Charge",
"rateType": "GAS",
"rating": [
{
"id": "43d9fb32-9d29-11ea-a45f-42010a9a005d",
"name": "Gas Unit Rate GSP 11",
"salesOrgId": "UP",
"purchaserId": null,
"rateUnit": "KWH",
"timePeriod": null,
"locationCode": "UK",
"price": 3.48,
"currency": "GBP",
"taxModel": "INCLUSIVE",
"minCharge": null,
"chargeAfter": null,
"roundTo": null,
"effectiveDate": 1590192000,
"ratingValues": [
{
"id": "09a43dd5-9d2e-11ea-a45f-42010a9a005d",
"rateMap": {
"id": "59841432-9c52-11ea-a45f-42010a9a005d",
"name": "Supplier",
"description": "Supplier Code based on UK regions 10 - 21"
},
"rateValue": "10"
}
]
}
]
},
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£50",
"effectiveDate": 1590278400,
"duringBinding": true,
"price": 50,
"taxModel": "INCLUSIVE"
}
]
}
},
"features": [
{
"id": "e7cc22f0-abf3-11ea-a45f-42010a9a005d",
"name": "Free rewards programme",
"description": "Free reewards program with access to over 40000 products",
"language": "en",
"priority": 3
}
],
"filters": [
{
"id": "97c24531-abf1-11ea-a45f-42010a9a005d",
"onName": "Fixed",
"onDescription": "Fixed Rate Tarriff",
"isOn": true
}
],
"pricing": {
"ratecard": {
"id": "73d2d663-9d27-11ea-a45f-42010a9a005d",
"name": "Gas Usage Charge",
"rateType": "GAS",
"effectiveDate": 1590192000,
"useProvider": true,
"rating": [
{
"id": "43d9fb32-9d29-11ea-a45f-42010a9a005d",
"name": "Gas Unit Rate GSP 11",
"salesOrgId": "UP",
"purchaserId": null,
"rateUnit": "KWH",
"timePeriod": null,
"locationCode": "UK",
"price": 3.48,
"currency": "GBP",
"taxModel": "INCLUSIVE",
"minCharge": null,
"chargeAfter": null,
"roundTo": null,
"effectiveDate": 1590192000,
"ratingValues": [
{
"id": "09a43dd5-9d2e-11ea-a45f-42010a9a005d",
"rateMap": {
"id": "59841432-9c52-11ea-a45f-42010a9a005d",
"name": "Supplier",
"description": "Supplier Code based on UK regions 10 - 21"
},
"rateValue": "10"
}
]
}
]
},
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"locationCode": "UK",
"currency": "GBP",
"displayPrice": "£50",
"effectiveDate": 1590278400,
"duringBinding": true,
"price": 50,
"taxModel": "INCLUSIVE"
}
],
"priceType": "",
"pricModel": "",
"paymentModel": ""
}
}
],
"pageable": {
"page": 1,
"size": 10,
"sort": {
"orders": [
null
]
}
},
"total": 1
}
Publishing Products allows order, and setting popular and special straplines, for a given Brand and Affiliate as optional parameters
Publish Information for Tarrif
Request body
POST /publish HTTP/1.1
Content-Type: application/json
{
"publish_for": {
"brand_id": "",
"affiliate_id": ""
},
"items": [
{
"tarriff_id": "",
"priority": 1,
"isPopular": true,
"Strapline": ""
}
]
}
{id}
/catalog_categories{id}
/catalog_categories{category_id}
/products{id}
/products{id}
{id}
/timimgs{id}
/timings{id}
/filtersRequest body
Ownwer of the catalog shoul dbe set by API_KEY so remove
Examples
POST /catalogs HTTP/1.1
Content-Type: application/json
curl --location --request POST 'https://dev.crmcloudapi.com/v3/api/catalogs' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Test-Name",
"description": "Test-Description",
"display_name": "Test-Display-Name",
"delivery": true,
"pickup": false,
"instore": false
}'
Responses
Body
GET HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
curl --location --request GET 'https://dev.crmcloudapi.com/v3/api/catalogs?delivery=true&instore=true&pickup=true'
{id}
/catalog_categoriesAdd catgegories to a catalog, single POST call replaces all categories
Path variables
Request body
Vizulink ID if imported or using default products
category ID from External System
Integration_id of external system
priority for ordering
POST /catalogs/{id}/catalog_categories HTTP/1.1
Content-Type: application/json
curl --location --request POST 'https://dev.crmcloudapi.com/v3/api/catalogs/e208a911-e3bd-4b78-b778-712bea08bb1d/catalog_categories' \
--header 'Content-Type: application/json' \
--data-raw '[
{
"id": null,
"integration": {
"category_id": "37255f0a-e8f8-4eae-b256-87f0b392edd2",
"integration_id": "b58769d9-6a35-11eb-9d2c-42010a9a0fed"
},
"priority": 0
},
{
"id": null,
"integration": {
"category_id": "601496f7-0851-4ff1-86ab-73a3ffc4c165",
"integration_id": "b58769d9-6a35-11eb-9d2c-42010a9a0fed"
},
"priority": 1
},
{
"id": null,
"integration": {
"category_id": "86273d4c-ec3d-45eb-b0f7-5081330f76f3",
"integration_id": "b58769d9-6a35-11eb-9d2c-42010a9a0fed"
},
"priority": 2
}
]'
{id}
/catalog_categoriesPath variables
Responses
Body
GET /catalogs/{id}/catalog_categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
curl --location --request GET 'https://dev.crmcloudapi.com/v3/api/catalogs/e208a911-e3bd-4b78-b778-712bea08bb1d/catalog_categories'
{category_id}
/productsPath variables
Request body
Internal vizulink product if imported
External Product ID
Integrtation ID for example CRM, ECWID, SHOPIFY
POST /catalog_categories/{category_id}/products HTTP/1.1
Content-Type: application/json
curl --location --request POST 'https://dev.crmcloudapi.com/v3/api/catalog_categories/b51b0814-76ef-4ad7-888d-566d8fb44bec/products' \
--header 'Content-Type: application/json' \
--data-raw '[
{
"id": null,
"integration": {
"product_id": "5315d45f-83bb-4659-9546-b5a2fc555711",
"integration_id": "b58769d9-6a35-11eb-9d2c-42010a9a0fed"
},
"priority": 0
},
{
"id": null,
"integration": {
"product_id": "888c70b9-f071-4404-aa6f-2f0b512eac70",
"integration_id": "b58769d9-6a35-11eb-9d2c-42010a9a0fed"
},
"priority": 1
}
]'
{id}
/productsList of products configred for a Catalog Category. Supports Externally managed Products.
Path variables
Responses
Body
GET /catalog_categories/{id}/products HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
curl --location --request GET 'https://dev.crmcloudapi.com/v3/api/catalog_categories/b51b0814-76ef-4ad7-888d-566d8fb44bec/products'
Responses
Body
GET /product_categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
curl --location --request GET 'https://dev.crmcloudapi.com/v3/api/product_categories?integration_id=b58769d9-6a35-11eb-9d2c-42010a9a0fed'
{id}
Path variables
Responses
Body
GET /product_categories/{id} HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
curl --location --request GET 'https://dev.crmcloudapi.com/v3/api/product_categories/601496f7-0851-4ff1-86ab-73a3ffc4c165?integration_id=b58769d9-6a35-11eb-9d2c-42010a9a0fed'
ID of Ratecard
Ratecard Name
{id}
/filtersPath variables
Responses
Body
GET /family/{id}/filters HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "4e65ee2c-abee-11ea-a45f-42010a9a005d",
"name": "Utility Point",
"description": "Utility Point Gas and Electric Products",
"filters": [
{
"id": "97c24531-abf1-11ea-a45f-42010a9a005d",
"name": "Fixed / Flexible",
"onName": "Fixed",
"onDescription": "Fixed Rate Tarriff",
"offName": "Flexible",
"offDescription": "Tarriff rates can go up and down",
"isOn": false
},
{
"id": "c804de5a-abf1-11ea-a45f-42010a9a005d",
"name": "Term",
"onName": "12 mth",
"onDescription": "12 Mth",
"offName": "12 mth+",
"offDescription": "Longer than 12 Months",
"isOn": false
},
{
"id": "1f76d3b9-abf2-11ea-a45f-42010a9a005d",
"name": "Billing",
"onName": "Paperless",
"onDescription": "No Paper Bills",
"offName": "Digital",
"offDescription": "Digital Bills",
"isOn": false
}
]
}
Responses
Body
GET /quote HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[{
"brand": {
"id": "54af047f-44d0-11e9-bfde-42010a9a0095",
"name": "Utility Point",
"description": "Utility Point"
},
"tariff": {
"id": "ea2589a2-44d0-11e9-bfde-42010a9a0095",
"name": "UP Variable",
"description": "UP Variable",
"strapLine": "Most Popular",
"fixedUnitRate": false,
"rewards": true,
"pointPledge": true,
"mgmtTeam": true,
"fixedTerm": 0,
"fixedEnd": null,
"onlineManagement": true,
"features": [
{
"id": "c9b99db7-abf3-11ea-a45f-42010a9a005d",
"name": "24/7 on-line account access",
"description": "Access via portal / APP 24 x 7",
"language": "en",
"priority": 0
},
{
"id": "abfddd79-abf3-11ea-a45f-42010a9a005d",
"name": "Fixed Unit Rates",
"description": "Unit Rates are fixed for the length of the term",
"language": "en",
"priority": 0
},
{
"id": "e7cc22f0-abf3-11ea-a45f-42010a9a005d",
"name": "Free rewards programme",
"description": "Free reewards program with access to over 40000 products",
"language": "en",
"priority": 0
}
],
"filters": [
{
"id": "97c24531-abf1-11ea-a45f-42010a9a005d",
"name": "Fixed / Flexible",
"offName": "Flexible",
"offDescription": "Tarriff rates can go up and down"
},
{
"id": "1f76d3b9-abf2-11ea-a45f-42010a9a005d",
"name": "Billing",
"onName": "Paperless",
"onDescription": "No Paper Bills"
}
]
},
"affiliate": null,
"priority": 0,
"id": "ce270d34-44ec-11e9-bfde-42010a9a0095",
"tariffId": "ea2589a2-44d0-11e9-bfde-42010a9a0095",
"regionId": 20,
"gasStandingCharge": 13.8596,
"gasUnitRate": 3.1996,
"elecStandingCharge": 14.5322,
"elecUnitRate": 14.2389,
"dualAvg": 928.99,
"gasAvg": 494.45,
"elecAvg": 434.54,
"gasExitFee": 30,
"elecExitFee": 30,
"meterReadFreq": "MONTHLY",
"onlineMgtDiscount": 15,
"outwardCode": "GU27",
"onlineMgtIncluded": null,
"fuelType": null,
"monthlyGasFee": null,
"monthlyElectricityFee": 25.77
},
{
"brand": {
"id": "54af047f-44d0-11e9-bfde-42010a9a0095",
"name": "Utility Point",
"description": "Utility Point"
},
"tariff": {
"id": "3a9878c7-44d1-11e9-bfde-42010a9a0095",
"name": "Just UP",
"description": "Just UP Fixed",
"strapLine": "Best Value",
"fixedUnitRate": true,
"rewards": true,
"pointPledge": true,
"mgmtTeam": true,
"fixedTerm": 18,
"fixedEnd": null,
"onlineManagement": true,
"features": [
{
"id": "c9b99db7-abf3-11ea-a45f-42010a9a005d",
"name": "24/7 on-line account access",
"description": "Access via portal / APP 24 x 7",
"language": "en",
"priority": 0
},
{
"id": "abfddd79-abf3-11ea-a45f-42010a9a005d",
"name": "Fixed Unit Rates",
"description": "Unit Rates are fixed for the length of the term",
"language": "en",
"priority": 0
},
{
"id": "e7cc22f0-abf3-11ea-a45f-42010a9a005d",
"name": "Free rewards programme",
"description": "Free reewards program with access to over 40000 products",
"language": "en",
"priority": 0
}
],
"filters": [
{
"id": "97c24531-abf1-11ea-a45f-42010a9a005d",
"name": "Fixed / Flexible",
"onName": "Fixed",
"onDescription": "Fixed Rate Tarriff"
},
{
"id": "1f76d3b9-abf2-11ea-a45f-42010a9a005d",
"name": "Billing",
"onName": "Paperless",
"onDescription": "No Paper Bills"
}
]
},
"affiliate": null,
"priority": 0,
"id": "e1d55bc7-44ec-11e9-bfde-42010a9a0095",
"tariffId": "3a9878c7-44d1-11e9-bfde-42010a9a0095",
"regionId": 20,
"gasStandingCharge": 13.1996,
"gasUnitRate": 3.0472,
"elecStandingCharge": 15.9985,
"elecUnitRate": 13.5609,
"dualAvg": 928.99,
"gasAvg": 494.45,
"elecAvg": 434.54,
"gasExitFee": 30,
"elecExitFee": 30,
"meterReadFreq": "MONTHLY",
"onlineMgtDiscount": 15,
"outwardCode": "GU27",
"onlineMgtIncluded": null,
"fuelType": null,
"monthlyGasFee": null,
"monthlyElectricityFee": 25.2
}
]
Ordering API
{id}
Responses
Body
Order ID
Contact ID
Product ID
Place an Order for multiple Services
Request body
Contact Details
id of an existing contact
Title
Forename
Surname
Business name.
Product ID
Amount of Payment
POST /orders HTTP/1.1
Content-Type: application/json
{
"contact": {
"id": "",
"title": "",
"forename": "",
"surname": "",
"company_name": ""
},
"address": [
{
"id": "",
"address_type": ""
}
],
"products": [
{
"id": "",
"sku": ""
}
],
"payments": [
{
"id": "",
"amount": 1,
"gateway": {}
}
]
}
Request body
credentials for either email password or Social login
oAUTH Token like facebook or other service
Existing payment Method ID thi scan be null if a new payment is specified
Payment using CARD, BANK, CASH
gateway used to process payment
STRIPE,ELAVON
Token from client hosted pages, with the credit card / payment details
Unique transaction ID if different to tokenised payemnt / card
Amount processed on card
Collect from Server or Client
store card for later use
tax Amount
type of tax model
New Broadband
POST /orders HTTP/1.1
Content-Type: application/json
{
"contact": {
"id": "existing contact or shared ID from an external system",
"name": {
"forename": "Andrei",
"surname": "Suciu",
"title": ""
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_id": "GUID",
"method_type": "BANK",
"gateway": {
"provider": "SMARTDEBIT",
"token": "",
"identifier": ""
},
"amount": "",
"collection": "CLIENT",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"description": "",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"product_class": {
"product_class": "ROUTER"
},
"term": {
"id": "",
"name": "",
"billing": 1,
"billing_unit": {
"units": "WEEK"
},
"binding": 1,
"binding_unit": {
"units": "YEAR"
}
},
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"tax_amount": "",
"tax_model": {
"tax_model": "INCLUSIVE"
},
"tax_rate": 1,
"currency": "",
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Set up New customer no ID supplied
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "BANK",
"method_id": "GUID",
"gateway": {
"provider": "STRIPE",
"token": ""
},
"amount": "",
"collection": "CLIENT",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Use a provided ID for a new customer
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "energyCloud-GUID",
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "CASH",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": "",
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "guid-123"
},
"payment": {
"method_type": "CARD",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": 45.88,
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "guid-address"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
{id}
Path variables
Request body
Unique id of Order
tax Amount
type of tax model
New Broadband
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "external-guid",
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "CARD",
"method_id": "GUID",
"gateway": {
"provider": "STRIPE",
"token": ""
},
"amount": "",
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Set up New customer no ID supplied
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "BANK",
"method_id": "GUID",
"gateway": {
"provider": "STRIPE",
"token": ""
},
"amount": "",
"collection": "CLIENT",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Use a provided ID for a new customer
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "energyCloud-GUID",
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "CASH",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": "",
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "guid-123"
},
"payment": {
"method_type": "CARD",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": 45.88,
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "guid-address"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Responses
Body
unique address ID
Number of working Lines
exchange data
Partial Number
POST /quotations HTTP/1.1
HTTP/1.1 201 Created
Content-Type: application/json
{
"site": {
"address_id": "",
"phone_line": {
"working_lines": [
{
"exchange_code": "",
"partial": "",
"service_type": "SKY",
"technology_type": "",
"retention_allowed": true
}
]
}
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"created_on": 1590526341,
"name": "Robin",
"description": "UP Stream, Email and Social",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"product_class": "BROADBAND",
"sold_as": "SINGLE",
"sku": "BB-ESSENTIAL",
"families": [
null
],
"brands": [
null
],
"specifications": [
{
"external_id": "63987391-07e6-11eb-bf12-42010a9a001b",
"name": "Upload Speed",
"classification": "UPLOAD",
"specification": "2",
"units": "Mbps"
}
],
"publish": {
"strap_line": null,
"priority": 1,
"popular": true
},
"term": {
"id": "18bc6cd9-bc78-11ea-a45f-42010a9a005d",
"billing": 1,
"billing_unit": "MONTH",
"binding": 12,
"binding_unit": "MONTH",
"name": "Monthly, 12 Month Binding",
"price_model": "VARIABLE",
"auto_renew": true,
"pricing": [
{
"id": "be29be7b-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation",
"prices": [
{
"id": "c7af956c-9dc2-11ea-a45f-42010a9a005d",
"name": "Activation Fee",
"location_code": "UK",
"currency": "GBP",
"display_price": "£9.99",
"effective_date": 1590278400,
"during_binding": true,
"price": 9.99,
"tax_model": "INCLUSIVE"
}
],
"payment_model": "PREPAY",
"price_model": "FLAT",
"price_type": "ONE_OFF",
"primary": true
}
]
},
"features": [
{
"id": "4ae60e4c-065f-11eb-bf12-42010a9a001b",
"name": "FREE UP router worth £70.00 just plug in and go!",
"description": "FREE UP router worth £70.00 just plug in and go!",
"language": "en",
"priority": 1
}
],
"filters": [
null
]
}
]
}
Responses
Body
Request body
credentials for either email password or Social login
oAUTH Token like facebook or other service
Existing payment Method ID thi scan be null if a new payment is specified
Payment using CARD, BANK, CASH
gateway used to process payment
STRIPE,ELAVON
Token from client hosted pages, with the credit card / payment details
Unique transaction ID if different to tokenised payemnt / card
Amount processed on card
Collect from Server or Client
store card for later use
tax Amount
type of tax model
New Broadband
POST /orders HTTP/1.1
Content-Type: application/json
{
"contact": {
"id": "existing contact or shared ID from an external system",
"name": {
"forename": "Andrei",
"surname": "Suciu",
"title": ""
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_id": "GUID",
"method_type": "BANK",
"gateway": {
"provider": "SMARTDEBIT",
"token": "",
"identifier": ""
},
"amount": "",
"collection": "CLIENT",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"description": "",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"product_class": {
"product_class": "ROUTER"
},
"term": {
"id": "",
"name": "",
"billing": 1,
"billing_unit": {
"units": "WEEK"
},
"binding": 1,
"binding_unit": {
"units": "YEAR"
}
},
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"tax_amount": "",
"tax_model": {
"tax_model": "INCLUSIVE"
},
"tax_rate": 1,
"currency": "",
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Set up New customer no ID supplied
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "BANK",
"method_id": "GUID",
"gateway": {
"provider": "STRIPE",
"token": ""
},
"amount": "",
"collection": "CLIENT",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Use a provided ID for a new customer
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "energyCloud-GUID",
"name": {
"forename": "Andrei",
"surname": "Suciu"
},
"email": "billperkins@gmail.com",
"mobile": "07566224395",
"landline": "01983616214",
"date_of_birth": "1990-05-24",
"credentials": [
{
"provider": "EMAIL",
"password": "password",
"token": "FBToken"
}
],
"billing": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"bank": {
"account_name": "Andrei S",
"account_number": "21-23-12",
"sort_code": "92-13-91",
"directdebit": {
"reference": "UPB123456",
"starts": 1606682243312,
"Amount": 115.69
}
}
},
"referral": {
"afilliate": "code",
"code": "refer_fred"
},
"marketing": [
{
"channel": "EMAIL",
"opt_in": true
}
],
"payment": {
"method_type": "CASH",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": "",
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "",
"address_line_1": "Driftwood",
"address_line_2": "",
"street_road": "Seafield Road",
"town_city": "Seaview",
"state_province_county": "Isle Of Wight",
"postal_code": "PO345HD",
"country_code": "UK"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"energy": {
"electric": [
{
"mpan": "2000019685021",
"day_eac": "4300",
"night_eac": null
}
],
"gas": [
{
"mprn": "0000000000",
"aq": 17000
}
]
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
POST /orders HTTP/1.1
Content-Type: application/json
{
"contacts": {
"id": "guid-123"
},
"payment": {
"method_type": "CARD",
"method_id": "GUID",
"gateway": {
"provider": "ELAVON",
"token": ""
},
"amount": 45.88,
"collection": "SERVER",
"store_card": true
},
"site": {
"address": {
"id": "guid-address"
},
"broadband": {
"service_line": "01983616214",
"line_type": "EXISTING",
"porting": "VOFDAFONE,SKY"
},
"products": [
{
"id": "af474667-9da8-11ea-a45f-42010a9a005d",
"name": "Essential Unlimited Fibre",
"business_type": "BROADBAND",
"product_type": "SERVICE",
"term_id": "guid",
"term_name": "12 Months",
"prices": [
{
"id": "24224990-9dad-11ea-a45f-42010a9a005d",
"name": "Essential",
"amount": 19.99,
"payment_model": "ADD_TO_BILL",
"price_type": "RECURRING"
}
]
}
]
}
}
Request headers
Secret API KEY
Request body
An external GUID from a third party system
{id}
/payment_methods{id}
/subscriptions{id}
/payment_methodsPath variables
Contact ID to add payment Method
Request body
token from the gateway or if Smart Debit user generted BACS reference.
Responses
Body
Guid of Payment method
POST /contacts/{id}/payment_methods HTTP/1.1
Content-Type: application/json
{
"method_type": "BANK",
"is_primary": "true",
"bank_details": {
"account_name": "John Doe",
"account_number": "00100201",
"sort_code": "102491"
},
"gateway": [
{
"gateway": "SMARTDEBIT",
"token": "UPB123456"
}
]
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": ""
}
{id}
/subscriptionsPath variables
Responses
Body
GET /accounts/{id}/subscriptions HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"subscription": {
"id": "",
"name": "",
"activated": 1
}
}
]
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"subscription": {
"id": "",
"name": "",
"activated": 1
}
}
]
{id}
{id}
/products{id}
/payment_methods{id}
/calls{id}
/subscriptions{id}
Get single subscription details
Path variables
Request headers
Secure Server to server secreet API Key
Admin user token for dashbords
Responses
Body
Billing cycle
Units of time for term
Fixed end date of a term such as a sports season
{id}
/productsPath variables
Responses
Body
Product Classification
broadband service product
{id}
/payment_methodsPath variables
Responses
Body
{id}
/callsGet call usage for an installed service. Service type is a Fixed Landline.
Path variables
Request parameters
Responses
Body
Duration in Seconds
{id}
/subscriptionsPath variables
Responses
Body
{id}
/lifecycle{id}
/lifecyclePath variables
Request body
Examples
{
"lifecycle": "LEAD_GENERATED",
"lead": {
"id": "b829dfd0-8838-11ec-ae9e-42010a9a0006"
}
}
Ecoes Survey Module
{id}
{id}
/details{id}
/contacts{id}
/surveys{id}
/details{id}
/energy{surveyId}
/services/{id}
/availabilityResponses
Body
GET /projects HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "",
"name": "",
"description": "",
"surveys": {
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"config_group": "MEASURE",
"measure_type": "CAVITY",
"small_icon": "CAVITY",
"large_icon": null,
"requires_install": true,
"versions": [
{
"id": "b3547bd6-364e-11ec-a745-42010a9a0002",
"name": "1.1",
"published_date": 1625568811,
"expired_date": null,
"description": "Cavity Survey v1"
}
]
}
}
]
}
{ID}
/projects{ID}
/projects{ID}
/projectsPath variables
Responses
Body
GET /properties/{ID}/projects HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
}
]
{ID}
/projectsPath variables
Request body
POST /properties/{ID}/projects HTTP/1.1
Content-Type: application/json
[
{
"project": {
"id": ""
},
"start_date": "",
"completed_date": "",
"lifecycle": "COMPLETED"
}
]
Request body
If ID is set then this will trigger an auto-sync of the property
Auto generated if not set
date resource set
POST /properties HTTP/1.1
Content-Type: application/json
{
"id": "string",
"code": "string",
"life_cycle": "LEAD",
"address": {
"building_name": "string",
"building_number": "string",
"country": "string",
"county": "string",
"district": "string",
"formatted_address": "string",
"locality": "string",
"postcode": "string",
"sub_building_name": "string",
"sub_building_number": "string",
"thoroughfare": "string",
"town_or_city": "string"
},
"details": {
"age_band": "AGE_BEFORE1900",
"bedrooms": 1,
"conservatories": 1,
"construction": "CONVENTIONAL_CAVITY",
"extensions": 1,
"external_walls": "EXT_2",
"flat_position": "TOP",
"orientation": "LEFT",
"property_type": "HOUSE",
"storeys": 1,
"sub_type": "DETACHED"
},
"location": {
"latitude": 1,
"longitude": 1
},
"resources": [
{
"change_date": "",
"resource_type": "RETROFIT-ADVISOR",
"owners": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
Request body
Responses
Body
GET /properties HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "55346f11-8502-11eb-b8ba-42010a9a004e",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREM-01",
"production": true,
"allocated_id": "001a9ac4-4e22-4b51-97d9-d0697575ec6c",
"life_cycle": "SURVEY",
"address": {
"building_name": null,
"country": "England",
"formatted_address": "Driftwood, Seafield Road, Seaview, Isle Of Wight PO345HD",
"town_or_city": null,
"district": "Isle Of Wight",
"postcode": "PO34 5HD",
"county": "Seaview",
"locality": null,
"sub_building_name": "Driftwood",
"thoroughfare": "Seafield Road",
"sub_building_number": null,
"building_number": null
},
"details": {
"age_band": "AGE_ONWARDS2012",
"bedrooms": 3,
"orientation": "LEFT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 3,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 50.720574,
"longitude": -1.111745
},
"contacts": [
{
"home_phone": "01983616214",
"forename": "Andrew",
"surname": "Steward",
"mobile": "07566224395",
"id": "NEKDtVx6m3I4WzADjoEx",
"title": "Mr",
"email": "andy@stewarduk.com"
}
],
"surveys": [
{
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY"
},
"progress": 1,
"survey_version_id": "",
"resources": [
{
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
},
"resource_type": "SURVEYOR"
}
]
}
],
"resources": [
{
"id": "",
"changed_date": "",
"lifecycle": "",
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"survey": {
"id": "",
"name": ""
}
}
]
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 5,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_elements": 2,
"total_pages": 1,
"last": true,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number": 1,
"number_of_elements": 2,
"first": true,
"size": 5,
"empty": true
}
{id}
/detailsPath variables
Request body
Number of Rooms
Number of Conservatories
POST /properties/{id}/details HTTP/1.1
Content-Type: application/json
{
"age_band": "",
"bedrooms": 2,
"conservatories": "",
"construction": "",
"extensions": "",
"external_walls": "",
"flat_position": "",
"orientation": "",
"property_type": "",
"storeys": 1,
"sub_type": ""
}
Request body
{id}
/contactsPath variables
Request body
external_id of a contact
is this the primary contact
is the contact a signatory
Type of the contact
{id}
/surveysPath variables
Request body
{id}
/detailsPath variables
Request body
{id}
/energyPath variables
Request body
POST /properties/{id}/energy HTTP/1.1
Content-Type: application/json
{
"mains_gas": true,
"primary_heating": "SOLIDFUEL_ROOM_HEATER",
"secondary_heating": "",
"suppliers": [
{
"energy_type": "",
"supplier": "",
"meter_code": ""
}
]
}
{id}
/components{id}
/checklists{id}
{id}
/checklistsPath variables
Responses
Body
GUID of Property Checklist
started date
completed date
ID of Review Checklist
Name of Review Checklist
Description of Review Checklist
guid of review
ID-1234
Proof of detachment type
PHOTO
PROOF_DETATCHMENT
Date issue was resolved
Review Notes
GET /properties/{id}/checklists HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "2573c433-a128-11eb-b8ba-42010a9a004e",
"started": 1,
"completed": 1,
"review_checklist": {
"id": "2573c433-a128-11eb-b8ba-42010a9a004e",
"name": "Photo",
"description": "All Expected Photos are uploaded"
},
"reviews": [
{
"id": "5f494b68-dc9e-4cc8-9256-0d60850ccc13",
"review_date": 1,
"completed_date": 1,
"reviewer": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"transferred": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"action": {
"id": "",
"name": "",
"action_type": "ACTION",
"required": true
},
"issues": [
{
"id": "",
"evidence": {
"id": "",
"name": "",
"evidence_type": "",
"shortcode": ""
},
"resolved_date": 123456
}
],
"notes": [
{
"id": "",
"note": "",
"note_date": "",
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
]
}
Responses
Body
{id}
/reviews{id}
/reviews{id}
{id}
/issues{id}
/reviewsPath variables
Request parameters
Filter based on Stage ID
Responses
Body
GET /properties/{id}/reviews HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"reviewer": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"transfer": {
"transfer_date": "",
"transfer_to": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
},
"checkout": {
"is_checkout": true,
"checkout_date": ""
},
"notes": [
{
"id": "",
"note_date": 1,
"note": "",
"note_type": "",
"note_owner": {
"adminuser": {
"id": "",
"nname": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
],
"review_date": "",
"complete_date": ""
}
]
GET /properties/{id}/reviews HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"reviewer": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"review_action": {
"id": "",
"name": "",
"action_type": "",
"evidence_type": ""
},
"transfer": {
"transfer_date": "",
"transfer_to": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
},
"checkout": {
"is_checkout": true,
"checkout_date": ""
},
"notes": [
{
"id": "",
"note_date": 1,
"note": "",
"note_type": "",
"note_owner": {
"adminuser": {
"id": "",
"nname": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
],
"review_date": "",
"complete_date": ""
}
]
{id}
/reviewsPath variables
Request body
ID of Admin User
Organisation of Admin User
EPOCH of date of transfer
Admin User ID
Organisation ID being transfered to
Mark the item as check out
Date of check out if null use current
POST /properties/{id}/reviews HTTP/1.1
Content-Type: application/json
{
"reviewer": {
"admin_id": "",
"organisation_id": ""
},
"transfer": {
"transfer_date": "",
"admin_id": "",
"organisation_id": ""
},
"checkout": {
"is_checkout": true,
"checkout_date": ""
},
"property_checklist": {
"id": ""
},
"review_action": {
"id": ""
}
}
{id}
/notes{id}
/notes{id}
/notes/{notes_id}
{id}
/notes/{notes_id}
{id}
/notes/{notes_id}
Set notes to a reviewer instance using the ID from the properties reviewe ID
Path variables
Request body
Request parameters
Single Property
Single Admin User
Responses
Body
GET /reviews HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "",
"completed_date": "",
"review_date": "",
"property": {
"id": "DdNTL0nRRswbTkCvWkyt",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREMIER-000009",
"production": null,
"allocated_id": null,
"life_cycle": "SURVEY",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "64 Guildford Park Avenue, Guildford, Surrey, GU2 7NL",
"town_or_city": "Guildford",
"district": "Guildford",
"postcode": "GU2 7NL",
"county": "Surrey",
"locality": "",
"sub_building_name": "",
"thoroughfare": "Guildford Park Avenue",
"sub_building_number": null,
"building_number": "64"
},
"details": {
"age_band": "AGE_1996",
"bedrooms": 3,
"orientation": "RIGHT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 2,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 51.239197,
"longitude": -0.58395
},
"contacts": {
"id": "7W38kGhSDeb3QGtcHHJJ",
"title": "Mr",
"forename": "Andy",
"surname": "Steward",
"email": null,
"mobile": "07566224395",
"home_phone": "07566224395",
"date_of_birth": null
},
"surveys": [
{
"id": "957efa83-71e9-49cd-aabf-c260a3cb7239",
"survey": {
"id": "1",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"small_icon": "CAVITY",
"large_icon": null
},
"progress": 1,
"survey_version_id": null,
"survey_date": null,
"resources": [
{
"id": "709d7680-0ee4-4867-9209-295d75745ecd",
"adminuser": {
"id": "4be396f8-9c50-11eb-b8ba-42010a9a004e",
"name": "Baljit Mann"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
},
"resource_type": "SURVEYOR"
}
]
}
]
},
"reviewer": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"transfered-to": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
{id}
/issuesPath variables
Request body
Issue ID
Date Resolved
Notes
PUT /reviews/{id}/issues HTTP/1.1
Content-Type: application/json
[
{
"issues": {
"id": "",
"resolved_date": "",
"notes": ""
}
}
]
Workflow system for moving properties from various stages
{id}
/stages{id}
/workitems{id}
/progress{id}
/workitems{id}
/access{id}
/stagesPath variables
Request body
Current stage of the item
ID of a stage to move the item to can be multiple if the intended stage is a CHILD type. For each stage look up the checklist and add to the Property
POST /properties/{id}/stages HTTP/1.1
Content-Type: application/json
{
"currrent": {
"id": null
},
"route": [
{
"id": "5ae3b851-a120-11eb-b8ba-42010a9a004e"
},
{
"id" : "6dc261be-a120-11eb-b8ba-42010a9a004e"
}
]
}
POST /properties/{id}/stages HTTP/1.1
Content-Type: application/json
{
"currrent": {
"id": "5ae3b851-a120-11eb-b8ba-42010a9a004e"
},
"route": [
{
"id": ""
}
]
}
Get a list of worklists using the Admin Token Roles
Responses
Body
ID of worklist
Use to show work checked out to the current user
Alllow the filters to be configured by a user rather than fixed b configuration.
ID of the filter item
Should the task be completed or not completed
GET /worklists HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"id": "abc123",
"name": "LA Flex Not Complete",
"description": "Check LA Flex Complee",
"user_assigned": true,
"stages": [
{
"id": "5ae3b851-a120-11eb-b8ba-42010a9a004e",
"name": "Surveyed",
"description": "Properties that have been surveyed and uploaded",
"filters": [
{
"id": "123",
"is_completed": false,
"checklist": {
"id": "bf9f733b-2c09-4ac7-8270-7dd726b27d87",
"name": "LA Flex Appproval",
"description": "LA Flex Approval",
"is_required": true,
"priority": 1
}
}
]
}
]
}
]
{id}
/workitemsPath variables
Request body
GET /worklist/{id}/workitems HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "0ec736f7-b762-4d5f-b3e8-bb470f51fc89",
"is_allocated": true,
"process": {
"id": "87840472-a437-11eb-b8ba-42010a9a004e",
"name": "Process Survey",
"description": "Manual Import from Partners and Final Checking",
"started": 1625750179,
"completed": null,
"tenant_id": null
},
"stage": {
"id": "49edf769-c86d-11eb-9bb2-42010a9a0026",
"name": "Survey Hold",
"description": "Surveys In Motion not complete",
"expected_duration": 2,
"alert_after": 1,
"priority": 1,
"stage_type": null,
"icon_name": null,
"started": 1625750179,
"completed": null
},
"checklists": [
{
"id": "6ca1bb66-c880-11eb-9bb2-42010a9a0026",
"name": "Property Details",
"description": "Property Details Complete",
"checklist_group": "PROPERTY",
"survey": null,
"is_required": true,
"priority": 1,
"actions": [
{
"id": "e9cfc46f-3537-4a7b-9721-92b8f9d97012",
"name": "Missing property details",
"description": "Data missing in property details",
"priority": 1,
"is_required": true,
"action_type": "ISSUE",
"automation_id": null,
"evidence_type": null
}
],
"property_checklist": {
"id": "2fb42bf6-a684-40da-9d2c-3f2b45c82c08",
"started_date": 1626792660,
"completed_date": 1626792660
}
}
],
"property": {
"id": "DdNTL0nRRswbTkCvWkyt",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREMIER-000009",
"production": null,
"allocated_id": null,
"life_cycle": "SURVEY",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "64 Guildford Park Avenue, Guildford, Surrey, GU2 7NL",
"town_or_city": "Guildford",
"district": "Guildford",
"postcode": "GU2 7NL",
"county": "Surrey",
"locality": "",
"sub_building_name": "",
"thoroughfare": "Guildford Park Avenue",
"sub_building_number": null,
"building_number": "64"
},
"details": {
"age_band": "AGE_1996",
"bedrooms": 3,
"orientation": "RIGHT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 2,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 51.239197,
"longitude": -0.58395
},
"contacts": [
{
"id": "7W38kGhSDeb3QGtcHHJJ",
"title": "Mr",
"forename": "Andy",
"surname": "Steward",
"email": null,
"mobile": "07566224395",
"home_phone": "07566224395",
"date_of_birth": null
}
],
"surveys": [
{
"id": "957efa83-71e9-49cd-aabf-c260a3cb7239",
"survey": {
"id": "1",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"small_icon": "CAVITY",
"large_icon": null
},
"progress": 1,
"survey_version_id": null,
"survey_date": null,
"resources": [
{
"id": "709d7680-0ee4-4867-9209-295d75745ecd",
"adminuser": {
"id": "4be396f8-9c50-11eb-b8ba-42010a9a004e",
"name": "Baljit Mann"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
},
"resource_type": "SURVEYOR"
}
]
}
],
"resources": [
null
],
"appointments": [
{
"id": "fb96bece-3d24-4198-be87-ebce3497ce54",
"adminuser": {
"id": "001a9ac4-4e22-4b51-97d9-d0697575ec6c",
"name": "Sam Surveyor"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
},
"appointment_date": 1622565017,
"appointment_length": 120
}
]
},
"project": {
"id": "",
"name": "",
"start_date": "",
"lifecycle": "",
"completion_date": ""
}
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 6,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_elements": 1,
"total_pages": 1,
"last": true,
"number": 1,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number_of_elements": 1,
"first": true,
"size": 6,
"empty": true
}
{id}
/workitemsPath variables
Responses
Body
GET /worklist/{id}/workitems HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "fdac80fb-def1-483f-9fbd-deb8a4ecb94b",
"is_allocated": true,
"process": {
"id": "87840472-a437-11eb-b8ba-42010a9a004e",
"name": "Process Survey",
"description": "Manual Import from Partners and Final Checking",
"started": 1623966079,
"completed": null,
"tenant_id": null
},
"stage": {
"id": "6dc261be-a120-11eb-b8ba-42010a9a004e",
"name": "Finance Check",
"description": "Apply For LA Flex",
"expected_duration": 20,
"alert_after": 15,
"priority": 1,
"stage_type": null,
"icon_name": null,
"started": 1623966079,
"completed": null
},
"review_checklists": [
{
"id": "",
"name": "",
"description": "",
"required": true,
"checklist_group": "PROPERTY",
"priority": 1,
"survey": {
"id": "",
"name": ""
},
"property_checklist": {
"id": "",
"started_date": 1,
"completed_date": ""
}
}
],
"property": {
"id": "SPzkXk5i3KybKsPG5stq",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"measures": null,
"address": {
"building_name": "",
"country": "England",
"formatted_address": "Roseway, Seafield Road, Seaview, Isle of Wight, PO34 5HD",
"town_or_city": "Seaview",
"district": "Isle Of Wight",
"postcode": "PO34 5HD",
"county": "Isle of Wight",
"locality": "",
"sub_building_name": "Roseway",
"thoroughfare": "Seafield Road",
"sub_building_number": "",
"building_number": ""
},
"code": "PREMIER-000002",
"production": true,
"allocated_id": "001a9ac4-4e22-4b51-97d9-d0697575ec6c",
"details": {
"age_band": "AGE_1950",
"bedrooms": 3,
"orientation": "LEFT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 1,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 50.720574,
"longitude": -1.111745
},
"contacts": [
{
"home_phone": "01983616214",
"forename": "Sam",
"surname": "Wang ",
"mobile": "07850082838",
"id": "SftgTSioWbX7R1spbCcG",
"title": "Mr",
"email": "sam@vizulink.com"
}
]
}
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 9,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_elements": 2,
"total_pages": 1,
"last": true,
"number": 1,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number_of_elements": 2,
"first": true,
"size": 9,
"empty": true
}
Request parameters
Request body
Allows the property to be added into 1 or more processes based on the configiration of the project type that is identified by the property project id
Request body
Optional
Request body
Examples
{
"id": "f0734de5-2174-4d76-baaa-3387e2066af4",
"is_allocated": true,
"process": {
"id": "87840472-a437-11eb-b8ba-42010a9a004e",
"name": "Survey Package",
"description": "Manual Import from Partners and Final Checking",
"started": 1639494333,
"completed": null,
"tenant_id": null
},
"stage": {
"id": "5ae3b851-a120-11eb-b8ba-42010a9a004e",
"name": "Survey Check",
"description": "Properties that have been surveyed and uploaded",
"expected_duration": 5,
"alert_after": 4,
"priority": 1,
"stage_type": null,
"icon_name": null,
"started": 1639494333,
"completed": null
},
"checklists": [
{
"id": "828f2efe-a38f-11eb-b8ba-42010a9a004e",
"name": "Land Registry",
"description": "Uploaded Land Registry or Proof of Ownersip",
"checklist_group": "PROPERTY",
"survey": null,
"is_required": true,
"priority": 1,
"actions": [
{
"id": "eece8271-b7c3-11eb-9bb2-42010a9a0026",
"name": "Upload Land Registry Form",
"description": "Upload Land Registry",
"priority": 1,
"is_required": true,
"action_type": "UPLOAD",
"automation_id": null,
"evidence_type": "DOCUMENT",
"evidence_rule": {
"id": "e5747e7c-19ae-40f4-a6b2-2528ef29d3e1",
"name": "Land Registry "
}
}
],
"property_checklist": null
}
],
"property": {
"id": "fed0b5a2-8717-44de-b7dc-0fefecdaf07b",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": null,
"production": null,
"allocated_id": null,
"created_on": 1637056259,
"created_by": "a3a6729d-6216-4e97-a8ae-8780a9ace686",
"modified_on": null,
"modified_by": null,
"life_cycle": "ARCHIVED",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "The Bolt Hole, Seafield Road, Seaview, Isle of Wight, PO34 5HD",
"town_or_city": "Seaview",
"district": "Isle Of Wight",
"postcode": "PO34 5HD",
"county": "Isle of Wight",
"locality": "",
"sub_building_name": "The Bolt Hole",
"thoroughfare": "Seafield Road",
"sub_building_number": null,
"building_number": ""
},
"details": {
"age_band": null,
"bedrooms": null,
"orientation": "RIGHT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": null,
"storeys": null,
"conservatories": null,
"flat_position": null,
"external_walls": null,
"primary_heating": null,
"secondary_heating": null,
"is_maingas": null,
"tenure": null,
"parkhome_size": null,
"floor_number": null,
"elevations": {
"left": null,
"right": null,
"front": null,
"rear": null
}
},
"location": {
"latitude": 50.720574,
"longitude": -1.111745
},
"local_authority": {
"id": "72fbb8b0-04ff-11ec-bcdb-42010a9a001a",
"code": "E06000046",
"name": "Isle of Wight"
},
"contacts": [
{
"id": "a30713a2-e5d8-4fe2-ab74-52fb4cfaa1d5",
"title": "Mr",
"forename": "Avi",
"surname": "sharma",
"email": null,
"mobile": null,
"home_phone": null,
"date_of_birth": null,
"is_primary": true,
"is_signatory": null,
"benefit_recipient": null,
"preferred_contact": "EMAIL",
"assesment_type": null,
"tenure": null,
"contact_type": null
}
],
"surveys": [
{
"id": "91d1cf42-d07f-4d2e-a254-f1c5e153d6e9",
"survey": {
"id": "c76ed744-c849-11eb-9bb2-42010a9a0026",
"name": "Loft Insulation",
"description": "Loft Insulation Survery",
"measure_type": "LOFT",
"config_group": "MEASURE",
"small_icon": "LOFT",
"large_icon": null,
"requires_install": true,
"versions": [
{
"id": "4",
"name": "1.0",
"published_date": 1622919575,
"expired_date": null,
"description": "Loft Survey v1"
}
]
},
"progress": 1,
"survey_version_id": "c1d8f3bf-22c5-11ec-bcdb-42010a9a001a",
"survey_date": null,
"resources": [
{
"id": "d1ddf6c6-8030-4180-aed6-f486b20427ed",
"adminuser": {},
"organisation": {},
"resource_type": "SALES"
}
],
"rag_status": null,
"life_cycle": null
}
],
"workflow_logs": [
{
"id": "000efeea-14ec-4dc6-becb-668a9b751cb6",
"arrived_date": 1639494332.851,
"action": "ARRIVED",
"stage": {
"id": "6dc261be-a120-11eb-b8ba-42010a9a004e",
"name": "LA Flex"
},
"process": {
"id": "87840472-a437-11eb-b8ba-42010a9a004e",
"name": "Survey Package"
},
"performed_by": null,
"organisation_id": null,
"property_project_id": null
}
],
"project": {
"id": "",
"name": "",
"start_date": "",
"completion_date": "",
"lifecycle": ""
}
}
}
Manage Photos
{id}
/mediagroups{id}
Responses
Body
ID of survey
Name of survey
{id}
/media{id}
/mediaPath variables
Responses
Body
Id of group
Section Type
Survey Name
GET /properties/{id}/media HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"media_groups": [
{
"id": "123456",
"group_section": "MEASURE",
"measure_type": "LOFT",
"group_media": [
{
"id": "27ad2c5b-de33-4e7b-855c-79889f6b2630",
"usage_type": "HERO",
"width": 6616,
"format": "jpg",
"media_id": "bd928cf6-8d56-44a1-80c3-8f8fc8628c8c",
"media": [
{
"id": null,
"width": 50,
"height": 33,
"url": "https://res.cloudinary.com/crm-com/image/upload/c_scale,f_auto,q_auto,w_50/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg"
}
],
"url": "https://res.cloudinary.com/crm-com/image/upload/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg",
"height": 4411,
"media_group_id": "7c9d0054-5bdc-4905-ae46-6fd405d8e9c8",
"public_id": "23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj",
"external_type": {
"id": "guid_of_rule",
"usage_type": "CAVITY_WALL_1"
}
}
]
}
]
}
]
Responses
Body
Name of small icon
Name of large icon
Group PROPERTY, CONTACT, MEASURE
type of Measure
is the group used for answer collection
If type is a range then min and max values
ICON_SM
ICON_LG
ECO 3
ECO 3
0
where to go if a numeric as an array of groups
GET /data_categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"data_group": {
"id": "6695020a-ab3c-11eb-9bb2-42010a9a0026",
"name": "Overview",
"description": "Overview of Cavity Survey",
"icons": {
"small_icon": "ICON_SM",
"large_icon": "ICON_LG"
},
"config_group": "PROPERTY",
"measure_type": "LOFT",
"data_items": [
{
"id": "a91f60f4-ab3e-11eb-9bb2-42010a9a0026",
"name": "Lead Type",
"description": "Type of Lead",
"icons": {
"small_icon": "",
"large_icon": ""
},
"item_type": "DATETIME",
"range": {
"min": 1,
"max": 1
},
"mask": "",
"standard": "",
"is_optional": "",
"next_group_id": "",
"priority": "",
"choices": [
{
"id": "0b079cdc-ab3f-11eb-9bb2-42010a9a0026",
"icons": {
"small_icon": "ICON_SM",
"large_icon": "ICON_LG"
},
"name": "ECO 3",
"description": "",
"priority": 0
},
{
"id": "24b347fe-ab3f-11eb-9bb2-42010a9a0026",
"icons": {
"small_icon": "ICON_SM",
"large_icon": "ICON_LG"
},
"name": "Green Homes Grant",
"description": "",
"priority": 1
}
]
}
]
}
}
]
With answer sub-group
GET /data_categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"data_group": {
"id": "6695020a-ab3c-11eb-9bb2-42010a9a0026",
"name": "Overview",
"description": "Overview of Cavity Survey",
"icons": {
"small_icon": "ICON_SM",
"large_icon": "ICON_LG"
},
"config_group": "PROPERTY",
"measure_type": "LOFT",
"answer_group": true,
"data_items": [
{
"id": "a91f60f4-ab3e-11eb-9bb2-42010a9a0026",
"name": "Lead Type",
"description": "Type of Lead",
"icons": {
"small_icon": "",
"large_icon": ""
},
"item_type": "ORGANISATION",
"range": {
"min": 1,
"max": 1
},
"mask": "",
"standard": "",
"is_optional": "",
"priority": "",
"choices": [
{
"id": "0b079cdc-ab3f-11eb-9bb2-42010a9a0026",
"icons": {
"small_icon": "",
"large_icon": ""
},
"name": "",
"description": "",
"priority": ""
}
],
"next_group": {
"id": "",
"name": ""
},
"yes_group": {
"id": "",
"name": ""
},
"no_group": {
"id": "",
"name": ""
}
}
]
}
}
]
Uploading files
{id}
/photosList of appointments
{id}
{id}
/appointments{id}
/appointmentsRequest parameters
Responses
Body
Examples
{
"content": [
{
"id": "511aa9d8-7c07-4fd7-893b-8196630e2e7a",
"owner": {
"adminuser": {
"id": "1c56972c-8a90-459a-a612-9ab87c04ee7c",
"name": "Ryan Haider"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
}
},
"appointment_date": 1646643600,
"appointment_length": 60,
"appointment_status": "PENDING",
"notes": "CL booked in 24/02/2022 please call 30 mins before arrival. Charlie Rumbold ",
"appointment_type": "SURVEY",
"outcome_notes": null,
"slot": null,
"property": {
"id": "5ba916f0-b395-4168-ab9e-944257cc8926",
"code": "PREMIER-000253",
"life_cycle": "LEAD",
"address": {
"formatted_address": "62 Beam Avenue, Dagenham, Essex, RM10 9BJ"
},
"location": {
"latitude": 51.531387,
"longitude": 0.158275
}
},
"property_surveys": [
{
"id": "0a26edea-dda1-410e-9aae-16d45494d8c6",
"property_projects": [
{
"id": "db3865c5-b1ce-4b5f-9da9-0c3c7128a817",
"project": {
"id": "c81d462c-6e5d-11ec-b2c1-42010a9a0003",
"name": "LAD E.ON",
"description": null
},
"start_date": 1645709415,
"completion_date": null,
"lifecycle": "ACTIVE"
}
],
"survey": {
"id": "03093ab8-4080-11ec-837d-42010a9a0002",
"name": "Solar PV",
"description": "Solar Energy Survey"
}
}
]
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 150,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_pages": 2,
"last": true,
"total_elements": 193,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number": 1,
"number_of_elements": 150,
"first": true,
"size": 150,
"empty": true
}
GET /appointments HTTP/1.1
Content-Type: application/json
{
"content": [
{
"appointment_date": "2022-01-17T14:00:40.817Z",
"appointment_length": 1,
"appointment_status": "COMPLETE",
"appointment_type": "SURVEY",
"cancel_notes": "string",
"cancel_reason": "CUSTOMER_CANCELLED",
"id": "string",
"notes": "string",
"owner": {
"adminuser": {
"id": "string",
"name": "string"
},
"organisation": {
"id": "string",
"name": "string"
}
},
"property": {
"address": {
"building_name": "string",
"building_number": "string",
"country": "string",
"county": "string",
"district": "string",
"formatted_address": "string",
"locality": "string",
"postcode": "string",
"sub_building_name": "string",
"sub_building_number": "string",
"thoroughfare": "string",
"town_or_city": "string"
},
"allocated_id": "string",
"code": "string",
"contacts": [
{
"assesment_type": "DWP_CHECK",
"benefit_recipient": true,
"contact_type": "THIRD_PARTY",
"date_of_birth": {
"additionalProp1": 1,
"additionalProp2": 1,
"additionalProp3": 1
},
"email": "string",
"forename": "string",
"home_phone": "string",
"id": "string",
"is_primary": true,
"is_signatory": true,
"mobile": "string",
"preferred_contact": "EMAIL",
"surname": "string",
"tenure": "OWNER",
"title": "string"
}
],
"details": {
"age_band": "AGE_BEFORE1900",
"bedrooms": 1,
"conservatories": true,
"construction": "CONVENTIONAL_CAVITY",
"elevations": {
"front": true,
"left": true,
"rear": true,
"right": true
},
"extensions": 1,
"external_walls": 1,
"flat_position": "TOP",
"floor_number": 1,
"is_maingas": true,
"orientation": "LEFT",
"parkhome_size": "SINGLE",
"primary_heating": "GAS_BOILER",
"property_type": "HOUSE",
"secondary_heating": "GAS_BOILER",
"storeys": 1,
"sub_type": "DETACHED",
"tenure": "PRIVATE_OWNER"
},
"id": "string",
"life_cycle": "LEAD",
"location": {
"latitude": 1,
"longitude": 1
},
"organisation_id": "string",
"production": true,
"tenant_id": "string"
},
"resources": [
{
"appointments": [
{
"adminuser": {
"id": "string",
"name": "string"
},
"appointment_date": "2022-01-17T14:00:40.817Z",
"appointment_length": 1,
"appointment_status": "COMPLETE",
"appointment_type": "SURVEY",
"created_on": "2022-01-17T14:00:40.817Z",
"id": "string",
"notes": "string",
"organisation": {
"id": "string",
"name": "string"
},
"slot": "AM"
}
],
"changed_date": "2022-01-17T14:00:40.817Z",
"id": "string",
"life_cycle": "ASSIGNED",
"owner": {
"adminuser": {
"id": "string",
"name": "string"
},
"organisation": {
"id": "string",
"name": "string"
}
},
"property_survey": {
"id": "string",
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"property_project": {
"completion_date": "2022-01-17T14:00:40.818Z",
"id": "string",
"lifecycle": "ACTIVE",
"project": {
"description": "string",
"id": "string",
"name": "string"
},
"start_date": "2022-01-17T14:00:40.818Z"
},
"rag_status": "RED",
"survey": {
"config_group": "PROPERTY",
"description": "string",
"id": "string",
"measure_type": "CAVITY",
"name": "string",
"requires_install": true,
"small_icon": "string",
"version": {
"id": "string",
"name": "string"
}
},
"survey_date": "2022-01-17T14:00:40.818Z"
},
"resource_type": "SALES",
"survey": {
"id": "string",
"name": "string"
}
}
],
"slot": "AM",
"surveys": [
{
"id": "string",
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"property_project": {
"completion_date": "2022-01-17T14:00:40.818Z",
"id": "string",
"lifecycle": "ACTIVE",
"project": {
"description": "string",
"id": "string",
"name": "string"
},
"start_date": "2022-01-17T14:00:40.818Z"
},
"rag_status": "RED",
"survey": {
"config_group": "PROPERTY",
"description": "string",
"id": "string",
"measure_type": "CAVITY",
"name": "string",
"requires_install": true,
"small_icon": "string",
"version": {
"id": "string",
"name": "string"
}
},
"survey_date": "2022-01-17T14:00:40.818Z"
}
]
}
],
"empty": true,
"first": true,
"last": true,
"number": 1,
"number_of_elements": 1,
"pageable": {
"offset": 1,
"page_number": 1,
"page_size": 1,
"paged": true,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true
},
"size": 1,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"total_elements": 1,
"total_pages": 1
}
{id}
Path variables
Responses
Body
Examples
{
"owner": {
"adminuser": {
"id": ""
},
"organisation": {
"id": ""
}
},
"appointment_date": 1,
"appointment_length": 1,
"property": {
"id": "DdNTL0nRRswbTkCvWkyt",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREMIER-000009",
"production": null,
"allocated_id": null,
"life_cycle": "SURVEY",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "64 Guildford Park Avenue, Guildford, Surrey, GU2 7NL",
"town_or_city": "Guildford",
"district": "Guildford",
"postcode": "GU2 7NL",
"county": "Surrey",
"locality": "",
"sub_building_name": "",
"thoroughfare": "Guildford Park Avenue",
"sub_building_number": null,
"building_number": "64"
},
"details": {
"age_band": "AGE_1996",
"bedrooms": 3,
"orientation": "RIGHT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 2,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 51.239197,
"longitude": -0.58395
},
"contacts": {
"id": "7W38kGhSDeb3QGtcHHJJ",
"title": "Mr",
"forename": "Andy",
"surname": "Steward",
"email": null,
"mobile": "07566224395",
"home_phone": "07566224395",
"date_of_birth": null
},
"surveys": [
{
"id": "957efa83-71e9-49cd-aabf-c260a3cb7239",
"survey": {
"id": "1",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"small_icon": "CAVITY",
"large_icon": null
},
"progress": 1,
"survey_version_id": null,
"survey_date": null,
"resources": [
{
"id": "709d7680-0ee4-4867-9209-295d75745ecd",
"adminuser": {
"id": "4be396f8-9c50-11eb-b8ba-42010a9a004e",
"name": "Baljit Mann"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
},
"resource_type": "SURVEYOR"
}
]
}
]
},
"appointment_surveys": {
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"property_project": {
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
},
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"requires_install": true,
"small_icon": "",
"version": {
"id": "",
"name": ""
}
},
"progress": 1,
"survey_date": "",
"rag_status": "",
"life_cycle": ""
}
}
GET /appointments/id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"adminuser": {
"id": "",
"name": ""
},
"appointment_date": 1,
"appointment_length": 1,
"property": {
"id": "DdNTL0nRRswbTkCvWkyt",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREMIER-000009",
"production": null,
"allocated_id": null,
"life_cycle": "SURVEY",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "64 Guildford Park Avenue, Guildford, Surrey, GU2 7NL",
"town_or_city": "Guildford",
"district": "Guildford",
"postcode": "GU2 7NL",
"county": "Surrey",
"locality": "",
"sub_building_name": "",
"thoroughfare": "Guildford Park Avenue",
"sub_building_number": null,
"building_number": "64"
},
"details": {
"age_band": "AGE_1996",
"bedrooms": 3,
"orientation": "RIGHT",
"extensions": 1,
"sub_type": "SEMI_DETACHED",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 2,
"conservatories": 1,
"flat_position": null,
"external_walls": null
},
"location": {
"latitude": 51.239197,
"longitude": -0.58395
},
"contacts": {
"id": "7W38kGhSDeb3QGtcHHJJ",
"title": "Mr",
"forename": "Andy",
"surname": "Steward",
"email": null,
"mobile": "07566224395",
"home_phone": "07566224395",
"date_of_birth": null
},
"surveys": [
{
"id": "957efa83-71e9-49cd-aabf-c260a3cb7239",
"survey": {
"id": "1",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"small_icon": "CAVITY",
"large_icon": null
},
"progress": 1,
"survey_version_id": null,
"survey_date": null,
"resources": [
{
"id": "709d7680-0ee4-4867-9209-295d75745ecd",
"adminuser": {
"id": "4be396f8-9c50-11eb-b8ba-42010a9a004e",
"name": "Baljit Mann"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
},
"resource_type": "SURVEYOR"
}
]
}
]
},
"appointment_surveys": {
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"property_project": {
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
},
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"requires_install": true,
"small_icon": "",
"version": {
"id": "",
"name": ""
}
},
"progress": 1,
"survey_date": "",
"rag_status": "",
"life_cycle": ""
}
}
]
}
Request body
Examples
{
"property": {
"id": "473a6975-0756-4f87-ae2f-3138b010ce3a"
},
"owner": {
"adminuser": {
"id": "a3a6729d-6216-4e97-a8ae-8780a9ace686"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a"
}
},
"appointment_date": 1718991,
"appointment_length": 81,
"notes": "fake_data",
"appointment_status": "COMPLETE",
"cancel_notes": "fake_data",
"cancel_reason": "CUSTOMER_CANCELLED",
"appointment_type": "SURVEY",
"slot": "AM",
"property_surveys": [
{
"id": "07721a7f-fc77-499a-b02c-fea708de54c6",
"survey": {
"id": "a039cc7e-46c2-4344-9458-ab569bcae0b2"
}
}
],
"lead": {
"id": ""
}
}
Request body
{id}
/appointmentsRemoved Survey Version Removed Created BY, Modified Byy Added Service
Path variables
Responses
Body
{id}
/appointmentsPath variables
Request parameters
Responses
Body
Examples
{
"content": [
{
"id": "511aa9d8-7c07-4fd7-893b-8196630e2e7a",
"owner": {
"adminuser": {
"id": "1c56972c-8a90-459a-a612-9ab87c04ee7c",
"name": "Ryan Haider"
},
"organisation": {
"id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"name": "Premier Connections"
}
},
"appointment_date": 1646643600,
"appointment_length": 60,
"appointment_status": "PENDING",
"notes": "CL booked in 24/02/2022 please call 30 mins before arrival. Charlie Rumbold ",
"appointment_type": "SURVEY",
"outcome_notes": null,
"slot": null,
"property": {
"id": "5ba916f0-b395-4168-ab9e-944257cc8926",
"tenant_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"organisation_id": "e597dcbc-db49-44ce-b4f6-d20c14e0e46a",
"code": "PREMIER-000253",
"production": null,
"allocated_id": null,
"life_cycle": "LEAD",
"address": {
"building_name": "",
"country": "England",
"formatted_address": "62 Beam Avenue, Dagenham, Essex, RM10 9BJ",
"town_or_city": "Dagenham",
"district": "Barking And Dagenham",
"postcode": "RM10 9BJ",
"county": "Essex",
"locality": "",
"sub_building_name": "",
"thoroughfare": "Beam Avenue",
"sub_building_number": null,
"building_number": "62"
},
"details": {
"age_band": "AGE_1900",
"bedrooms": 3,
"orientation": "LEFT",
"extensions": 1,
"sub_type": "END_TERRACE",
"property_type": "HOUSE",
"construction": "CONVENTIONAL_CAVITY",
"storeys": 2,
"conservatories": true,
"flat_position": null,
"external_walls": null,
"primary_heating": "GAS_BOILER",
"secondary_heating": "NONE",
"is_maingas": true,
"tenure": null,
"parkhome_size": null,
"floor_number": null,
"elevations": {
"left": null,
"right": null,
"front": null,
"rear": null
}
},
"location": {
"latitude": 51.531387,
"longitude": 0.158275
},
"contacts": [
{
"id": "688e0ccd-207a-4de1-ba94-85184f2cfafe",
"title": "Mr",
"forename": "Kehindi",
"surname": "Odumosu",
"email": "na",
"mobile": "07306019205",
"home_phone": null,
"date_of_birth": null,
"is_primary": true,
"is_signatory": null,
"benefit_recipient": null,
"preferred_contact": "MOBILE",
"assesment_type": null,
"tenure": null,
"contact_type": "OWNER"
}
]
},
"lead": {
"id": "9a73e524-dde5-45f8-9217-c19b01d4f221"
},
"resources": [
{
"id": "8fb3a3ee-ad3f-440d-8d6f-a5829fb44938",
"changed_date": 1645710013,
"resource_type": "SURVEYOR",
"owner": null,
"survey": {
"id": "03093ab8-4080-11ec-837d-42010a9a0002",
"name": "Solar PV"
},
"life_cycle": "ASSIGNED",
"property_survey": null,
"appointments": [
null
]
}
],
"property_surveys": [
{
"id": "0a26edea-dda1-410e-9aae-16d45494d8c6",
"property_projects": [
{
"id": "db3865c5-b1ce-4b5f-9da9-0c3c7128a817",
"project": {
"id": "c81d462c-6e5d-11ec-b2c1-42010a9a0003",
"name": "LAD E.ON",
"description": null
},
"start_date": 1645709415,
"completion_date": null,
"lifecycle": "ACTIVE"
}
],
"survey": {
"id": "03093ab8-4080-11ec-837d-42010a9a0002",
"name": "Solar PV",
"description": "Solar Energy Survey",
"measure_type": null,
"requires_install": true,
"config_group": "MEASURE",
"small_icon": "SOLAR",
"whole_home": true,
"version": null
},
"progress": 1,
"survey_date": null,
"rag_status": null,
"lifecycle": "NEEDS_APPOINTMENT",
"status": null
}
]
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 150,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_pages": 2,
"last": true,
"total_elements": 193,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number": 1,
"number_of_elements": 150,
"first": true,
"size": 150,
"empty": true
}
GET /appointments HTTP/1.1
Content-Type: application/json
{
"content": [
{
"appointment_date": "2022-01-17T14:00:40.817Z",
"appointment_length": 1,
"appointment_status": "COMPLETE",
"appointment_type": "SURVEY",
"cancel_notes": "string",
"cancel_reason": "CUSTOMER_CANCELLED",
"id": "string",
"notes": "string",
"owner": {
"adminuser": {
"id": "string",
"name": "string"
},
"organisation": {
"id": "string",
"name": "string"
}
},
"property": {
"address": {
"building_name": "string",
"building_number": "string",
"country": "string",
"county": "string",
"district": "string",
"formatted_address": "string",
"locality": "string",
"postcode": "string",
"sub_building_name": "string",
"sub_building_number": "string",
"thoroughfare": "string",
"town_or_city": "string"
},
"allocated_id": "string",
"code": "string",
"contacts": [
{
"assesment_type": "DWP_CHECK",
"benefit_recipient": true,
"contact_type": "THIRD_PARTY",
"date_of_birth": {
"additionalProp1": 1,
"additionalProp2": 1,
"additionalProp3": 1
},
"email": "string",
"forename": "string",
"home_phone": "string",
"id": "string",
"is_primary": true,
"is_signatory": true,
"mobile": "string",
"preferred_contact": "EMAIL",
"surname": "string",
"tenure": "OWNER",
"title": "string"
}
],
"details": {
"age_band": "AGE_BEFORE1900",
"bedrooms": 1,
"conservatories": true,
"construction": "CONVENTIONAL_CAVITY",
"elevations": {
"front": true,
"left": true,
"rear": true,
"right": true
},
"extensions": 1,
"external_walls": 1,
"flat_position": "TOP",
"floor_number": 1,
"is_maingas": true,
"orientation": "LEFT",
"parkhome_size": "SINGLE",
"primary_heating": "GAS_BOILER",
"property_type": "HOUSE",
"secondary_heating": "GAS_BOILER",
"storeys": 1,
"sub_type": "DETACHED",
"tenure": "PRIVATE_OWNER"
},
"id": "string",
"life_cycle": "LEAD",
"location": {
"latitude": 1,
"longitude": 1
},
"organisation_id": "string",
"production": true,
"tenant_id": "string"
},
"resources": [
{
"appointments": [
{
"adminuser": {
"id": "string",
"name": "string"
},
"appointment_date": "2022-01-17T14:00:40.817Z",
"appointment_length": 1,
"appointment_status": "COMPLETE",
"appointment_type": "SURVEY",
"created_on": "2022-01-17T14:00:40.817Z",
"id": "string",
"notes": "string",
"organisation": {
"id": "string",
"name": "string"
},
"slot": "AM"
}
],
"changed_date": "2022-01-17T14:00:40.817Z",
"id": "string",
"life_cycle": "ASSIGNED",
"owner": {
"adminuser": {
"id": "string",
"name": "string"
},
"organisation": {
"id": "string",
"name": "string"
}
},
"property_survey": {
"id": "string",
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"property_project": {
"completion_date": "2022-01-17T14:00:40.818Z",
"id": "string",
"lifecycle": "ACTIVE",
"project": {
"description": "string",
"id": "string",
"name": "string"
},
"start_date": "2022-01-17T14:00:40.818Z"
},
"rag_status": "RED",
"survey": {
"config_group": "PROPERTY",
"description": "string",
"id": "string",
"measure_type": "CAVITY",
"name": "string",
"requires_install": true,
"small_icon": "string",
"version": {
"id": "string",
"name": "string"
}
},
"survey_date": "2022-01-17T14:00:40.818Z"
},
"resource_type": "SALES",
"survey": {
"id": "string",
"name": "string"
}
}
],
"slot": "AM",
"surveys": [
{
"id": "string",
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"property_project": {
"completion_date": "2022-01-17T14:00:40.818Z",
"id": "string",
"lifecycle": "ACTIVE",
"project": {
"description": "string",
"id": "string",
"name": "string"
},
"start_date": "2022-01-17T14:00:40.818Z"
},
"rag_status": "RED",
"survey": {
"config_group": "PROPERTY",
"description": "string",
"id": "string",
"measure_type": "CAVITY",
"name": "string",
"requires_install": true,
"small_icon": "string",
"version": {
"id": "string",
"name": "string"
}
},
"survey_date": "2022-01-17T14:00:40.818Z"
}
]
}
],
"empty": true,
"first": true,
"last": true,
"number": 1,
"number_of_elements": 1,
"pageable": {
"offset": 1,
"page_number": 1,
"page_size": 1,
"paged": true,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true
},
"size": 1,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"total_elements": 1,
"total_pages": 1
}
Request parameters
Responses
Body
type of evidence
GET /evidence_categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "9d855dc0-a1dd-11eb-b8ba-42010a9a004e",
"name": "Property Details",
"category_type": "PROPERTY",
"priority": 1,
"evidence_rules": [
{
"id": "e77b0d89-6868-4bc1-b1dd-e9200cb4892f",
"name": "Additional image",
"is_required": true,
"priority": null,
"shortcode": "ADDITIONAL_IMAGE",
"count": 10,
"applies": [
{
"property_type": "",
"sub_type": "",
"orientation": ""
}
],
"evidence_type": "PHOTO"
}
],
"survey": {
"id": "",
"name": ""
}
}
Responses
Body
{id}
/evidence{id}
/evidence{id}
/files{id}
/evidenceList of files uploaded as evidence
Path variables
Request parameters
Responses
Body
Examples
[
{
"id": "5a3b62ee-feb3-11eb-bcdb-42010a9a001a",
"component": {
"id": "7dfa7e25-3ba8-4b5a-b57a-52ca9580136b",
"name": "Window 1",
"component_type": "WINDOW"
},
"media": {
"id": "c8e8e4d3-5e32-4b3b-acbe-21ff28bad720",
"type": "PHOTO",
"width": 139,
"height": 91,
"format": "jpg",
"urls": [
{
"width": 50,
"height": 32,
"url": "https://res.cloudinary.com/vizulink-tech-lmimited/image/upload/c_scale,f_auto,q_auto,w_50/v1/ezeco/c47c8dc0-054d-4c89-8e6c-bcbd90c158f3/jnehefdc7lwzvmiywgup.jpg"
}
],
"url": ""
},
"evidence_rule": {
"id": "5bc19f33-4416-4abd-ba33-3c5b912ab939",
"name": "Window ",
"shortcode": "WINDOW",
"is_required": true,
"category": {
"id": "",
"name": "",
"category_type": "",
"survey": {
"id": "",
"name": ""
},
"lexicon": ""
},
"lifecycle": "",
"install_phase": ""
},
"uploaded_date": 1,
"adminuser": {
"id": "",
"name": ""
}
}
]
{id}
/evidencePath variables
Request body
Examples
[
{
"evidence_rule": {
"id": ""
},
"uploaded_by": {
"adminuser": {
"id": ""
},
"organisation": {
"id": ""
}
},
"uploaded_date": 1,
"media": {
"id": ""
},
"lifecycle": "",
"install_phase": "POST",
"property_project": {
"id": ""
}
}
]
Create a notification that can target a property and a user.
Request body
Request parameters
Use from Token
Use from Token
Responses
Body
GET /notifications HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "",
"notification_type": "",
"notification_info": "",
"notification_date": "",
"property": {
"id": "",
"formatted_address": "",
"postcode": ""
},
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
{id}
/notes{id}
/notesPath variables
Responses
Body
GET /properties/{id}/notes HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "",
"note_date": "",
"note": "",
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
Perform DWP Checks
{id}
/datamatches{id}
/datamatchesThe datamatch service will check if their is a number of contacts for the property incluyding a landlard and create the entry into a DWP batch API.
Path variables
Request body
Add A land Registry Check true or False.
Data mat
Request parameters
Responses
Body
ID of batch from DWP
Request parameters
Request body
Examples
[
{
"id": "",
"progress": 1,
"survey_date": 1,
"rag_status": "RED",
"life_cycle": "SURVEY_UPLOADED",
"survey": {
"id": "",
"name": "",
"description": "",
"config_group": "MEASURE",
"measure_type": "CAVITY",
"small_icon": "",
"large_icon": "",
"requires_install": true,
"version": {
"id": "",
"name": "",
"description": "",
"published_date": "",
"expired_date": ""
}
}
}
]
Request body
Examples
{
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"property_projects": [
{
"id": "string"
}
],
"rag_status": "RED",
"survey": {
"id": "string"
},
"survey_date": "2022-02-03T11:15:47.182Z",
"survey_version": {
"id": "string"
},
"appointment": {
"id": ""
},
"lead": {
"id": ""
}
}
Request body
Examples
[
{
"id": "",
"life_cycle": "SURVEY_CANCELLED",
"progress": 1,
"rag_status": "AMBER"
}
]
{id}
/resources{id}
/resourcesPath variables
Property ID
Request body
Request parameters
Request body
Examples
[
{
"id": "",
"changed_date": "",
"life_cycle": "",
"resource_type": "",
"property_survey": {
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"property_project": {
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
},
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"requires_install": true,
"small_icon": "",
"version": {
"id": "",
"name": ""
}
},
"progress": 1,
"survey_date": "",
"rag_status": "",
"life_cycle": ""
},
"owner": {
"organisation": {
"id": "",
"name": ""
},
"adminuser": {
"id": "",
"name": ""
}
}
}
]
Request body
Examples
[
{
"id": "",
"changed_date": "",
"life_cycle": "",
"resource_type": "",
"owner": {
"organisation": {
"id": "",
"name": ""
},
"adminuser": {
"id": "",
"name": ""
},
"property_project": [
{
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": "",
"completion_date": "",
"life_cycle": ""
}
],
"progress": "",
"survey_date": "",
"rag_status": "",
"life_cycle": "",
"survey": {
"id": "",
"name": "",
"description": "",
"measure_type": "",
"requires_install": "",
"small_icon": "",
"version": {
"id": "",
"name": ""
}
}
}
}
]
Request body
Examples
{
"id": "string",
"name": "string",
"description": "string",
"config_group": "PROPERTY",
"large_icon": "string",
"measure_type": "CAVITY",
"requires_install": true,
"small_icon": "string",
"versions": [
{
"description": "string",
"expired_date": "2022-01-13T08:49:59.992Z",
"id": "string",
"name": "string",
"published_date": "2022-01-13T08:49:59.992Z"
}
]
}
Request body
Examples
{
"address": {
"building_name": "string",
"building_number": "string",
"country": "string",
"county": "string",
"district": "string",
"formatted_address": "string",
"locality": "string",
"postcode": "string",
"sub_building_name": "string",
"sub_building_number": "string",
"thoroughfare": "string",
"town_or_city": "string"
},
"code": "string",
"details": {
"age_band": "AGE_BEFORE1900",
"bedrooms": 1,
"conservatories": true,
"construction": "CONVENTIONAL_CAVITY",
"elevations": {
"front": true,
"left": true,
"rear": true,
"right": true
},
"extensions": 1,
"external_walls": 1,
"flat_position": "TOP",
"floor_number": 1,
"is_maingas": true,
"orientation": "LEFT",
"parkhome_size": "SINGLE",
"primary_heating": "GAS_BOILER",
"property_type": "HOUSE",
"secondary_heating": "GAS_BOILER",
"storeys": 1,
"sub_type": "DETACHED",
"tenure": "PRIVATE_OWNER"
},
"energy": {
"mains_gas": true,
"primary_heating": "GAS_BOILER",
"secondary_heating": "GAS_BOILER",
"suppliers": {
"energy_type": "string",
"meter_code": "string",
"supplier": "string"
}
},
"id": "string",
"life_cycle": "LEAD",
"location": {
"latitude": 1,
"longitude": 1
},
"organisation_id": "string",
"lead": [
{
"owner": {
"adminuser": {
"id": "string"
},
"organisation": {
"id": "string"
}
}
}
]
}
Request body
Examples
{
"content": [
{
"id": "string",
"address": {
"building_name": "string",
"building_number": "string",
"country": "string",
"county": "string",
"district": "string",
"formatted_address": "string",
"locality": "string",
"postcode": "string",
"sub_building_name": "string",
"sub_building_number": "string",
"thoroughfare": "string",
"town_or_city": "string"
},
"allocated_id": "string",
"appointments": [
{
"adminuser": {
"id": "string",
"name": "string"
},
"appointment_date": "2022-02-03T14:11:33.824Z",
"appointment_length": 1,
"appointment_status": "COMPLETE",
"appointment_type": "SURVEY",
"created_on": "2022-02-03T14:11:33.824Z",
"id": "string",
"notes": "string",
"organisation": {
"id": "string",
"name": "string"
},
"slot": "AM"
}
],
"code": "string",
"created_by": "string",
"created_on": "2022-02-03T14:11:33.824Z",
"details": {
"age_band": "AGE_BEFORE1900",
"bedrooms": 1,
"conservatories": true,
"construction": "CONVENTIONAL_CAVITY",
"elevations": {
"front": true,
"left": true,
"rear": true,
"right": true
},
"extensions": 1,
"external_walls": 1,
"flat_position": "TOP",
"floor_number": 1,
"is_maingas": true,
"orientation": "LEFT",
"parkhome_size": "SINGLE",
"primary_heating": "GAS_BOILER",
"property_type": "HOUSE",
"secondary_heating": "GAS_BOILER",
"storeys": 1,
"sub_type": "DETACHED",
"tenure": "PRIVATE_OWNER"
},
"epc": [
{
"id": "string",
"current_rating": "string",
"current_energy_efficiency": 1,
"potential_rating": "string",
"potential_energy_efficiency": 1,
"lodgement_date": "2022-02-03T14:11:33.824Z"
}
],
"life_cycle": "LEAD",
"modified_by": "string",
"modified_on": "2022-02-03T14:11:33.824Z",
"organisation_id": "string",
"production": true,
"tenant_id": "string",
"lead": {
"id": "",
"generated": 12353232,
"lifecycle": "",
"owner": {
"adminuser": {
"id": ""
},
"organisation": {
"id": ""
}
}
},
"property_survey": [
{
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"property_project": {
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
},
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY",
"requires_install": true,
"small_icon": "",
"version": {
"id": "",
"name": ""
}
},
"progress": 1,
"survey_date": "",
"rag_status": "",
"life_cycle": ""
}
]
}
],
"empty": true,
"first": true,
"last": true,
"number": 1,
"number_of_elements": 1,
"pageable": {
"offset": 1,
"page_number": 1,
"page_size": 1,
"paged": true,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"unpaged": true
},
"size": 1,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"total_elements": 1,
"total_pages": 1
}
Request body
Examples
{
"content": [
{
"id": "",
"generated": "",
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"property": {
"id": "",
"address": {
"formatted_address": ""
}
},
"property_surveys": [
{
"id": "63938c56-9d06-4ea0-9c3b-d050259ede02",
"survey": {
"id": "f4985412-61ff-47b9-85d8-d0da88b3c779",
"small_icon": "VENTILATION"
}
}
],
"lifecycles": [
{
"id": "46973dce-e2dc-4fc8-a537-6442fa4e7c8b",
"lifecycle": "SURVEY_BOOKED",
"lifecycle_date": 1645193070
}
],
"epcs": [
{
"id": "543796d0-f977-457b-9419-e0d9127fe18b",
"lodgement_date": 1271289600,
"current_rating": "C",
"potential_rating": "C",
"current_energy_efficiency": 73,
"potential_energy_efficiency": 75
}
]
}
]
}
Request body
Examples
{id}
{id}
Request body
Examples
{
"name": "",
"description": "",
"service_type": "TRADES"
}
Responses
Body
Examples
{
"id": "",
"name": "",
"description": "",
"service_type": "",
"tenant_id": ""
}
{id}
Path variables
Request body
Examples
{
"name": "",
"description": "",
"service_type": "TRADES"
}
Responses
Body
Examples
{
"id": "",
"name": "",
"description": "",
"service_type": "",
"tenant_id": ""
}
{surveyId}
/services/{id}
/availabilityPath variables
Request parameters
Start date to search from. Optional: by default today
Bring back only those with capacity
End date. Optional - by default start date +7 days
Request body
Start Time
Formatted Address of Property
Number of appointments / day setting
Examples
{
"organisation": {
"id": "",
"name": ""
},
"adminuser": {
"id": "",
"name": ""
},
"slot": "",
"bookings": [
{
"start_time": "",
"length": "",
"formatted_address": ""
}
],
"capacity": 1
}
Responses
Request body
Contact ID to associate the Payment_method
email if needed
mobile option for 3DS verification
Primary ID of stored card in gateway
POST /payment_methods HTTP/1.1
Content-Type: application/json
{
"integration_id": "",
"platform": "STRIPE",
"method_type": "CARD",
"is_primary": true,
"holder_details": {
"contact_id": "",
"first_name": "John",
"last_name": "Krasinski",
"email": "",
"mobile": ""
},
"bank_details": {
"account_name": "name",
"account_number": "number",
"sort_code": "code",
"iban": "iban",
"swift": "swift"
},
"card": {
"name": "Card-name",
"first6": "first6",
"last4": "last4",
"brand": "",
"expiry": {
"year": 1,
"month": 1
}
},
"gateway": {
"gateway": "STRIPE",
"gateway_id": "identifier",
"token": "token",
"fingerprint": ""
}
}
Request parameters
Contact ID connected to payment Methods
Integation_id for the payment platform
Technology used
Responses
Body
{id}
/filesRequest body
Examples
{
"mediaGroupExternalId": "e66896ba-db0a-41e2-8093-9aca2ae02f29",
"mediaUsageType": "THUMBNAIL",
"folder": "offers/hero",
"trackingKey": "e66896"
}
Responses
Body
Request body
Examples
{
"media": [
{
"id": "",
"file_name": ""
}
]
}
Responses
Body
GUID-123
land registry.pdf
Array of Evicence Type Matching
GUID
Land Registery
POST /media_recognition HTTP/1.1
Content-Type: application/json
{
"media": [
{
"id": "",
"filename": ""
}
]
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"media": [
{
"id": "",
"filename": "",
"evidence": [
{
"id": "",
"name": ""
}
]
}
]
}
{id}
/filesPath variables
Request body
Examples
{
"content": [
{
"id": "",
"evidence": {
"id": "",
"name": ""
},
"media": {
"id": "",
"file_name": ""
},
"adminuser": {
"id": "",
"name": ""
},
"uploaded_date": "",
"lifecycle": "",
"install_phase": ""
}
]
}
Request parameters
List of Role_id
List of organisation
search by surname
Responses
Body
GET /adminusers HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"adminuser": {
"id": "",
"name": ""
},
"organisations": [
{
"id": "",
"name": "",
"roles": {
"id": "",
"name": "",
"permissions": ""
}
}
]
}
]
}
Evidence Sections for PDF Generation / Layout
[
{
"elevations": {
"id": "",
"name": "",
"photos": [
{
"id": "",
"media_id": ""
}
]
},
"rooms": [
{
"id": "",
"name": "",
"windows": [
{
"id": "",
"name": ""
}
]
}
],
"loft": {}
}
]
evidence category ID
[
{
"id": "9d855dc0-a1dd-11eb-b8ba-42010a9a004e",
"name": "Property Details",
"category": "SURVEY",
"component_type": "HEATING",
"evidence_rules": [
{
"id": "",
"name": "",
"component": {
"id": "",
"name": "",
"component_type": "",
"parent_id": ""
},
"media": {
"id": "27ad2c5b-de33-4e7b-855c-79889f6b2630",
"usage_type": "HERO",
"width": 6616,
"format": "jpg",
"media_id": "bd928cf6-8d56-44a1-80c3-8f8fc8628c8c",
"media": [
{
"id": null,
"width": 50,
"height": 33,
"url": "https://res.cloudinary.com/crm-com/image/upload/c_scale,f_auto,q_auto,w_50/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg"
}
],
"url": "https://res.cloudinary.com/crm-com/image/upload/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg",
"height": 4411,
"media_group_id": "7c9d0054-5bdc-4905-ae46-6fd405d8e9c8",
"public_id": "23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj",
"external_type": {
"id": "",
"usage_type": ""
}
}
}
]
}
]
evidence category ID
[
{
"id": "9d855dc0-a1dd-11eb-b8ba-42010a9a004e",
"name": "Property Details",
"category": "PROPERTY",
"components": [
{
"id": "",
"name": "",
"component_type": "",
"parent_id": "",
"evidence": [
{
"id": "",
"name": "",
"shortcode": "",
"is_required": "",
"media": ""
}
]
}
]
}
]
Administration Features
{id}
/passwordsRequest body
Responses
Body
{id}
/adminusers{id}
/teams{id}
/inviteRequest parameters
if isn’t set, takes tenant_id from token instead
Responses
Body
GET /adminusers HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"adminuser": {
"id": "c6d37dc2-fddd-11eb-a282-42010a9a0037",
"name": "Andrew Park",
"is_active": true
},
"organisations": [
{
"id": "1db898e6-fddc-11eb-a282-42010a9a0037",
"name": "Premier Surveyors",
"roles": [
{
"id": "5e06bc72-bc92-4b46-ba08-3622dc3b0820",
"name": "Surveyor",
"permissions": "SURVEYOR_APP"
}
]
}
]
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 100,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_pages": 1,
"total_elements": 11,
"last": true,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number": 1,
"number_of_elements": 11,
"first": true,
"size": 100,
"empty": true
}
{id}
/adminusersPath variables
Request parameters
Responses
Body
GET /organisations/{id}/adminusers HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"content": [
{
"id": "d53ccba3-0198-11ec-bcdb-42010a9a001a",
"name": "Adam \r Hodkinson",
"is_active": true,
"organisations": [
{
"id": "a659279a-8b2a-4330-abb7-dc3f2c056fc5",
"name": "Britevox",
"organisation_type": "ACCOUNT",
"roles": [
{
"id": "ac5634fa-e918-4a6c-b7fd-a35677037c31",
"name": "Sales",
"permissions": "SALES",
"role_type": "SALES_PARTNER"
}
]
}
],
"contact_info": [
{
"contact_type": "EMAIL",
"contact_value": "Andy.steward@premierconnections.co.uk"
}
]
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"page_number": 1,
"page_size": 20,
"offset": 1,
"paged": true,
"unpaged": true
},
"total_pages": 3,
"total_elements": 59,
"last": true,
"sort": {
"sorted": true,
"unsorted": true,
"empty": true
},
"number": 1,
"number_of_elements": 20,
"first": true,
"size": 20,
"empty": true
}
{id}
/teamsPath variables
Responses
Body
GET /organisations/{id}/teams HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "531b755c-fc21-11eb-bcdb-42010a9a001a",
"name": "Prem Con Surveyors",
"description": "Premier connection team of surveyors",
"org_type": "TEAM",
"relationship": "SURVEYOR",
"adminuser_count": 7
}
Responses
Body
Request body
Examples
{
"adminusers": [
{
"adminuser_id": "",
"created_by": "",
"invite_token": "",
"is_owner": true,
"is_primary": true,
"pending_invite": true
}
],
"role": {
"id": ""
}
}
Secret API Key for Server to Server Access or JWT token for Backoffice Access
Image Support
App Setting for Firebase
APP Id for Customer
{
"customerID": "com.vizulink.drophop",
"CRM": {
"production": {
"Endpoint": "",
"api_key": "",
"integration_id": ""
},
"development": {
"endpoint": "",
"api_key": "",
"integration_id": ""
}
},
"payment": {
"production": [
{
"platform": "APPLE",
"enabled": "true",
"api_key": "",
"integration_id": ""
}
]
}
}
{
"id": "9d855dc0-a1dd-11eb-b8ba-42010a9a004e",
"name": "Front Elevation",
"shortcode": "FRONT_ELEVATION",
"local_media": {
"url": "aaaaaaaaaa",
"uploaded": 16543212
}
}
ID for the Group
ID for the item
Choice if a multi-selecte
{
"data_group_id": "",
"data_item_id": "",
"data_choice_id": "",
"yes_no": "YES",
"entered_data": {
"value_type": "STRING",
"entered_value": "",
"entity": {
"id": "",
"entity_type": "MEDIA"
}
}
}
ID for the Group
ID for the item
Choice if a multi-selecte
{
"data_group_id": "",
"data_item_id": "",
"data_choice_id": "",
"yes_no": "YES",
"entered_data": {
"value_type": "ALPHA",
"entered_value": "",
"entity": {
"id": "",
"entity_type": "MEDIA"
}
}
}
{
"id": "e7f97130-c7aa-11eb-9bb2-42010a9a0026",
"survey": {
"id": "survey_guid",
"name": "Cavity Survey",
"description": "Cavity Deem Score Survey",
"measure_type": "CAVITY"
},
"progress": 1,
"survey_version_id": "",
"resources": [
{
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
},
"resource_type": "SURVEYOR"
}
],
"property_project": {
"id": "",
"project": {
"id": "",
"name": "",
"description": ""
},
"start_date": 1,
"completed_date": 1,
"lifecycle": ""
}
}
List of checklists items that need to be completed and status per property.
{
"id": "",
"name": "",
"evidence_type": "",
"shortcode": ""
}
{
"id": "5f494b68-dc9e-4cc8-9256-0d60850ccc13",
"review_date": 1,
"completed_date": 1,
"reviewer": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"transferred": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
},
"action": {
"id": "",
"name": "",
"action_type": "ACTION",
"required": true
},
"issues": [
{
"id": "",
"evidence": {
"id": "",
"name": "",
"evidence_type": "",
"shortcode": ""
},
"resolved_date": 123456
}
],
"notes": [
{
"id": "",
"note": "",
"note_date": "",
"owner": {
"adminuser": {
"id": "",
"name": ""
},
"organisation": {
"id": "",
"name": ""
}
}
}
]
}
{
"id": "7W38kGhSDeb3QGtcHHJJ",
"title": "Mr",
"forename": "Andy",
"surname": "Steward",
"email": null,
"mobile": "07566224395",
"home_phone": "07566224395",
"date_of_birth": null
}
Storing and recovering Property Data
Rooms
Type of Entity
id of entity
name of the Entity
Value entered
ID of answer group
Name of answer group or groups
ID of the Parent
The array element of the Parent
{
"id": "abc123",
"survey": {
"id": "",
"name": ""
},
"data_group": {
"id": "10c7503f-18ec-49b7-bafb-6cd46e52e105",
"name": ""
},
"data_item": {
"id": "10c7503f-18ec-49b7-bafb-6cd46e52e105",
"name": "Number of Rooms"
},
"selected_entity": {
"entity_type": "MEDIAGROUP",
"id": "",
"name": ""
},
"selected_choice": {
"id": "",
"name": ""
},
"answer": {
"answer_value": "",
"answer_group": {
"id": "",
"name": ""
}
},
"parent": {
"id": "",
"array_element": ""
}
}
List tof User / Organisation and Roles
{
"adminuser": {
"id": "",
"name": ""
},
"organisations": {
"id": "",
"name": "",
"roles": {
"id": "",
"name": "",
"permissions": ""
}
}
}
Left
35
Red
{
"extensions": [
{
"elevations": {
"type": "",
"wall_square_meter": "",
"render": ""
}
}
],
"elevations": [
{
"type": "",
"wall_square_meter": "",
"render": ""
}
]
}
0582a788-f2df-484c-9648-25bab919f4b8
08641ae0-03d8-11ec-bcdb-42010a9a001a
Elevation Photos
cc83e1fa-03d8-11ec-bcdb-42010a9a001a
Evidence Of Cavity Width
s123
Cavity
[
{
"id": "",
"evidence": {
"category": {
"id": "",
"name": "",
"parent": {
"id": "",
"name": ""
},
"category_type": "PROPERTY",
"property_category": ""
},
"rule": {
"id": "",
"name": ""
},
"survey": {
"id": "",
"name": ""
}
},
"media": {
"id": "27ad2c5b-de33-4e7b-855c-79889f6b2630",
"usage_type": "HERO",
"width": 6616,
"format": "jpg",
"media_id": "bd928cf6-8d56-44a1-80c3-8f8fc8628c8c",
"media": [
{
"id": null,
"width": 50,
"height": 33,
"url": "https://res.cloudinary.com/crm-com/image/upload/c_scale,f_auto,q_auto,w_50/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg"
}
],
"url": "https://res.cloudinary.com/crm-com/image/upload/v1/23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj.jpg",
"height": 4411,
"media_group_id": "7c9d0054-5bdc-4905-ae46-6fd405d8e9c8",
"public_id": "23a5b3a0-45d2-4dd6-ad05-41f938d2e7e8/qwjhq8mk9x6pntwmpqrj",
"external_type": {
"id": "",
"usage_type": ""
}
},
"groups": [
{
"id": "4ff184da-6ddc-4e90-9eb9-4b6147fc88bf",
"name": "extension",
"group_label": "Extension 1",
"element": 1
}
]
}
]
Set up a place that can be a collection point, or delivery hub
list of points for a boundary
{id}
/config{id}
/configGet a list of parameters it supports, with possible values. The CDoinnector implementation needs to be able to specify these actions / params.
Path variables
Responses
Body
ID for parameter used by the code
Text label for the parameter
Only present if type is LIST
Default value (optional)
WORKFLOW_ARRIVED
Base64 iCal data, to be put into attachment
GUID1234
Evidence Review
{
"event": {
"id": "",
"event_type": ""
},
"event_data": {
"property": {
"id": "",
"formatted_address": "",
"address": {
"id": "",
"line1": ""
}
},
"lead": {},
"property_project": [
{
"id": "",
"project": {
"id": "",
"name": ""
},
"property_surveys": [
{
"id": "",
"survey": {
"id": "",
"name": ""
}
}
]
}
],
"appointment": {
"id": "",
"name": "",
"date": "",
"surveys": [
{
"id": "",
"name": ""
}
],
"resources": [
{
"adminuser": {
"id": "",
"name": ""
}
}
]
},
"contacts": [
{
"id": "",
"forename": "",
"surname": ""
}
]
}
}