Conexio vitrine du développeur

API Autotask — bons de travail

Lire les bons de travail de Autotask depuis votre application, par une simple requête HTTP : pas de SDK, pas d’ODBC. Conexio relaie l’appel vers Autotask et vous répond en JSON — entité WorkOrder.

✓ Lire (GET)✗ Créer (POST)✗ Modifier (PUT)

Lire les bons de travail

Une requête GET sur /api/Entity/WorkOrder, avec les modificateurs $select, $filter et $top. L’en-tête ALLOW_PAGINATION renvoie { Data, ResultsCount, TotalCount }.

HTTP
GET https://gateway.conexio.dev/api/Entity/WorkOrder?$select=ErpInternalId,Id,WorkOrderNumber,SourceSystem,WorkItemType&$filter=CreationDate ge '2026-01-01'&$top=10
Authorization: Basic base64(CODE_LICENCE:CLE_API)
COMPANY_CODE: VOTRE_COMPAGNIE
ALLOW_PAGINATION: true
curl
curl 'https://gateway.conexio.dev/api/Entity/WorkOrder?$select=ErpInternalId,Id,WorkOrderNumber,SourceSystem,WorkItemType&$filter=CreationDate%20ge%20'2026-01-01'&$top=10' \
  -u "$CONEXIO_LICENCE:$CONEXIO_API_KEY" \
  -H 'COMPANY_CODE: VOTRE_COMPAGNIE' \
  -H 'ALLOW_PAGINATION: true'
JavaScript (fetch)
const response = await fetch("https://gateway.conexio.dev/api/Entity/WorkOrder?$select=ErpInternalId,Id,WorkOrderNumber,SourceSystem,WorkItemType&$filter=CreationDate%20ge%20'2026-01-01'&$top=10", {
  headers: {
    Authorization: "Basic " + btoa(`${CODE_LICENCE}:${CLE_API}`),
    COMPANY_CODE: "VOTRE_COMPAGNIE",
    ALLOW_PAGINATION: "true",
  },
})
const { Data, TotalCount } = await response.json()
C# et Python
C# (HttpClient)
var http = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://gateway.conexio.dev/api/Entity/WorkOrder?$select=ErpInternalId,Id,WorkOrderNumber,SourceSystem,WorkItemType&$filter=CreationDate%20ge%20'2026-01-01'&$top=10");
request.Headers.Authorization = new AuthenticationHeaderValue("Basic",
    Convert.ToBase64String(Encoding.UTF8.GetBytes($"{codeLicence}:{cleApi}")));
request.Headers.Add("COMPANY_CODE", "VOTRE_COMPAGNIE");
request.Headers.Add("ALLOW_PAGINATION", "true");
var json = await (await http.SendAsync(request)).Content.ReadAsStringAsync();
Python (requests)
import requests

response = requests.get(
    "https://gateway.conexio.dev/api/Entity/WorkOrder?$select=ErpInternalId,Id,WorkOrderNumber,SourceSystem,WorkItemType&$filter=CreationDate%20ge%20'2026-01-01'&$top=10",
    auth=(CODE_LICENCE, CLE_API),
    headers={"COMPANY_CODE": "VOTRE_COMPAGNIE", "ALLOW_PAGINATION": "true"},
)
data = response.json()["Data"]

Filtrer

Les champs filtrables de WorkOrder sur Autotask, et leurs opérateurs $filter :

ChampOpérateurs
ErpInternalIdeq ne in
Ideq ne in gt ge lt le
WorkOrderNumbereq ne in contains
SourceSystemeq ne in contains
WorkItemTypeeq ne in
Titleeq ne in contains
Descriptioneq ne in contains
CreationDateeq ne in gt ge lt le
LastModifiedDateeq ne in gt ge lt le
ExpectedDateeq ne in gt ge lt le
CompletedDateeq ne in gt ge lt le
StatusNameeq ne in contains
IsCompletedeq ne
QueueNameeq ne in contains
ServiceRequestTypeeq ne in contains
ClassificationCodeeq ne in contains
PriorityCodeeq ne in contains
CustomerIdeq ne in
CustomerNumbereq ne in contains
CustomerNameeq ne in contains
CustomerContacteq ne in contains
TechnicianIdeq ne in
TechnicianNameeq ne in contains
ProjectIdeq ne in
ProjectNumbereq ne in contains
ProjectNameeq ne in contains
PhaseIdeq ne in
PhaseNameeq ne in contains
EstimatedHourseq ne in gt ge lt le
LabourCodeeq ne in contains
ContractReferenceeq ne in contains

Les champs

ChampLireCréerModifier
ErpInternalId✓——
Id✓——
WorkOrderNumber✓——
SourceSystem✓——
WorkItemType✓——
Title✓——
Description✓——
CreationDate✓——
LastModifiedDate✓——
ExpectedDate✓——
CompletedDate✓——
StatusName✓——
IsCompleted✓——
QueueName✓——
ServiceRequestType✓——
ClassificationCode✓——
PriorityCode✓——
ServiceType———
CustomerId✓——
CustomerNumber✓——
CustomerName✓——
CustomerContact✓——
CustomerAddressLine———
CustomerCity———
CustomerCountry———
CustomerPostalCode———
CustomerPhone———
CustomerEmail———
TechnicianId✓——
TechnicianName✓——
TechnicianNumber———
SalesRepId———
SalesRepNumber———
SalesRepName———
DispatcherId———
DispatcherNumber———
DispatcherName———
ProjectId✓——
ProjectNumber✓——
ProjectName✓——
PhaseId✓——
PhaseName✓——
EstimatedHours✓——
LabourCode✓——
ContractReference✓——
TravelCode———
PaymentMethod———
ProductLines———
ExtendedProperties✓——

Les mêmes bons de travail, dans les autres logiciels

Même requête, même JSON : seule la compagnie change.

Pour aller plus loin