About Integrations Usage

When creating Oracle Integration instances, administrators specify the number of message packs they plan to use for per instance.

Rules for tracking Integration billed messages

Follow these rules to determine how message consumption is calculated.

Number Rule Description

1

Trigger

Each trigger activity counts as at least one message, up to 50KB inbound. If the inbound message payload exceeds 50KB, 1 additional message is counted for each additional 50KB.

2

Invoke

Invoke requests don't count as messages, but invoke responses over 50KB count. If the message payload exceeds 50KB, 1 additional message is counted for each additional 50KB.

3

File

For file based scheduled flows where there are incoming files into integrations, each file is converted into a billed message (in multiples of 50KB) only when the size is greater than 50KB.

4

Internal

Internal calls within the same Oracle Integration instance aren't counted as messages. For example, the following aren't counted:

  • Integration to Integration

Calling another Oracle Integration instance does incur messages in the target Oracle Integration instance, and, depending on the response size, may also incur messages in the calling Oracle Integration instance.

Integration Usage Examples

This table shows by example how message billing is calculated and the rules that apply.

Integration Type Scenario/Flow Billing Message Calculation Rules That Apply

Sync/Async (Trigger)

  1. REST inbound with 120KB payload.

  2. Data transformation.

  3. External invoke to push data to Logfire.

Payload size is considered at trigger.

ceil(120/50) = 3 messages

#1 (Trigger)

Sync/Async (Trigger)

  1. SOAP inbound with 70KB payload.

  2. Download files in a loop.

  3. 3 files downloaded of sizes 20KB, 170KB, and 40KB, respectively.

  4. Data transformation/enrichment.

  5. External invoke to push data to an external system via REST.

Payload size is considered at trigger. Any subsequent response greater than 50KB is also tracked. In this scenario, only files greater than 50KB are considered.

ceil(70/50) + ceil(170/50) = 2 +4 = 6 messages

#1 (Trigger)

#3 (File)

Sync/Async (Trigger)

  1. Database adapter pulling in 20KB data and 2 rows.

  2. For each row, 1 outbound REST invoke is made, which results in 20KB data for each invoke.

  3. Data enrichment/transformation.

  4. FTP to an external location.

Payload size is considered at trigger. Any subsequent response greater than 50KB is also tracked.

ceil (20/50) = 1 message

#1 (Trigger)

Sync/Async (Trigger)

  1. SOAP inbound with 10KB payload.

  2. Download files in a loop. Two files downloaded of sizes 20KB and 70KB, respectively.

  3. External invoke to get further data via REST adapter. Returns 100KB data.

  4. FTP to an external location.

Payload size is considered at trigger. Any subsequent response greater than 50KB is also tracked.

ceil(10/50)+ ceil (70/50) + ceil(100/50) = 1+2+2 = 5 messages

#1 (Trigger)

#2 (Invoke)

#3 (File)

Sync/Async (Trigger)

  1. Simple REST GET request with template parameters without payload.

  2. Call to Oracle B2C Service to get contact details. Returns a response of 40KB.

  3. Return the contact data.

Payload size is considered at trigger. Any subsequent response greater than 50KB is also tracked. Since the trigger is just a GET request with no payload, it's considered 1 billed message.

1 message

#1 (Trigger)

Scheduled flow

  1. Scheduled trigger.
  2. Download files in a loop. Three files downloaded of sizes 20KB, 170KB, and 40KB, respectively.
  3. Data transformation.

  4. External invoke to transfer data which results in 10 bytes of response.

Each invoke/file is considered in multiples of 50KB when response data is more than 50KB.

ceil(170/50) = 4 messages

#3 (File)

Scheduled flow

  1. Scheduled trigger.
  2. Database adapter pulling in 30KB data and 10 rows.
  3. Data transformation.

  4. External invoke to transfer data which results in 5 bytes of response.

Each invoke/file is considered in multiples of 50KB when response data is more than 50KB.

Not counted.

None

Scheduled flow

  1. Scheduled trigger.
  2. External SOAP invoke to get data via BIP reports. Returns 130KB data.
  3. External invoke to get further data via REST adapter. Returns 10KB data.

  4. Data transformation.
  5. External invoke to transfer data which results in 5 bytes of response.

Each invoke/file is considered in multiples of 50KB when response data is more than 50KB.

ceil(130/50) = 3 messages

#3 (File)

Scheduled flow

  1. Scheduled trigger.
  2. Download files in a loop. Two files downloaded of sizes 20KB and 40KB, respectively.
  3. External invoke to get further data via REST adapter. Returns 100KB data.

  4. FTP to an external location.

Each invoke/file is considered in multiples of 50KB when response data is more than 50KB.

ceil(100/50) = 2 messages

#2 (Invoke)

Scheduled flow

  1. Scheduled trigger.
  2. External invoke to get data via REST adapter. Returns 10KB data.
  3. Data transformation.

  4. External REST invoke to transfer data which results in 500 bytes of response.

Each invoke/file is considered in multiples of 50KB when response data is more than 50KB.

Not counted.

#4 (Internal)

None counted

Child Integration flow

  1. A parent Integration flow calls a child Integration flow via REST in a loop.
  2. The child Integration flow sends a notification email with the information passed from a parent flow.
  3. Child flow execution completes.

Integration child flow invoke is waived from metering.

Not counted. Note that the parent may count.

#4 (Internal)

None counted

Child Integration flow

  1. Parent Integration flow downloads a CSV file via the FTP adapter. The CSV contains 5 rows.
  2. Each row in the CSV file calls a child Integration child flow.
    1. The child Integration flow reads a orderid passed as an input.

    2. Invokes a request to Oracle B2C Service to get data about the order. Each invoke returns 70KB data.

    3. Data transformation in child flow.

    4. Pushes the data via an FTP adapter to write it to a file.

    5. Child execution completes.

Integration child flow invokes are waived from metering. Any subsequent response is metered.

Each child = ceil(70/50) = 2 messages

Note that the parent may count.

#2 (Invoke)