Dokumentation för API-funktioner
GET CRM/Contact/{customerId}/{contactIds}/Order/EndPrice Hämta lista av info om kontakts tjänster avseende "Slutpriser i området", max 20 stycken kontakter åt gången. Request Information URI Parameters
NamnBeskrivningTypInformation
customerId Kund-id. string Krävs
contactIds Kontaktidn (kommaseparerade, max 20 stycken). string Krävs
Response Information Resource Description Hämta lista av info om kontakts tjänster avseende "Slutpriser i området", max 20 stycken kontakter åt gången. Collection of CrmContactEndPrice
NamnBeskrivningTypInformation
ContactId KontaktId string

Orders Lista med info om kontakts tjänster avseende "Slutpriser i området" Collection of CrmEndPriceOrder

Kodexempel

curl "https://connect.maklare.vitec.net/CRM/Contact/StringValue/StringValue/Order/EndPrice" -X GET -H "Authorization: basic {Base64 kodad användarnamn och lösenord}" 
            

$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/StringValue/Order/EndPrice"
Invoke-WebRequest -Uri $URL -Method GET -Headers @{"authorization" = "basic {Base64 kodad användarnamn och lösenord}"} 
                

// 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}")
//     }
// }
using (var response = await HttpClientInstance.GetAsync("CRM/Contact/StringValue/StringValue/Order/EndPrice")) {
    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 contactId = firstInArray.contactId.Value;
    // TODO: Gör något med resultatet
}

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

$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);

$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["contactId"];
// TODO: Gör något med resultatet
Testformulär Text input
Response Formats
[
  {
    "contactId": "sample string 1",
    "orders": [
      {
        "id": "sample string 1",
        "createdAt": "2024-05-02T06:39:38.2968093+02:00",
        "startDate": "2024-05-02T06:39:38.2968093+02:00"
      },
      {
        "id": "sample string 1",
        "createdAt": "2024-05-02T06:39:38.2968093+02:00",
        "startDate": "2024-05-02T06:39:38.2968093+02:00"
      }
    ]
  },
  {
    "contactId": "sample string 1",
    "orders": [
      {
        "id": "sample string 1",
        "createdAt": "2024-05-02T06:39:38.2968093+02:00",
        "startDate": "2024-05-02T06:39:38.2968093+02:00"
      },
      {
        "id": "sample string 1",
        "createdAt": "2024-05-02T06:39:38.2968093+02:00",
        "startDate": "2024-05-02T06:39:38.2968093+02:00"
      }
    ]
  }
]
<ArrayOfCrmContactEndPrice xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Express.Connect.Api.Models.Contact.Crm">
  <CrmContactEndPrice>
    <ContactId>sample string 1</ContactId>
    <Orders>
      <CrmEndPriceOrder>
        <CreatedAt>2024-05-02T06:39:38.2968093+02:00</CreatedAt>
        <Id>sample string 1</Id>
        <StartDate>2024-05-02T06:39:38.2968093+02:00</StartDate>
      </CrmEndPriceOrder>
      <CrmEndPriceOrder>
        <CreatedAt>2024-05-02T06:39:38.2968093+02:00</CreatedAt>
        <Id>sample string 1</Id>
        <StartDate>2024-05-02T06:39:38.2968093+02:00</StartDate>
      </CrmEndPriceOrder>
    </Orders>
  </CrmContactEndPrice>
  <CrmContactEndPrice>
    <ContactId>sample string 1</ContactId>
    <Orders>
      <CrmEndPriceOrder>
        <CreatedAt>2024-05-02T06:39:38.2968093+02:00</CreatedAt>
        <Id>sample string 1</Id>
        <StartDate>2024-05-02T06:39:38.2968093+02:00</StartDate>
      </CrmEndPriceOrder>
      <CrmEndPriceOrder>
        <CreatedAt>2024-05-02T06:39:38.2968093+02:00</CreatedAt>
        <Id>sample string 1</Id>
        <StartDate>2024-05-02T06:39:38.2968093+02:00</StartDate>
      </CrmEndPriceOrder>
    </Orders>
  </CrmContactEndPrice>
</ArrayOfCrmContactEndPrice>