{
"estateType": "House",
"coordinate": {
"longitude": 1.1,
"latitude": 2.1
},
"price": 1,
"monthlyFee": 1,
"rooms": 1,
"bedRooms": 1,
"livingArea": 1,
"plotArea": 1,
"newProduction": true,
"balcony": true,
"elevator": true,
"parkingLot": true,
"terraceOrPatio": true,
"excludeContactsWithNoAdvertising": true,
"address": {
"streetAddress": "sample string 1",
"zipcode": "sample string 2",
"city": "sample string 3"
}
}
Dokumentation för API-funktioner
POST CRM/Contact/{customerId}/TrialMatch
Provmatchning
Request Information
URI Parameters
Body Parameters
Matchningskriterie TrialMatchedCriteria
Response Information
Resource Description
Provmatchning
Collection of TrialMatchedContact
Kodexempel
Testformulär
Text input
Response Formats
| Namn | Beskrivning | Typ | Information |
| customerId | Kundid | string |
Krävs |
| Namn | Beskrivning | Typ | Information |
| EstateType | Objekttyp | MatchEstateType | |
| Coordinate | Koordinat WGS84. | Coordinate | |
| Price | Pris | integer | |
| MonthlyFee | Månadsavgift (tas bara hänsyn till på lägenhet) | integer | |
| Rooms | Antal rum | integer | |
| BedRooms | Antal sovrum | integer | |
| LivingArea | Boarea(kvm) | integer | |
| PlotArea | Tomtarea(kvm) (tas ej hänsyn till på lägenhet) | integer | |
| NewProduction | Nyproduktion | boolean | |
| Balcony | Balkong | boolean | |
| Elevator | Hiss | boolean | |
| ParkingLot | Bilplats | boolean | |
| TerraceOrPatio | Uteplats/terrass | boolean | |
| ExcludeContactsWithNoAdvertising | Enbart kunder som godkänner marknadsförning | boolean | |
| Address | Adressupggifter tas enbart hänsyn till om koordianter saknas | MatchAddress |
Request Formats
<TrialMatchedCriteria xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Express.Connect.Api.Models.Contact.Crm">
<Address>
<City>sample string 3</City>
<StreetAddress>sample string 1</StreetAddress>
<Zipcode>sample string 2</Zipcode>
</Address>
<Balcony>true</Balcony>
<BedRooms>1</BedRooms>
<Coordinate>
<Latitude>2.1</Latitude>
<Longitude>1.1</Longitude>
</Coordinate>
<Elevator>true</Elevator>
<EstateType>House</EstateType>
<ExcludeContactsWithNoAdvertising>true</ExcludeContactsWithNoAdvertising>
<LivingArea>1</LivingArea>
<MonthlyFee>1</MonthlyFee>
<NewProduction>true</NewProduction>
<ParkingLot>true</ParkingLot>
<PlotArea>1</PlotArea>
<Price>1</Price>
<Rooms>1</Rooms>
<TerraceOrPatio>true</TerraceOrPatio>
</TrialMatchedCriteria>
| Namn | Beskrivning | Typ | Information |
| Id | s Id | string | |
| Name | Namn | string |
curl "https://connect.maklare.vitec.net/CRM/Contact/StringValue/TrialMatch" -X POST -H "Content-Type: application/json" -H "Authorization: basic {Base64 kodad användarnamn och lösenord}" -d {\"estateType\":0,\"coordinate\":{\"longitude\":0.0,\"latitude\":0.0},\"price\":0}
$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/TrialMatch"
$data = "{`"estateType`":0,`"coordinate`":{`"longitude`":0.0,`"latitude`":0.0},`"price`":0}"
Invoke-WebRequest -Uri $URL -Method POST -Headers @{"Content-Type" = "application/json"; "authorization" = "basic {Base64 kodad användarnamn och lösenord}"} -Body $data
// HttpClientInstance ska deklareras som en singleton
// public static readonly HttpClient HttpClientInstance = new HttpClient {
// BaseAddress = new Uri("https://connect.maklare.vitec.net"),
// DefaultRequestHeaders = {
// Authorization = new AuthenticationHeaderValue("Basic", "{Base64 kodad användarnamn och lösenord}")
// }
// }
var json = "{\"estateType\":0,\"coordinate\":{\"longitude\":0.0,\"latitude\":0.0},\"price\":0}";
using (var response = await HttpClientInstance.PostAsync("CRM/Contact/StringValue/TrialMatch", new StringContent(json, Encoding.UTF8, "application/json"))) {
if (response.StatusCode == HttpStatusCode.Unauthorized) {
// Authorization headern är inte korrekt
}
if (response.StatusCode == HttpStatusCode.Forbidden) {
// Begärt data som det saknas åtkomst till
}
if (response.StatusCode == HttpStatusCode.InternalServerError) {
// Oväntat fel, kontakta Vitec
}
if (response.StatusCode == HttpStatusCode.BadRequest) {
var json = await response.Content.ReadAsStringAsync();
var result = JsonConvert.DeserializeObject<dynamic>(json);
// Hantera valideringsfel, presenteras i resultatet
}
var json = await response.Content.ReadAsStringAsync();
// JsonConvert finns i biblioteket Newtonsoft.Json
var result = JsonConvert.DeserializeObject<dynamic>(json);
var firstInArray = result[0];
var id = firstInArray.id.Value ;
// TODO: Gör något med resultatet
}
$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/TrialMatch";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERNAME, "{Användarnamn}");
curl_setopt($ch, CURLOPT_PASSWORD, "{Lösenord}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $URL);
$data = "{\"estateType\":0,\"coordinate\":{\"longitude\":0.0,\"latitude\":0.0},\"price\":0}";
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data)
));
$result = curl_exec($ch);
if (curl_errno($ch)) {
die(curl_getinfo($ch));
}
$info = curl_getinfo($ch);
curl_close($ch);
$http_code = $info["http_code"];
if ($http_code == 401) {
// Användarnamnet eller lösenordet är felaktigt
}
if ($http_code == 403) {
// Begärt data som det saknas åtkomst till
}
if ($http_code == 500) {
// Oväntat fel, kontakta Vitec
}
if ($http_code == 400) {
$json = json_decode($result, true);
// Hantera valideringsfel, presenteras i $json
}
$first = $result[0];
$field_on_result = $first["id"];
// TODO: Gör något med resultatet
Resultat av begäran
[
{
"id": "sample string 1",
"name": "sample string 2"
},
{
"id": "sample string 1",
"name": "sample string 2"
}
]
<ArrayOfTrialMatchedContact xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Express.Connect.Api.Models.Contact.Crm">
<TrialMatchedContact>
<Id>sample string 1</Id>
<Name>sample string 2</Name>
</TrialMatchedContact>
<TrialMatchedContact>
<Id>sample string 1</Id>
<Name>sample string 2</Name>
</TrialMatchedContact>
</ArrayOfTrialMatchedContact>