Contact Us 1-800-596-4880

Usage and Pricing Metrics

MuleSoft captures usage data for Mule flows, Mule messages, and data throughput, but not all of this data is aggregated in usage reports.

For select customers in the US control plane, MuleSoft offers a pricing and packaging model for Anypoint Platform that allots a number of Mule flows, Mule messages, and data throughput (measured as network I/O bytes). Not all types of Mule flows and messages count toward the allotments in a package.

Metrics Collected in Anypoint Platform

Anypoint Platform captures usage metrics across products, but not all metrics are billable or reflected in usage reports.

Product Metric Description Usage Details

Mule Runtime

Mule flow: A flow within a deployed and running Mule app that contains a Mule event source or route APIKit request.

Flows are aggregated using a Max Concurrent model. The usage for a month is the highest number of flows that exist in a single given hour during a month.

Mule message: The container of the core information processed by the runtime.

A Mule message counts as a single unit when an event source triggers it. Messages are aggregated using a sum of all messages sent during a month.

Data throughput: The total amount of data transferred in and out of the infrastructure that runs Mule where the Mule app is deployed.

Data throughput counts when the deployed application transfers data to execute its business logic, including but not limited to internal operational network traffic for monitoring, logs, and health checks. Data throughput is aggregated as a sum of all bytes during a month.

API Manager

API instance under management: API instances that are managed by API Manager after they are created using add, promote, or import options.

API instances remain under management until they are deleted. Instances of API Manager are aggregated using a Max Concurrent model. The usage for a month is the highest number of APIs Managed in a single given hour during a month.

API Governance

API under Governance: APIs that are identified by the selection criteria of at least one of the governance profiles.

If an API is governed, all versions of that API are considered one governed API. Instances of API Governance are aggregated using a Max Concurrent model. The usage for a month is the highest number of APIs governed in a single given hour during a month.

Flex Gateway

Flex Gateway API call: Any access request received by Anypoint Flex Gateway regardless of whether the response to the request is successful or not.

Flex Gateway requests are aggregated as a sum of all requests during a month.

Composer

Composer task: Any action executed on a Composer connector, including but not limited to read, create, update, and delete.

Composer tasks are aggregated as a sum of all actions during a month.

RPA

Robotic Process Automation (“RPA”) bot minutes: The number of minutes running process automations across all bot sessions.

A single bot may run multiple parallel sessions, with RPA bot minutes counting for each parallel session. Multiple bots may be configured to run the same process, with RPA bot minutes counting for each of these separate bot sessions. Test runs or process runs in the test phase are also counted towards RPA bot minutes.

Message Queue

Anypoint MQ API request: A request made to retrieve one or more messages from the Anypoint MQ APIs.

Each Anypoint MQ API request includes up to 100 kilobytes of data. An Anypoint MQ API request over 100 kilobytes counts as multiple requests with no fractional units. Anypoint MQ API requests are calculated in the aggregate across all environments (including production, pre-production, sandbox, and design). MQ API requests are currently available via API and are not currently aggregated on usage reports.

Object Store

Object Store API request: A request made to retrieve one or more messages from the Object Store APIs as further defined in the Object Store Documentation.

Each Object Store API Request includes up to 100 kilobytes of data. Object Store API Requests over 100 kilobytes count as multiple requests with no fractional units. OS API requests are currently available via API and are not currently aggregated on usage reports.

Data Graph

DataGraph orchestration: An API request made by Anypoint DataGraph to the source APIs to get data for the GraphQL API request made to Anypoint DataGraph.

Orchestrations are not currently aggregated on usage reports.

IDP

Intelligent Document Processing (IDP) Document Pages: A single page processed by IDP.

IDP document actions might process documents that have more than one page, with each page counting separately. When RPA executes document actions, it also counts towards document pages and additionally consumes the corresponding RPA Bot Minutes, accounting for the time the RPA process runs.

Mule Flows

A Mule flow is a sequence of logical operations configured in XML by using the <flow> element. A Mule app can consist of a single Mule flow, or it can break up processing into discrete Mule flows and subflows that you add to the app and connect together. Mule apps in production environments typically use multiple Mule flows and subflows to divide the app into functional modules or for error-handling purposes. For example, one Mule flow might receive a record and transform data into a given format that another flow processes.

In a usage report, flow counts are calculated by multiplying the number of flows in an app by the number of workers (CloudHub) or replicas (Runtime Fabric and CloudHub 2.0).

Mule Flow Scenarios that Count Towards Your Anypoint Platform Package Allotment

The following Mule flows count towards your allotment:

Mule flows are charged only when the application containing the Mule flow is deployed and running.

Mule Flow with an Event Source

The following Mule flow contains an event source as the first element. In this case, the listener counts towards your allotment.

<flow name="test-flow" >
        <http:listener config-ref="cocheras-puerto-madero-api-httpListenerConfig" path="/daily-report"/>
         <logger level="INFO" message="#[output json --- attributes.queryParams]" />
</flow>

Examples of Event Sources

Connector Source

aggregators

aggregator-listener

amqp

listener

anypoint-mq

subscriber

apikit-odata

request-entity-collection-listener

request-entity-listener

as2-mule4

as2-listener

as2-mdn-listener

non-repudiation-listener

azure-service-bus-messaging

message-listener

core

scheduler

db

listener

email

listener-imap

listener-pop3

file

listener

ftp

listener

ftps

listener

google-sheets

new-row-listener

new-spreadsheet-listener

updated-row-listener

http

listener

ibm-mq

listener

jms

listener

kafka

batch-message-listener

message-listener

mllp

mllp-listener

netsuite

deleted-object-listener

modified-object-listener

modified-record-listener

new-record-listener

pubsub

message-listener

salesforce

deleted-object-listener

modified-object-listener

new-object-listener

replay-channel-listener

replay-topic-listener

subscribe-channel-listener

subscribe-topic-listener

sap

document-listener

function-listener

servicebus

listener

sftp

listener

sockets

listener

solace

queue-listener

topic-listener

sqs

receive-messages

receivemessages

stripe

citizen-on-new-charge-listener

on-new-charge-listener

on-new-event-listener

vm

listener

websocket

inbound-listener

outbound-listener

Mule Flow Generated by APIkit and Used for Routing APIkit Requests

APIkit is a tool that simplifies the implementation of APIs by automatically generating a minimal set of Mule flows based on the API specification. Each APIkit router endpoint counts as a distinct Mule flow. These Mule flows do not have an event source and are used for the handling of HTTP requests for a particular API method and path.

Example of an APIkit Request:

This flow routes APIkit requests and handles the GET request in the /reservation path:

<flow name="get:\reservation:cocheras-puerto-madero-api-config">
        <logger level="INFO" message="#[output json --- attributes.queryParams]" />
</flow>

Mule Flows that Do Not Count Against Your Anypoint Platform Package Allotment

Mule Flows that do not have an event source and are not used for the routing of APIkit requests are not charged against your Anypoint Platform package allotment. These are Mule flows primarily used to modularize code.

Example:

2.a - Flow with only a logger component
<flow name="just-logging">
        <logger level="INFO" message="#[output json --- attributes.queryParams]" />
</flow>

Mule Messages

A Mule message is the data (the payload and its attributes) that passes through one or more Mule flows in an application. A Mule message is part of a Mule event, which is generated when the event source within a Mule flow is triggered. For example, a Mule event that consists of a Mule message is created when an HTTP listener receives a request or each time the scheduler component triggers an execution of the Mule flow. Mule message processors in a Mule flow (such as core components, file read operations, or the HTTP request operations) can then retrieve, set, and process Mule message data that resides in the Mule event according to their configurations. A Mule message is immutable, so every change to a Mule message results in the creation of a new instance. Each processor in a flow that receives a Mule message returns a new Mule message that consists of a message payload (the body of the message) and message attributes (metadata associated with the message).

Mule Message Scenarios that Count Towards Your Anypoint Platform Package Allotment

When an event source within a flow of a Mule application is triggered, the event source (such as HTTP, Salesforce, scheduler, and so on) generates a Mule event that encapsulates a Mule message. The Mule message generated by the event source counts towards your Anypoint Platform package allotment. New instances of that message, which can be created during the processing of the original message as it moves through other processors in connected Mule flows, do not count towards your Anypoint Platform package allotment.

Data Throughput

Data Throughput is all of the network I/O bytes produced by the infrastructure that starts and runs the Mule Runtime server that runs a Mule application. This includes the data that the application produces to execute its business logic, as well as internal operational network traffic such as logs, health-checks, and monitoring traffic. For example, data throughput includes inserting a record into a database and the network traffic associated with the infrastructure of the app, such as log forwarding, control plane connection, and monitoring metrics transfer.

View Usage Data in Access Management

Runtime Manager, Anypoint MQ, and Object Store v2 store some usage data, such as vCore allocations and API requests, in Access Management.

Access Runtime Manager Metrics

Runtime Manager metrics include:

  • Production vCores

  • Design vCores

  • Sandbox vCores

  • VPCs

  • Network connections

  • Static IPs

  • Load balancers

To access Runtime Manager metrics:

  1. Log in to Anypoint Platform using an account that has the Organization Administrator permission.

  2. In the navigation bar or the main Anypoint Platform page, click Access Management.

  3. In the Subscriptions section, click Runtime Manager.

Access Anypoint MQ Metrics

  • Message units

  • API requests

To access Anypoint MQ metrics:

  1. Log in to Anypoint Platform using an account that has the Organization Administrator permission.

  2. In the navigation bar or the main Anypoint Platform page, click Access Management.

  3. In the Subscriptions section, click MQ.

Object Store v2 Metrics

Object Store v2 metrics in Access Management include API requests.

To access Object Store v2 metrics:

  1. Log in to Anypoint Platform using an account that has the Organization Administrator permission.

  2. In the navigation bar or the main Anypoint Platform page, click Access Management.

  3. In the Subscriptions section, click Object Store.