Dokumentation för API-funktioner
POST CRM/Contact/{customerId}/Company Returnerar kontakt-id för den skapade eller uppdaterade kontakten.

Dubblettkontroll sker på organisationsnummer – om angivet och minst 8 siffror matchas det mot befintlig kontakt. Hittas en befintlig kontakt uppdateras den och dess kontakt-id returneras. Hittas ingen dublett skapas ett nytt företag och dess kontakt-id returneras.

Null eller utelämnade fält ignoreras. En tom sträng tömmer motsvarande textfält.
Request Information URI Parameters
NamnBeskrivningTypInformation
customerId Kund-id (kontors-id för Mäklarsystem). string Krävs
Body Parameters Företagskontakt. CrmCompanyCreateRequest
NamnBeskrivningTypInformation
Name Foretagsnamn. string Foretagsnamn maste vara mellan 0 och 100 tecken
CorporateNumber Organisationsnummer. string Organisationsnummer maste vara mellan 0 och 20 tecken
IsForeignCorporateNumber Annat format/utlandskt organisationsnummer. boolean

HomePage Hemsida. string Hemsida maste vara mellan 0 och 60 tecken
Telephone Telefonnummer. CrmCompanyTelephoneNumbersRequest

AgentId Maklarens id. string

Address Adress. CrmContactAddressRequest

Email Email. CrmEmailRequest

AdvertisingEnabled Reklamutskick tillats. boolean

Other Övrig information på kontakten. Mappas mot kontaktens aktuella Adr.Anteckning. string

Categories Kategorier. Collection of CrmCategoryRequest

LeadScore Antal lead score-stjärnor. Giltigt intervall är 0 till 3. integer Lead score måste vara mellan 0 och 3

Request Formats

{
  "name": "sample string 1",
  "corporateNumber": "sample string 2",
  "isForeignCorporateNumber": true,
  "homePage": "sample string 3",
  "telephone": {
    "switch": "sample string 1",
    "other": "sample string 2"
  },
  "agentId": "sample string 4",
  "address": {
    "streetAddress": "sample string 1",
    "zipCode": "sample string 2",
    "city": "sample string 3",
    "countryCode": "sample string 4",
    "wgs84Coordinate": {
      "longitude": 1.1,
      "latitude": 1.1
    }
  },
  "email": {
    "emailAddress": "sample string 1",
    "emailAddress2": "sample string 2"
  },
  "advertisingEnabled": true,
  "other": "sample string 5",
  "categories": [
    {
      "id": "sample string 1",
      "name": "sample string 2"
    },
    {
      "id": "sample string 1",
      "name": "sample string 2"
    }
  ],
  "leadScore": 1
}
<CrmCompanyCreateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Vitec.Housing.Connect.Api.Models.Contact.Crm.Request">
  <Address>
    <City>sample string 3</City>
    <CountryCode>sample string 4</CountryCode>
    <StreetAddress>sample string 1</StreetAddress>
    <Wgs84Coordinate>
      <Latitude>1.1</Latitude>
      <Longitude>1.1</Longitude>
    </Wgs84Coordinate>
    <ZipCode>sample string 2</ZipCode>
  </Address>
  <AdvertisingEnabled>true</AdvertisingEnabled>
  <AgentId>sample string 4</AgentId>
  <Categories>
    <CrmCategoryRequest>
      <Id>sample string 1</Id>
      <Name>sample string 2</Name>
    </CrmCategoryRequest>
    <CrmCategoryRequest>
      <Id>sample string 1</Id>
      <Name>sample string 2</Name>
    </CrmCategoryRequest>
  </Categories>
  <Email>
    <EmailAddress>sample string 1</EmailAddress>
    <EmailAddress2>sample string 2</EmailAddress2>
  </Email>
  <LeadScore>1</LeadScore>
  <Other>sample string 5</Other>
  <CorporateNumber>sample string 2</CorporateNumber>
  <HomePage>sample string 3</HomePage>
  <IsForeignCorporateNumber>true</IsForeignCorporateNumber>
  <Name>sample string 1</Name>
  <Telephone>
    <Other>sample string 2</Other>
    <Switch>sample string 1</Switch>
  </Telephone>
</CrmCompanyCreateRequest>
Response Information Resource Description Skapa eller upserta en företagskontakt. string Kodexempel

curl "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Company" -X POST -H "Content-Type: application/json" -H "Authorization: basic {Base64 kodad användarnamn och lösenord}" -d {\"name\":\"StringValue\",\"corporateNumber\":\"StringValue\",\"isForeignCorporateNumber\":false}
            

$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Company"
$data = "{`"name`":`"StringValue`",`"corporateNumber`":`"StringValue`",`"isForeignCorporateNumber`":false}"
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 = "{\"name\":\"StringValue\",\"corporateNumber\":\"StringValue\",\"isForeignCorporateNumber\":false}";
using (var response = await HttpClientInstance.PostAsync("CRM/Contact/StringValue/Company", 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);
    
    // TODO: Gör något med resultatet
}

$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Company";

$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 = "{\"name\":\"StringValue\",\"corporateNumber\":\"StringValue\",\"isForeignCorporateNumber\":false}";
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
}

// TODO: Gör något med resultatet
Testformulär Text input
Response Formats
"sample string 1"
<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">sample string 1</string>