Introduction
OData client implements configuration entity for OData servers, IO functions to OData collections and Drupal format OdataQuery object.
This module makes it possible to integrate Drupal with e.g. Microsoft Dynamics CRM.
Requirements
The module requires the following libraries:
saintsystems/odata-client: ^0.2.4
league/oauth2-client: ^2.4
thenetworg/oauth2-azure: ^1.4
Installation
Install as you would normally install a contributed Drupal module. Visit:
https://www.drupal.org/documentation/install/modules-themes/modules-8
for further information.
Configuration
Go to /admin/structure/odata_server and create new server configuration
Usage
After made a server configuration name default able to connect to server:
$odata_client = \Drupal::service('odata_client.io');
$odata_client->connect('default');Change collection:
In configuration can define the default collection but may to change it:
$odata_client->setCollection('People');
Find an element by key:
Return the data of element key ‘russellwhyte’:
$result = $odata_client->find('russellwhyte');
Count elements in collection:
Return elements count the collection:
$result = $odata_client->count();
Create new element:
Create new element in collection:
$data = array (
'UserName' => 'teresa',
'FirstName' => 'Teresa',
'LastName' => 'Gilbert',
'Gender' => 'Female',
'Emails' =>
array (
0 => 'teresa@example.com',
1 => 'teresa@contoso.com',
),
'AddressInfo' =>
array (
0 =>
array (
'Address' => '1 Suffolk Ln.',
'City' =>
array (
'CountryRegion' => 'United States',
'Name' => 'Boise',
'Region' => 'ID',
),
),
),
);
$result = $odata_client->post($data);Get data from collection:
Return max 4 elements FirstName and LastName columns where FirstName is Teresa, sort by LastName descending:
$query = \Drupal::service('odata_client.query');
$query->connect('default')
->fields(['FirstName','LastName'])
->condition('FirstName', 'Teresa')
->orderBy('LastName', 'desc');
->range(0, 4);
$result = $query->execute();Project information
- Project categories: Integrations
3 sites report using this module
- Created by dj1999 on , updated
Stable releases for this project are covered by the security advisory policy.
There are currently no supported stable releases.
Releases
Drupal 11 ready.
Development version: 3.1.x-dev updated 17 Mar 2025 at 11:04 UTC

