Contact Us 1-800-596-4880

APIkit for OData v4 Module Reference

Learn the fundamentals about dependency, namespace, and schema information in APIkit for OData v4 to collaborate, build applications, and maintain codebases.

Dependency Information

<dependency>
  <groupId>org.mule.modules</groupId>
  <artifactId>mule-odata-module</artifactId>
  <version>LATEST_VERSION</version> (1)
  <classifier>mule-plugin</classifier>
</dependency>
1 Check APIkit release notes to get the LATEST_VERSION.

Namespace and Schema

xmlns:apikit-odata="http://www.mulesoft.org/schema/mule/apikit-odata"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/apikit-odata http://www.mulesoft.org/schema/mule/apikit-odata/current/mule-apikit-odata.xsd"

Configurations

Config

Default configuration

Parameters

Name Type Description Default Value Required

Name

String

Name for this configuration. Connectors reference the configuration with this name

x

Api Definition

String

API definition

x

Name

String

Identifier of this element used to reference it in other components

x

Operations

Route

<apikit-odata:route>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration to use

x

Content

Any

#[payload]

Output MIME Type

String

MIME type of the payload that this operation outputs

Output Encoding

String

Encoding of the payload that this operation outputs

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Streaming Strategy

Configure if repeatable streams and their behavior are used

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

HTTP request method name

x

Masked Request Path

String

OData request path, relative to listener

x

Scheme

Enumeration, one of:

  • HTTP

  • HTTPS

HTTP request scheme

x

Host

String

Request host

x

Listener Path

String

Listener path ending with "*"

x

Http Headers

Object

HTTP request headers

Query String

String

HTTP query string

Target Variable

String

Name of a variable on which the operation output is placed

Target Value

String

An expression that is evaluated against the operation output and the outcome of that expression is stored in the target variable

#[payload]

Output

Type

Any

Attributes Type

RouteOutputAttributes

For Configurations

Throws

  • APIKIT-ODATA:DESERIALIZATION

  • APIKIT-ODATA:INTERNAL_SERVER_ERROR

  • APIKIT-ODATA:MALFORMED_SEARCH

  • APIKIT-ODATA:MALFORMED_URI

  • APIKIT-ODATA:NOT_FOUND

  • APIKIT-ODATA:NOT_IMPLEMENTED

  • APIKIT-ODATA:SERIALIZATION

  • APIKIT-ODATA:TRANSFORMATION

  • APIKIT-ODATA:EXPANSION

Serialize Entity

<apikit-odata:serialize-entity>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration to use

x

Inbound Content

Binary

#[payload]

Output MIME Type

String

MIME type of the payload that this operation outputs

Output Encoding

String

Encoding of the payload that this operation outputs

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Streaming Strategy

Configure if repeatable streams and their behavior are used

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

HTTP Method

x

Path

String

Path to Entity Type

x

Target Variable

String

Name of a variable on which the operation output is placed

Target Value

String

An expression that is evaluated against the operation output and the outcome of that expression is stored in the target variable

#[payload]

Output

Type

Binary

For Configurations

Serialize Entity Collection

<apikit-odata:serialize-entity-collection>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration

x

Inbound Content

Binary

#[payload]

Output MIME Type

String

MIME type of the payload that this operation outputs

Output Encoding

String

Encoding of the payload that this operation outputs

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Streaming Strategy

Configure if repeatable streams and their behavior are used

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

HTTP Method

x

Path

String

Path to Entity Type

x

Target Variable

String

Name of a variable on which the operation output is placed

Target Value

String

An expression that is evaluated against the operation output and the outcome of that expression is stored in the target variable

#[payload]

Output

Type

Binary

For Configurations

Transform to SQL Select

<apikit-odata:transform-to-sql-select>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration to use

x

Entity Set Name

String

Table name in the database for the requested entity set

x

Database Schema

String

Database schema name to which the entity set belongs. If not empty, it is prefixed to the table name in the WHERE clause

Page Size

Number

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Streaming Strategy

Configure if repeatable streams and their behavior are used

Entity Type Name

String

Entity Data Model specifies the entity type name

x

Entity Type Fields

Array of String

List of property fields from the Entity type

x

Entity Type Keys

Object

Map of entity key names and values

x

System Query Options

Object

System Query Options map. The grammar and syntax rules for system query options are defined in [OData-ABNF]. To simplify usability, the initial dollar sign is removed to avoid escaping within DataWeave. For example, to access System Query Option, $skip uses the following expression #[attributes.systemQueryOptions.'skip']

x

Search Transformation Enabled

Boolean

Enabling $search transformation to WHERE clause

true

Strict Search Term Match

Boolean

Enabling full term match for $search. If enabled, terms in WHERE clause are not enclosed between '%'.

false

Sql Limit Rows

Enumeration, one of:

  • LIMIT

  • FETCH_NEXT_ROWS_ONLY

Option to limit the number of rows

Sql Identifiers Delimiter

Enumeration, one of:

  • DOUBLE_QUOTES

  • BRACKETS

  • BACK_TICKS

Option to delimit identifiers

Target Variable

String

Name of a variable on which the operation output is placed

Target Value

String

An expression that is evaluated against the operation output and the outcome of that expression is stored in the target variable

#[payload]

Output

Type

Binary

Attributes Type

* SqlTransformerOutputAttributes

For Configurations

Throws

  • APIKIT-ODATA:INTERNAL_SERVER_ERROR

  • APIKIT-ODATA:MALFORMED_SEARCH

  • APIKIT-ODATA:MALFORMED_URI

  • APIKIT-ODATA:NOT_IMPLEMENTED

  • APIKIT-ODATA:TRANSFORMATION

Sources

On Entity Collection Request

<apikit-odata:request-entity-collection-listener>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration to use

x

Output MIME Type

String

MIME type of the payload that this operation outputs

Output Encoding

String

Encoding of the payload that this operation outputs

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Primary Node Only

Boolean

Specify if this source executes only on the primary node when running in Cluster

Streaming Strategy

Configure if repeatable streams and their behavior are used

Redelivery Policy

Policy for processing the redelivery of the same message

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

HTTP Method

x

Path

String

Path to Entity Type

x

Collection Success Response

One of:

Supported System Query Options - $expand

Boolean

Enabling support for $expand

true

Ignore errors on expansion enabled

Boolean

Disallowing errors from the flows that generic expansion calls to propagate to this flow. When true, failed expansions render as null.

false

Expandable navigation properties

List<String>

List of types that can be generically expanded from this flow.

[]

Output

Type

Any

Attributes Type

ListenerRequestAttributes

For Configurations

On Entity Request

<apikit-odata:request-entity-listener>

Parameters

Name Type Description Default Value Required

Configuration

String

Name of the configuration to use

x

Output MIME Type

String

MIME type of the payload that this operation outputs

Output Encoding

String

Encoding of the payload that this operation outputs

Config Ref

ConfigurationProvider

Name of the configuration used to execute this component

x

Primary Node Only

Boolean

If this source must only be executed on the primary node when running in Cluster

Streaming Strategy

Configure if repeatable streams and their behavior are used

Redelivery Policy

Policy for processing the redelivery of the same message

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

HTTP Method

x

Path

String

Path to Entity Type

x

Supported System Query Options - $expand

Boolean

Enabling support for $expand

true

Ignore errors on expansion enabled

Boolean

Disallowing errors from the flows that generic expansion calls to propagate to this flow. When true, failed expansions render as null

false

Expandable navigation properties

List<String>

List of types that can be generically expanded from this flow

[]

Output

Type

Any

Attributes Type

ListenerRequestAttributes

For Configurations

Types

Listener Request Attributes

Field Type Description Default Value Required

Entity Set Name

String

Odata Http Attributes

Odata Request Attributes

OData Http Attributes

Field Type Description Default Value Required

Headers

Object

Method

Enumeration, one of:

  • GET

  • POST

  • PUT

  • PATCH

  • DELETE

Raw Base Uri

String

Raw Odata Path

String

Raw Query Path

String

Raw Request Uri

String

Scheme

Enumeration, one of:

  • HTTP

  • HTTPS

OData Request Attributes

Field Type Description Default Value Required

Custom Query Options

Object

Entity Type Fields

Array of String

Entity Type Keys

Object

Entity Type Name

String

System Query Options

Object

Repeatable in Memory Stream

Field Type Description Default Value Required

Initial Buffer Size

Number

Amount of memory allocated to consume the stream and provide random access to it. If the stream has more data than buffer capacity, it expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.

Buffer Size Increment

Number

Expansion of the buffer size if exceeding its initial size. If you set a value of zero or lower, the buffer does not expand and raises a STREAM_MAXIMUM_SIZE_EXCEEDED error when the buffer gets full.

Max Buffer Size

Number

The maximum amount of memory for the buffer to use. When the memory usage exceeds this limit, a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower or equal to zero means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit to express these attributes

Repeatable File Store Stream

Field Type Description Default Value Required

In Memory Size

Number

Maximum memory that the stream uses to keep data in memory. If more memory is consumed, the stream starts to buffer the content on the disk

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit to express maxInMemorySize

Redelivery Policy

Field Type Description Default Value Required

Max Redelivery Count

Number

Maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message

Message Digest Algorithm

String

Secure hashing algorithm (default: SHA-256)

Message Identifier

Strategy to identify the messages

Object Store

ObjectStore

The object store where the redelivery counter for each message is stored

Redelivery Policy Message Identifier

Field Type Description Default Value Required

Use Secure Hash

Boolean

Whether to use a secure hash algorithm to identify a redelivered message

Id Expression

String

One or more expressions that determine when a message has been redelivered. You can set this property if useSecureHash is false

Route Output Attributes

Field Type Description Default Value Required

Headers

Object

Status Code

Number

SQL Transformer Output Attributes

Field Type Description Default Value Required

Query Parameters

Object

Raw Entity Success Response

Field Type Description Default Value Required

Raw Content

Binary

Raw response content of the response message

#[payload]

Entity Success Response

Field Type Description Default Value Required

Body Content

Binary

Body of the response message

#[payload]

Raw Entity Collection Success Response

Field Type Description Default Value Required

Raw Content

Binary

Raw response message

#[payload]

Entity Collection Success Response

Field Type Description Default Value Required

Body Content

Binary

Body of the response message

#[payload]

Serialization Parameters

Set of serialization-related parameters.

x

Serialization Parameters

Field Type Description Default Value Required

Count

Number

Page Size

Number

Token

String