Dokumentation för API-funktioner
POST CRM/Contact/{customerId}/TrialMatch Provmatchning Request Information URI Parameters
NamnBeskrivningTypInformation
customerId Kundid string Krävs
Body Parameters Matchningskriterie TrialMatchedCriteria
NamnBeskrivningTypInformation
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

{
  "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"
  }
}
<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>
Response Information Resource Description Provmatchning Collection of TrialMatchedContact
NamnBeskrivningTypInformation
Id s Id string

Name Namn string

Kodexempel

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
Testformulär Text input
Response Formats
[
  {
    "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>