Récupération de la demande d'intervention

Récupération des informations

En tant que prestataire, je récupère les nouveaux tickets, où je ne suis pas le créateur, et ceux qui ont été récemment mis à jour via une requête GET sur l'API Operations v2.
/api/operations/v2/operations?since=2021-06-01T10:00:00&notIssuedByMe=true&fields=logs&type=intervention

Une demande d'intervention se matérialise par la transmission d'un log status=open et event=requested. Pour identifier cette information, je regarde la rubrique logs du json récupéré.

Je peux récupérer de plus amples informations (commentaire, photos, date et heure) sur le détail de la demande dans le log en question (status=open et event=requested) dans la rubrique logs .

Exemple

Ci dessous un exemple de json récupéré avec 2 nouvelles demandes dont 1 qui a été annulée (test_bailleur_001_21060915101).
{
"_links": {
"self": {
"href": "https://api.hubintent.com/api/operations/v2/operations?since=2021-06-01T10:00:00&notIssuedByMe=true&fields=logs"
}
},
"_embedded": {
"operations": [
{
"reference": "test_bailleur_001_21060915101",
"issuer": {
"entity": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"user": {
"id": "32a3ad36-6f77-41e0-981e-538bc11657a1",
"type": "user",
"name": "serviceclient+test@intent.tech"
}
},
"contract": {
"reference": "test_presta_001",
"label": "Contrat test",
"entities": [
{
"id": "5853fdefc2829a04502a0734",
"label": "Intent Staff",
"logoUrl": "https://hubintent.com/intent/entities/logos/fdaf450a-4ae4-4c2b-93cb-5338bd286219"
},
{
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
}
]
},
"logs": [
{
"issuer": {
"entity": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"user": {
"id": "32a3ad36-6f77-41e0-981e-538bc11657a1",
"type": "user",
"name": "serviceclient+test@intent.tech"
}
},
"reference": "test_bailleur_001_21060915101",
"description": "je souhaite une intervention",
"contractReference": "test_presta_001",
"contacts": [
"BEGIN:VCARD\r\nVERSION:3\r\nFN;CHARSET=UTF-8:Intent SC\r\nN;CHARSET=UTF-8:SC;Intent;;;\r\nEMAIL;CHARSET=UTF-8;HOME;INTERNET:serviceclient+test@intent.tech\r\nREV:2021-06-09T15:10:01+02:00\r\nEND:VCARD"
],
"creationDate": "2021-06-09T15:10:02+02:00",
"type": "intervention",
"serviceCode": "A qualifier",
"workType": "corrective",
"status": "open",
"event": "requested",
"eventDate": "2021-06-09T15:10:01+02:00",
"logDate": "2021-06-09T15:10:01+02:00",
"location": {
"assetReference": "01-ALT-01-05",
"assetLabel": "ENT 5",
"assetOwner": "demo.intent",
"assetAlgoliaId": "6062da84b45959419eac3d60"
},
"suggestedProvisionalDate": "2021-06-09T15:10:01+02:00",
"photos": []
},
{
"issuer": {
"entity": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"user": {
"id": "32a3ad36-6f77-41e0-981e-538bc11657a1",
"type": "user",
"name": "serviceclient+test@intent.tech"
}
},
"reference": "test_bailleur_001_21060915101",
"description": "Erreur de création. Intervention non nécessaire",
"contractReference": "test_presta_001",
"creationDate": "2021-06-09T15:12:21+02:00",
"type": "intervention",
"serviceCode": "A qualifier",
"workType": "corrective",
"status": "denied",
"event": "canceled",
"eventDate": "2021-06-09T15:12:20+02:00",
"logDate": "2021-06-09T15:12:20+02:00",
"location": {
"assetReference": "01-ALT-01-05",
"owner": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"assetLabel": "ENT 5",
"assetOwner": "demo.intent",
"assetAlgoliaId": "6062da84b45959419eac3d60"
},
"photos": []
}
],
"_links": {
"self": {
"href": "https://api.hubintent.com/api/operations/v2/operations/test_bailleur_001_21060915101?contractReference=test_presta_001"
},
"documents:list": {
"href": "https://api.hubintent.com/api/documents/v1/documents?elementType=undefined&elementReference=test_bailleur_001_21060915101"
}
}
},
{
"reference": "test_bailleur_001_21060915135",
"issuer": {
"entity": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"user": {
"id": "32a3ad36-6f77-41e0-981e-538bc11657a1",
"type": "user",
"name": "serviceclient+test@intent.tech"
}
},
"contract": {
"reference": "test_presta_001",
"label": "Contrat test",
"entities": [
{
"id": "5853fdefc2829a04502a0734",
"label": "Intent Staff",
"logoUrl": "https://hubintent.com/intent/entities/logos/fdaf450a-4ae4-4c2b-93cb-5338bd286219"
},
{
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
}
]
},
"logs": [
{
"issuer": {
"entity": {
"id": "5853fdefc2829a04502a073a",
"label": "Intent Technologies Tests Internes",
"logoUrl": "https://hubintent.com/intent/entities/logos/c74fd223-bc40-46c2-bf42-6748a9cfe146"
},
"user": {
"id": "32a3ad36-6f77-41e0-981e-538bc11657a1",
"type": "user",
"name": "serviceclient+test@intent.tech"
}
},
"reference": "test_bailleur_001_21060915135",
"description": "il fait trop froid",
"contractReference": "test_presta_001",
"contacts": [
"BEGIN:VCARD\r\nVERSION:3\r\nFN;CHARSET=UTF-8:Intent SC\r\nN;CHARSET=UTF-8:SC;Intent;;;\r\nEMAIL;CHARSET=UTF-8;HOME;INTERNET:serviceclient+test@intent.tech\r\nREV:2021-06-09T15:13:05+02:00\r\nEND:VCARD"
],
"creationDate": "2021-06-09T15:13:06+02:00",
"type": "intervention",
"serviceCode": "chauffage",
"workType": "corrective",
"status": "open",
"event": "requested",
"eventDate": "2021-06-09T15:13:05+02:00",
"logDate": "2021-06-09T15:13:05+02:00",
"location": {
"assetReference": "01-ALT-01-05",
"assetLabel": "ENT 5",
"assetOwner": "demo.intent",
"assetAlgoliaId": "6062da84b45959419eac3d60"
},
"suggestedProvisionalDate": "2021-06-09T15:13:05+02:00",
"photos": []
}
],
"_links": {
"self": {
"href": "https://api.hubintent.com/api/operations/v2/operations/test_bailleur_001_21060915135?contractReference=test_presta_001"
},
"documents:list": {
"href": "https://api.hubintent.com/api/documents/v1/documents?elementType=undefined&elementReference=test_bailleur_001_21060915135"
}
}
}
]
},
"total": 2
}

Accusé de réception de la demande d’intervention par le prestataire

Suite à la réception de la demande d'intervention, je transmets automatiquement un accusé réception pour informer mon client de la bonne réception de sa demande.

{
  "reference": "test_bailleur_001_21060915135",
  "description": "Nous accusons bonne réception de votre demande de dépannage",
  "contractReference": "test_presta_001",
  "status": "open",
  "event": "acknowledged",
  "eventDate": "2021-06-09T15:15:00",
  "logDate": "2021-06-09T15:15:00",
  "serviceCode": "chauffage",
  "location": {
    "assetReference": "01-ALT-01-05"
  },
  "workType": "corrective",
  "equipmentWorkingOrder": "not_operational",
  "criticalLevel": 3,
  "visitAttempt": 1
}