Unicode C Dynamics CRM: Get All Information for a Specific Incident

Back to Index

Returns the entire JSON record for a specific incident.

Documentation: https://docs.microsoft.com/en-us/dynamics365/customer-engagement/web-api/incident?view=dynamics-ce-odata-9

CURL Command

curl -X GET https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/incidents \
  -H "Accept: application/json" \
  -H "OData-MaxVersion: 4.0"  \
  -H "OData-Version: 4.0" \
  -d "$expand=customerid_account($select=accountid,name)" \
  -d "$filter=incidentid eq c49e62a8-90df-e311-9565-a45d36fc5fe8" \
  -H "Authorization: Bearer DYNAMICS_CRM_ACCESS_TOKEN"

Unicode C Example

#include <C_CkRestW.h>
#include <C_CkStringBuilderW.h>
#include <C_CkJsonObjectW.h>

void ChilkatSample(void)
    {
    HCkRestW rest;
    BOOL success;
    BOOL bTls;
    int port;
    BOOL bAutoReconnect;
    HCkStringBuilderW sbResponseBody;
    int respStatusCode;
    HCkJsonObjectW jsonResponse;
    int i;
    int count_i;
    const wchar_t *odataContext;
    const wchar_t *odataEtag;
    const wchar_t *v_resolvebykpiid_value;
    BOOL customercontacted;
    const wchar_t *v_accountid_value;
    int prioritycode;
    const wchar_t *v_msdyn_incidenttype_value;
    int caseorigincode;
    const wchar_t *modifiedon;
    const wchar_t *v_parentcaseid_value;
    const wchar_t *v_slainvokedid_value;
    const wchar_t *overriddencreatedon;
    BOOL isescalated;
    const wchar_t *int_paraturecasenumber;
    BOOL checkemail;
    const wchar_t *followupby;
    const wchar_t *ticketnumber;
    int versionnumber;
    const wchar_t *v_modifiedby_value;
    const wchar_t *billedserviceunits;
    BOOL decremententitlementterm;
    const wchar_t *onholdtime;
    const wchar_t *resolveby;
    BOOL int_upsellreferral;
    const wchar_t *messagetypecode;
    const wchar_t *emailaddress;
    BOOL merged;
    const wchar_t *int_surveryparticipation;
    const wchar_t *contractservicelevelcode;
    const wchar_t *v_createdonbehalfby_value;
    const wchar_t *v_contactid_value;
    const wchar_t *v_existingcase_value;
    const wchar_t *productserialnumber;
    const wchar_t *v_owninguser_value;
    const wchar_t *int_effortnum;
    const wchar_t *escalatedon;
    const wchar_t *v_productid_value;
    BOOL followuptaskcreated;
    const wchar_t *v_ownerid_value;
    const wchar_t *new_actualsatisfaction;
    const wchar_t *v_socialprofileid_value;
    const wchar_t *v_createdbyexternalparty_value;
    const wchar_t *v_contractid_value;
    const wchar_t *v_modifiedbyexternalparty_value;
    const wchar_t *v_masterid_value;
    int timezoneruleversionnumber;
    const wchar_t *entityimageid;
    const wchar_t *v_primarycontactid_value;
    int importsequencenumber;
    const wchar_t *v_owningteam_value;
    BOOL routecase;
    BOOL blockedprofile;
    int statecode;
    const wchar_t *int_casecategory;
    const wchar_t *entityimage_timestamp;
    int firstresponseslastatus;
    const wchar_t *traversedpath;
    const wchar_t *int_actualsatisfaction;
    const wchar_t *v_int_associatedproduct_value;
    const wchar_t *v_customerid_value;
    const wchar_t *entityimage;
    const wchar_t *v_entitlementid_value;
    BOOL activitiescomplete;
    const wchar_t *new_upsellreferral;
    int statuscode;
    const wchar_t *processid;
    const wchar_t *v_contractdetailid_value;
    int int_customereffort;
    const wchar_t *responseby;
    const wchar_t *v_transactioncurrencyid_value;
    const wchar_t *sentimentvalue;
    const wchar_t *v_slaid_value;
    const wchar_t *influencescore;
    const wchar_t *v_firstresponsebykpiid_value;
    const wchar_t *utcconversiontimezonecode;
    const wchar_t *numberofchildincidents;
    const wchar_t *incidentid;
    const wchar_t *new_casecategory;
    const wchar_t *v_owningbusinessunit_value;
    int casetypecode;
    int resolvebyslastatus;
    const wchar_t *createdon;
    int severitycode;
    const wchar_t *exchangerate;
    const wchar_t *v_subjectid_value;
    int servicestage;
    const wchar_t *description;
    const wchar_t *lastonholdtime;
    const wchar_t *actualserviceunits;
    const wchar_t *title;
    const wchar_t *v_createdby_value;
    BOOL isdecrementing;
    const wchar_t *v_modifiedonbehalfby_value;
    int customersatisfactioncode;
    const wchar_t *stageid;
    const wchar_t *v_kbarticleid_value;
    const wchar_t *entityimage_url;
    BOOL firstresponsesent;
    int incidentstagecode;
    const wchar_t *customerid_accountAccountid;
    const wchar_t *customerid_accountName;

    rest = CkRestW_Create();

    //  URL: https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/incidents
    bTls = TRUE;
    port = 443;
    bAutoReconnect = TRUE;
    success = CkRestW_Connect(rest,L"my-dynamics-domain.api.crm.dynamics.com",port,bTls,bAutoReconnect);
    if (success != TRUE) {
        wprintf(L"ConnectFailReason: %d\n",CkRestW_getConnectFailReason(rest));
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        return;
    }

    CkRestW_AddQueryParam(rest,L"$expand",L"customerid_account($select=accountid,name)");
    CkRestW_AddQueryParam(rest,L"$filter",L"incidentid eq c49e62a8-90df-e311-9565-a45d36fc5fe8");

    CkRestW_AddHeader(rest,L"OData-MaxVersion",L"4.0");
    CkRestW_AddHeader(rest,L"Accept",L"application/json");
    CkRestW_AddHeader(rest,L"OData-Version",L"4.0");
    CkRestW_AddHeader(rest,L"Authorization",L"Bearer DYNAMICS_CRM_ACCESS_TOKEN");

    sbResponseBody = CkStringBuilderW_Create();
    success = CkRestW_FullRequestNoBodySb(rest,L"GET",L"/api/data/v9.0/incidents",sbResponseBody);
    if (success != TRUE) {
        wprintf(L"%s\n",CkRestW_lastErrorText(rest));
        CkRestW_Dispose(rest);
        CkStringBuilderW_Dispose(sbResponseBody);
        return;
    }

    respStatusCode = CkRestW_getResponseStatusCode(rest);
    if (respStatusCode >= 400) {
        wprintf(L"Response Status Code = %d\n",respStatusCode);
        wprintf(L"Response Header:\n");
        wprintf(L"%s\n",CkRestW_responseHeader(rest));
        wprintf(L"Response Body:\n");
        wprintf(L"%s\n",CkStringBuilderW_getAsString(sbResponseBody));
        CkRestW_Dispose(rest);
        CkStringBuilderW_Dispose(sbResponseBody);
        return;
    }

    jsonResponse = CkJsonObjectW_Create();
    CkJsonObjectW_LoadSb(jsonResponse,sbResponseBody);

    odataContext = CkJsonObjectW_stringOf(jsonResponse,L"\"@odata.context\"");
    i = 0;
    count_i = CkJsonObjectW_SizeOfArray(jsonResponse,L"value");
    while (i < count_i) {
        CkJsonObjectW_putI(jsonResponse,i);
        odataEtag = CkJsonObjectW_stringOf(jsonResponse,L"value[i].\"@odata.etag\"");
        v_resolvebykpiid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._resolvebykpiid_value");
        customercontacted = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].customercontacted");
        v_accountid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._accountid_value");
        prioritycode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].prioritycode");
        v_msdyn_incidenttype_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._msdyn_incidenttype_value");
        caseorigincode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].caseorigincode");
        modifiedon = CkJsonObjectW_stringOf(jsonResponse,L"value[i].modifiedon");
        v_parentcaseid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._parentcaseid_value");
        v_slainvokedid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._slainvokedid_value");
        overriddencreatedon = CkJsonObjectW_stringOf(jsonResponse,L"value[i].overriddencreatedon");
        isescalated = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].isescalated");
        int_paraturecasenumber = CkJsonObjectW_stringOf(jsonResponse,L"value[i].int_paraturecasenumber");
        checkemail = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].checkemail");
        followupby = CkJsonObjectW_stringOf(jsonResponse,L"value[i].followupby");
        ticketnumber = CkJsonObjectW_stringOf(jsonResponse,L"value[i].ticketnumber");
        versionnumber = CkJsonObjectW_IntOf(jsonResponse,L"value[i].versionnumber");
        v_modifiedby_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._modifiedby_value");
        billedserviceunits = CkJsonObjectW_stringOf(jsonResponse,L"value[i].billedserviceunits");
        decremententitlementterm = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].decremententitlementterm");
        onholdtime = CkJsonObjectW_stringOf(jsonResponse,L"value[i].onholdtime");
        resolveby = CkJsonObjectW_stringOf(jsonResponse,L"value[i].resolveby");
        int_upsellreferral = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].int_upsellreferral");
        messagetypecode = CkJsonObjectW_stringOf(jsonResponse,L"value[i].messagetypecode");
        emailaddress = CkJsonObjectW_stringOf(jsonResponse,L"value[i].emailaddress");
        merged = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].merged");
        int_surveryparticipation = CkJsonObjectW_stringOf(jsonResponse,L"value[i].int_surveryparticipation");
        contractservicelevelcode = CkJsonObjectW_stringOf(jsonResponse,L"value[i].contractservicelevelcode");
        v_createdonbehalfby_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._createdonbehalfby_value");
        v_contactid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._contactid_value");
        v_existingcase_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._existingcase_value");
        productserialnumber = CkJsonObjectW_stringOf(jsonResponse,L"value[i].productserialnumber");
        v_owninguser_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._owninguser_value");
        int_effortnum = CkJsonObjectW_stringOf(jsonResponse,L"value[i].int_effortnum");
        escalatedon = CkJsonObjectW_stringOf(jsonResponse,L"value[i].escalatedon");
        v_productid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._productid_value");
        followuptaskcreated = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].followuptaskcreated");
        v_ownerid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._ownerid_value");
        new_actualsatisfaction = CkJsonObjectW_stringOf(jsonResponse,L"value[i].new_actualsatisfaction");
        v_socialprofileid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._socialprofileid_value");
        v_createdbyexternalparty_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._createdbyexternalparty_value");
        v_contractid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._contractid_value");
        v_modifiedbyexternalparty_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._modifiedbyexternalparty_value");
        v_masterid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._masterid_value");
        timezoneruleversionnumber = CkJsonObjectW_IntOf(jsonResponse,L"value[i].timezoneruleversionnumber");
        entityimageid = CkJsonObjectW_stringOf(jsonResponse,L"value[i].entityimageid");
        v_primarycontactid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._primarycontactid_value");
        importsequencenumber = CkJsonObjectW_IntOf(jsonResponse,L"value[i].importsequencenumber");
        v_owningteam_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._owningteam_value");
        routecase = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].routecase");
        blockedprofile = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].blockedprofile");
        statecode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].statecode");
        int_casecategory = CkJsonObjectW_stringOf(jsonResponse,L"value[i].int_casecategory");
        entityimage_timestamp = CkJsonObjectW_stringOf(jsonResponse,L"value[i].entityimage_timestamp");
        firstresponseslastatus = CkJsonObjectW_IntOf(jsonResponse,L"value[i].firstresponseslastatus");
        traversedpath = CkJsonObjectW_stringOf(jsonResponse,L"value[i].traversedpath");
        int_actualsatisfaction = CkJsonObjectW_stringOf(jsonResponse,L"value[i].int_actualsatisfaction");
        v_int_associatedproduct_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._int_associatedproduct_value");
        v_customerid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._customerid_value");
        entityimage = CkJsonObjectW_stringOf(jsonResponse,L"value[i].entityimage");
        v_entitlementid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._entitlementid_value");
        activitiescomplete = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].activitiescomplete");
        new_upsellreferral = CkJsonObjectW_stringOf(jsonResponse,L"value[i].new_upsellreferral");
        statuscode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].statuscode");
        processid = CkJsonObjectW_stringOf(jsonResponse,L"value[i].processid");
        v_contractdetailid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._contractdetailid_value");
        int_customereffort = CkJsonObjectW_IntOf(jsonResponse,L"value[i].int_customereffort");
        responseby = CkJsonObjectW_stringOf(jsonResponse,L"value[i].responseby");
        v_transactioncurrencyid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._transactioncurrencyid_value");
        sentimentvalue = CkJsonObjectW_stringOf(jsonResponse,L"value[i].sentimentvalue");
        v_slaid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._slaid_value");
        influencescore = CkJsonObjectW_stringOf(jsonResponse,L"value[i].influencescore");
        v_firstresponsebykpiid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._firstresponsebykpiid_value");
        utcconversiontimezonecode = CkJsonObjectW_stringOf(jsonResponse,L"value[i].utcconversiontimezonecode");
        numberofchildincidents = CkJsonObjectW_stringOf(jsonResponse,L"value[i].numberofchildincidents");
        incidentid = CkJsonObjectW_stringOf(jsonResponse,L"value[i].incidentid");
        new_casecategory = CkJsonObjectW_stringOf(jsonResponse,L"value[i].new_casecategory");
        v_owningbusinessunit_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._owningbusinessunit_value");
        casetypecode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].casetypecode");
        resolvebyslastatus = CkJsonObjectW_IntOf(jsonResponse,L"value[i].resolvebyslastatus");
        createdon = CkJsonObjectW_stringOf(jsonResponse,L"value[i].createdon");
        severitycode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].severitycode");
        exchangerate = CkJsonObjectW_stringOf(jsonResponse,L"value[i].exchangerate");
        v_subjectid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._subjectid_value");
        servicestage = CkJsonObjectW_IntOf(jsonResponse,L"value[i].servicestage");
        description = CkJsonObjectW_stringOf(jsonResponse,L"value[i].description");
        lastonholdtime = CkJsonObjectW_stringOf(jsonResponse,L"value[i].lastonholdtime");
        actualserviceunits = CkJsonObjectW_stringOf(jsonResponse,L"value[i].actualserviceunits");
        title = CkJsonObjectW_stringOf(jsonResponse,L"value[i].title");
        v_createdby_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._createdby_value");
        isdecrementing = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].isdecrementing");
        v_modifiedonbehalfby_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._modifiedonbehalfby_value");
        customersatisfactioncode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].customersatisfactioncode");
        stageid = CkJsonObjectW_stringOf(jsonResponse,L"value[i].stageid");
        v_kbarticleid_value = CkJsonObjectW_stringOf(jsonResponse,L"value[i]._kbarticleid_value");
        entityimage_url = CkJsonObjectW_stringOf(jsonResponse,L"value[i].entityimage_url");
        firstresponsesent = CkJsonObjectW_BoolOf(jsonResponse,L"value[i].firstresponsesent");
        incidentstagecode = CkJsonObjectW_IntOf(jsonResponse,L"value[i].incidentstagecode");
        customerid_accountAccountid = CkJsonObjectW_stringOf(jsonResponse,L"value[i].customerid_account.accountid");
        customerid_accountName = CkJsonObjectW_stringOf(jsonResponse,L"value[i].customerid_account.name");
        i = i + 1;
    }



    CkRestW_Dispose(rest);
    CkStringBuilderW_Dispose(sbResponseBody);
    CkJsonObjectW_Dispose(jsonResponse);

    }

Sample JSON Response Body

{
  "@odata.context": "https://mydomain.api.crm.dynamics.com/api/data/v9.0/$metadata#incidents(customerid_account(accountid,name))",
  "value": [
    {
      "@odata.etag": "W/\"1161596\"",
      "_resolvebykpiid_value": null,
      "customercontacted": false,
      "_accountid_value": null,
      "prioritycode": 2,
      "_msdyn_incidenttype_value": null,
      "caseorigincode": 2,
      "modifiedon": "2018-03-03T12:34:48Z",
      "_parentcaseid_value": null,
      "_slainvokedid_value": null,
      "overriddencreatedon": "2018-03-03T12:34:48Z",
      "isescalated": false,
      "int_paraturecasenumber": null,
      "checkemail": false,
      "followupby": "2015-06-04T16:15:42Z",
      "ticketnumber": "CAS-01220-S1K8F4",
      "versionnumber": 1161596,
      "_modifiedby_value": "32ff7175-0dbe-4acb-872e-22f86435bf98",
      "billedserviceunits": null,
      "decremententitlementterm": true,
      "onholdtime": null,
      "resolveby": "2015-06-05T16:15:42Z",
      "int_upsellreferral": false,
      "messagetypecode": null,
      "emailaddress": null,
      "merged": false,
      "int_surveryparticipation": null,
      "contractservicelevelcode": null,
      "_createdonbehalfby_value": null,
      "_contactid_value": null,
      "_existingcase_value": null,
      "productserialnumber": null,
      "_owninguser_value": "32ff7175-0dbe-4acb-872e-22f86435bf98",
      "int_effortnum": null,
      "escalatedon": null,
      "_productid_value": "3509d8af-7bc3-e411-80df-fc15b42886e8",
      "followuptaskcreated": false,
      "_ownerid_value": "32ff7175-0dbe-4acb-872e-22f86435bf98",
      "new_actualsatisfaction": null,
      "_socialprofileid_value": null,
      "_createdbyexternalparty_value": null,
      "_contractid_value": null,
      "_modifiedbyexternalparty_value": null,
      "_masterid_value": null,
      "timezoneruleversionnumber": 0,
      "entityimageid": null,
      "_primarycontactid_value": null,
      "importsequencenumber": 124,
      "_owningteam_value": null,
      "routecase": true,
      "blockedprofile": false,
      "statecode": 0,
      "int_casecategory": null,
      "entityimage_timestamp": null,
      "firstresponseslastatus": 1,
      "traversedpath": null,
      "int_actualsatisfaction": null,
      "_int_associatedproduct_value": null,
      "_customerid_value": "b6a19cdd-88df-e311-b8e5-6c3be5a8b200",
      "entityimage": null,
      "_entitlementid_value": null,
      "activitiescomplete": false,
      "new_upsellreferral": null,
      "statuscode": 1,
      "processid": "0ffbcde4-61c1-4355-aa89-aa1d7b2b8792",
      "_contractdetailid_value": null,
      "int_customereffort": 121590000,
      "responseby": null,
      "_transactioncurrencyid_value": null,
      "sentimentvalue": null,
      "_slaid_value": null,
      "influencescore": null,
      "_firstresponsebykpiid_value": null,
      "utcconversiontimezonecode": null,
      "numberofchildincidents": null,
      "incidentid": "c49e62a8-90df-e311-9565-a45d36fc5fe8",
      "new_casecategory": null,
      "_owningbusinessunit_value": "c4106190-c81e-e811-a980-000d3a192e9a",
      "casetypecode": 2,
      "resolvebyslastatus": 1,
      "createdon": "2017-01-20T22:50:47Z",
      "severitycode": 1,
      "exchangerate": null,
      "_subjectid_value": "191de3d1-21d5-e411-80eb-c4346bad3638",
      "servicestage": 0,
      "description": null,
      "lastonholdtime": null,
      "actualserviceunits": null,
      "title": "Faulty product catalog",
      "_createdby_value": "32ff7175-0dbe-4acb-872e-22f86435bf98",
      "isdecrementing": false,
      "_modifiedonbehalfby_value": null,
      "customersatisfactioncode": 3,
      "stageid": "92a6721b-d465-4d36-aef7-e8822d7a5a6a",
      "_kbarticleid_value": null,
      "entityimage_url": null,
      "firstresponsesent": false,
      "incidentstagecode": 1,
      "customerid_account": {
        "accountid": "b6a19cdd-88df-e311-b8e5-6c3be5a8b200",
        "name": "Fourth Coffee"
      }
    }
  ]
}