Skip to main content

Transactions

Execute multiple operations atomically with automatic rollback on failure:

Transaction Options

Batch Requests

Execute multiple independent operations in a single HTTP request:

OData Functions

Call OData function imports:

Unbound Functions

Bound Functions

Functions bound to a specific entity:

OData Actions

Call OData action imports (operations that modify data):

Unbound Actions

Bound Actions

Actions bound to a specific entity:

Request Interceptors

Add custom logic to every request:

Response Interceptors

Process responses before they’re returned:

Error Interceptors

Handle errors globally:

Raw OData Response

Get the full OData response including metadata:

Custom Headers

Add custom headers to requests:

Metadata Operations

Access OData service metadata:

ETags and Concurrency

Handle optimistic concurrency with ETags:
If the entity was modified by another user, you’ll receive a 409 Conflict error.

Deep Insert

Create parent and child entities in a single request:

Query Streaming

For very large result sets, stream results:

Connection Pooling

The SDK automatically manages connection pooling. For high-throughput scenarios: