RETRIEVING ENTITY METADATA IN DYNAMICS 365 WITH JAVASCRIPT

In this post, we will look at how to retrieve Entity Metadata in Dynamics 365 with JavaScript.

Let’s say you want to get the metadata for an entity.

var req = new XMLHttpRequest();

req.open("GET", Xrm.Utility.getGlobalContext().getClientUrl() + "/api/data/v9.0/EntityDefinitions(LogicalName='account')", true);

req.setRequestHeader("OData-MaxVersion", "4.0");

req.setRequestHeader("OData-Version", "4.0");

req.setRequestHeader("Accept", "application/json");

req.setRequestHeader("Content-Type", "application/json; charset=utf-8");

req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");

req.onreadystatechange = function() {

    if (this.readyState === 4) {

        req.onreadystatechange = null;

        if (this.status === 200) {

            var results = JSON.parse(this.response);

            console.log(results);

        } else {

            Xrm.Utility.alertDialog(this.statusText);

        }

    }

};

req.send();

Let’s say you want to retrieve all attributes for a given entity, We will do this for the account entity.

The code:

var req = new XMLHttpRequest();

req.open("GET", Xrm.Utility.getGlobalContext().getClientUrl() + "/api/data/v9.0/EntityDefinitions(LogicalName='account')/Attributes?$select=SchemaName", true);

req.setRequestHeader("OData-MaxVersion", "4.0");

req.setRequestHeader("OData-Version", "4.0");

req.setRequestHeader("Accept", "application/json");

req.setRequestHeader("Content-Type", "application/json; charset=utf-8");

req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");

req.onreadystatechange = function() {

    if (this.readyState === 4) {

        req.onreadystatechange = null;

        if (this.status === 200) {

            var results = JSON.parse(this.response);

            for (var i = 0; i < results.value.length; i++) {

                console.log("Schema Name: " + results.value[i].SchemaName + ", Type: " + results.value[i]["@odata.type"]);

            }

        } else {

            Xrm.Utility.alertDialog(this.statusText);

        }

    }

};

req.send();

Running this, we get:

For more information, check out here.

RETRIEVING ENTITY METADATA IN DYNAMICS 365 WITH JAVASCRIPT

https://www.youtube.com/@powerappsninja

Leave a Comment

Your email address will not be published. Required fields are marked *