Dynamics 365 Web API Toolkit for PHP
Switch branches/tags
Nothing to show
Clone or download
wizardist Merged PR 4: Fix FetchXML aliased lookup types guessing routine and p…
…rotect execution

Fix FetchXML aliased lookup types guessing routine and protect execution

Related work items: #3595, #3597
Latest commit 1ab441c Nov 26, 2018

README.md

Dynamics Web API Toolkit

The Dynamics Web API Toolkit provides an easy-to-use PHP wrapper for the Dynamics 365 Customer Engagement Web API.

Create, read, update and delete CRM records easily via the IOrganizationService - compatible interface, as well as execute Web API actions and functions.

See the tutorial for the sample code to instantiate the connection, create, retrieve, update and delete records.

This toolkit supports only Dynamics 365 Web API. For PHP implementation of the Dynamics 365 SOAP interface, see php-crm-toolkit project.

Features & Limitations

The current release of the library does not support the following features (supported features and scenarios are mentioned along the way):

  • Authentication support for IFD and On-Premises (AD) deployments. Support for IFD (Internet Facing Deployment) is on the roadmap, On-Premises deployments (using AD) are under consideration.
  • Execute method of IOrganizationService interface is not supported yet. Means for executing functions and actions, both bound and unbound, are provided though.
  • Batch requests are not supported yet. That means, associating/disassociating multiple records is executed in multiple separate requests which may affect the performance.
  • Organization metadata (entities and attributes, global option sets, etc.) is not supported yet, although can be retrieved manually via the built-in OData helper client or via the HTTP client.
  • Most of the record attribute values are returned as-is from Web API. That means, at this point you must expect integers in place of OptionSetValue objects for picklist values, Status/State attributes, booleans for "Two Options" attributes, and floats for decimal and Money attributes. Lookup attribute values are rendered as EntityReference objects. The same applies when you set values in the Entity, including EntityReferences. This is likely to change once organization metadata is integrated into the toolkit.

Getting Started

Prerequisites

The main requirement is PHP 7.0 or later. cURL is recommended but is not required. Composer is required to install the toolkit and its dependencies.

Installing

$ composer require alexacrm/dynamics-webapi-toolkit:dev-master

Consuming

See the Tutorial to learn how to consume the library.

Built With

Versioning

Currently the toolkit code is not tagged. Once the library is stable API-wise, we will use SemVer for versioning.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.