curl "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Search?Term=StringValue&MaxSize=0" -X GET -H "Authorization: basic {Base64 kodad användarnamn och lösenord}"
Dokumentation för API-funktioner
GET CRM/Contact/{customerId}/Search
Fritextsökning (Namn, personnummer, e-postadress, telefonnummer etc).
Request Information
URI Parameters
Response Information
Resource Description
Fritextsökning (Namn, personnummer, e-postadress, telefonnummer etc).
CrmContactSearchList
Kodexempel
Testformulär
Text input
Response Formats
Namn | Beskrivning | Typ | Information |
customerId | Kund-id | string |
Krävs |
Term | Namn, personnummer, e-postadress, telefonnummer etc | string |
Min length: 5 Required |
MaxSize | Max resultat, default är 50 och max är 1 000 | integer |
Namn | Beskrivning | Typ | Information |
Matches | Personer som matchats | Collection of CrmContactSearchMatch |
$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Search?Term=StringValue&MaxSize=0"
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/Search?Term=StringValue&MaxSize=0")) {
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 matches = result.matches.Value ;
// TODO: Gör något med resultatet
}
$URL = "https://connect.maklare.vitec.net/CRM/Contact/StringValue/Search?Term=StringValue&MaxSize=0";
$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
}
$field_on_result = $result["matches"];
// TODO: Gör något med resultatet
Resultat av begäran
{ "matches": [ { "id": "sample string 1", "changedAt": "2024-11-21T10:36:21.9891572+01:00", "customerId": "sample string 3", "type": "Person", "score": 4.1 }, { "id": "sample string 1", "changedAt": "2024-11-21T10:36:21.9891572+01:00", "customerId": "sample string 3", "type": "Person", "score": 4.1 } ] }
<CrmContactSearchList xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Vitec.Housing.Connect.Api.Models.Contact.Crm"> <Matches> <CrmContactSearchMatch> <ChangedAt>2024-11-21T10:36:21.9891572+01:00</ChangedAt> <CustomerId>sample string 3</CustomerId> <Id>sample string 1</Id> <Score>4.1</Score> <Type>Person</Type> </CrmContactSearchMatch> <CrmContactSearchMatch> <ChangedAt>2024-11-21T10:36:21.9891572+01:00</ChangedAt> <CustomerId>sample string 3</CustomerId> <Id>sample string 1</Id> <Score>4.1</Score> <Type>Person</Type> </CrmContactSearchMatch> </Matches> </CrmContactSearchList>