Introductie
Versie 1 van EnquireNow Connect is gestructureerd rond REST, HTTP, en JSON. API-eindpunt-URL’s zijn georganiseerd rond resources, zoals calculaties en aanvragen. Er worden HTTP-methodes gebruikt om aan te geven welke actie moet worden ondernomen op een resource, en HTTP-statuscodes om errors uit te drukken. Resources worden weergegeven in JSON volgens een conventioneel schema.
Base URL
De API wordt benaderd via een basis URL die specifiek is voor uw omgeving, ProfLease of MediLease. In de voorbeelden in deze documentatie, gebruiken we de URL testleaseapi.azurewebsite.net als een stand-in voor uw echte account API URL. Bovendien, URL paden moeten beginnen met /api/ om de API te specificeren. In het algemeen, zal de URL in de vorm https://testleaseapi.azurewebsite.net.nl/api/ zijn. Alle API-oproepen moeten via HTTPS worden gedaan.Omgeving | Base URL |
---|---|
ProfLease | https://profleaseapi.azurewebsite.net/api/ |
MediLease | https://medileaseapi.azurewebsite.net/api/ |
TestLease | https://testleaseapi.azurewebsite.net/api/ |
Authenticatie
Alle verzoeken aan de API worden geverifieerd door het verstrekken van uw API-sleutel en Partner-ID. De API sleutel moet worden verstrekt als een HTTP header genaamd x-api-key en de Partner-ID als x-partner-id.
curl --location --request YOUR_HTTP_METHOD 'https://testleaseapi.azurewebsites.net/api/' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-partner-id: YOUR_PARTNER_ID' \
--header 'Content-Type: application/json' \
HTTP Methods
De API gebruikt de standaard HTTP methods voor het uitoefenen van de actie op de resource.
Omgeving | Base URL |
---|---|
GET | Data ophalen |
PUT | Data updaten |
POST | In ontwikkeling |
DELETE | In ontwikkeling |
Schema
Alle API verzoeken en respons bodies volgen een gemeenschappelijk JSON formaat dat individuele items en verzamelingen van items weergeeft.
Enkele bronnen
Individuele bronnen worden vertegenwoordigd door een top level member genoemd naar de bron in de enkelvoudige vorm. Hieronder is een voorbeeld van een calculatie op basis van alle mogelijke looptijden. Dit is wat geretourneerd wordt in de body van een GET verzoek.
{
"LeaseTerms": [
{
"LeaseTerm": 24,
"MonthlyAmount": 999.99
},
{
"LeaseTerm": 36,
"MonthlyAmount": 888.88
},
{
"LeaseTerm": 48,
"MonthlyAmount": 777.77
},
{
"LeaseTerm": 60,
"MonthlyAmount": 666.66
},
{
"LeaseTerm": 72,
"MonthlyAmount": 555.55
}
]
}
Errors
De API gebruikt HTTP status codes om aan te geven dat er een fout is opgetreden tijdens het verwerken van een verzoek. Er zijn twee belangrijke foutstatuscodes die door de API worden gebruikt:Code | Error |
---|---|
401 | Authorization failed for this request! |
404 | No HTTP resource was found that matches the request URI |
Requests
Lease calculeren voor een enkele looptijd
Bij het opvoeren van een investeringsbedrag en aanbetaling wordt er met deze API één maandbedrag teruggegeven. Handig bij het aanbieden van één looptijd.GET
https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}
curl --location --request GET 'https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-partner-id: YOUR_PARTNER_ID' \
require "uri"
require "net/http"
url = URI("https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = "YOUR_API_KEY"
request["x-partner-id"] = "YOUR_PARTNER_ID"
response = https.request(request)
puts response.read_body
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'x-api-key: YOUR_API_KEY',
'x-partner-id: YOUR_PARTNER_ID'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}"
payload={}
headers = {
'x-api-key': 'YOUR_API_KEY',
'x-partner-id': 'YOUR_PARTNER_ID'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Path params
Name | Description | Type |
---|---|---|
term | The duration in months. | Integer |
hardware | The investment amount of the hardware in €. | Decimal |
downpayment | Deposit in €. | Decimal |
Lease calculeren voor alle mogelijke looptijden
Bij het opvoeren van een investeringsbedrag en aanbetaling wordt met deze API voor alle mogelijke looptijden in één keer alle maandbedragen teruggegeven.GET
https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}&term={amount}
curl --location --request GET 'https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-partner-id: YOUR_PARTNER_ID' \
require "uri"
require "net/http"
url = URI("https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = "YOUR_API_KEY"
request["x-partner-id"] = "YOUR_PARTNER_ID"
response = https.request(request)
puts response.read_body
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'x-api-key: YOUR_API_KEY',
'x-partner-id: YOUR_PARTNER_ID'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "https://testleaseapi.azurewebsites.net/api/CalculateLease?hardware={amount}&downPayment={amount}"
payload={}
headers = {
'x-api-key': 'YOUR_API_KEY',
'x-partner-id': 'YOUR_PARTNER_ID'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Path params
Name | Description | Type |
---|---|---|
hardware | The investment amount of the hardware in €. | Decimal |
downpayment | Deposit in €. | Decimal |
Lease aanvraag indienen in de EnquireNow Vendor Portal
Deze API maakt het mogelijk om vanuit eigen systemen een lease aanvraag in te schieten in de EnquireNow Vendor Portal. De aanvraag kan hier worden voltooid.PUT
https://testleaseapi.azurewebsites.net/api/ConfirmCalculation
JSON
{
"term": "36",
"hardware": "20000",
"downpayment": "0",
"vatrequired": "false",
"ContactName": "Jan Janssen",
"AccountName": "Janssen B.V.",
"KvKNo": "12345678",
"Address": "Janstraat 1",
"ZipCode": "1234AB",
"City": "Amsterdam",
"Phone": "0612345678",
"Email": "test@enquirenow.nl",
"Website": "test.nl",
"Description": "1x Laptop, 2x Tandartsstoel, 3x Verpakkingsmachine",
"Extra": "Snelle levering",
"Quote": "12345678"
}
Body params
Name | Description | Type |
---|---|---|
term | The duration in months. | Integer |
hardware | The investment amount of the hardware in €. | Decimal |
downpayment | Deposit in €. | Decimal |
vatrequired | Indicates whether or not the client is liable for VAT. | Boolean |
ContactName | Name of the contact person. | String |
AccountName | The client’s company name. | String |
KvKNo | The client’s Chamber of Commerce number. | String |
Address | The client’s street name + house number. | String |
ZipCode | The client’s zip code. | String |
City | The place where the company is located. | String |
Phone | The client’s phone number. | String |
The client’s email address. | String | |
Website | The client’s website. | String |
Description | The description of the objects of the investment. | String |
Extra | Any particularities when applying for a lease. | String |
Quote | Own quotation number of the supplier. | String |