| Namespace | http://www.mulesoft.org/schema/mule/zuora |
|---|---|
| Schema Location | http://www.mulesoft.org/schema/mule/zuora/current/mule-zuora.xsd (View Schema) |
| Schema Version | 1.0 |
| Minimum Mule Version | 3.5 |
Zuora is the leader in online recurring billing and payment solutions for SaaS and subscription businesses.
This connector provides full access to the Z-Commerce platform API.| Configuration | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Configure an instance of this module
| |||||||||||
| Message Processors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Amends subscriptions
| |||||||||||
Batch creation of ZObjects
| |||||||||||
Batch delete of ZObjects
| |||||||||||
Lazily retrieves ZObject that match a given query,
written in Zuora native query language
If you expect more than 2000 results to be returned, remember that you have
to enable queryMore for your zuora account (as documented:
http://knowledgecenter.zuora.com/D_Using_the_Zuora_API/C_API_Reference/E_API_Calls/queryMore())
| |||||||||||
Batch creation of invoices for accounts
| |||||||||||
Retrieve an exported file from Zuora, and return its content as a String
| |||||||||||
Retrieve an exported file from Zuora and return an InputStream to it
| |||||||||||
Answers user information
| |||||||||||
Batch creation of ZObjects associated to Subscriptions
| |||||||||||
Batch update of ZObjects
| |||||||||||
To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:zuora="http://www.mulesoft.org/schema/mule/zuora"
xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/zuora
http://www.mulesoft.org/schema/mule/zuora/current/mule-zuora.xsd">
<!-- here goes your flows and configuration elements -->
</mule>
This module is configured using the config element. This element must be placed outside of your flows and at the root of your Mule application. You can create as many configurations as you deem necessary as long as each carries its own name.
Each message processor, message source or transformer carries a config-ref attribute that allows the invoker to specify which configuration to use.
| Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Type | Name | Default Value | Description | Java Type | MIME Type | Encoding | Optional. Give a name to this configuration so it can be later referenced. | ||||
| Optional. The client to use. | |||||||||||
| https://apisandbox.zuora.com | Optional. Target URI to connect to | ||||||||||
This connector offers automatic connection management via the use of a connection pool. The pool will act a storage mechanism for all the connections that are in-use by the user of this connector.
Prior to execution of a processor, the connector will attempt to lookup an already established connection and if one doesn't exists it will create one. That lookup mechanism is done in the connection pool via the use of connection variables declared as keys.
The user of the connector can configure the pool by adding a connection-pooling-profile to the connector configuration like this:
<zuora:connection-pooling-profile maxActive="10" maxIdle="10"
exhaustedAction="WHEN_EXHAUSTED_GROW" maxWait="120" minEvictionMillis="60000" evictionCheckIntervalMillis="30000"/>
The following is a list of connection attributes, each connection attribute can be configured at the config element level or they can also be added to each processor. If they are used at the processor level they get the benefit of full expression resolution.
| Connection Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
| Optional. Specify which configuration to use. | |||||||||||
| Username to identify the user | String | */* | UTF-8 | ||||||||
| Password to authenticate the username | String | */* | UTF-8 | ||||||||
Reconnection Strategies specify how a connector behaves when its connection fails. You can control how Mule attempts to reconnect by specifying a number of criteria:
With a reconnection strategy, you can better control the behavior of a failed connection, by configuring it, for example, to re-attempt the connection only once every 15 minutes, and to give up after 30 attempts. You can also send an automatic notification to your IT administrator whenever this reconnection strategy goes into effect. You can even define a strategy that attempts to reconnect only during business hours. Such a setting can prove useful if your server is frequently shut down for nightly maintenance.
A reconnection strategy that allows the user to configure how many times a reconnection should be attempted and how long to wait between attempts.
<zuora:config>
<reconnect count="5" frequency="1000"/>
</zuora:config>
| Reconnect Attributes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | Default Value | Description | |||||||||
| Optional. How often (in ms) to reconnect | |||||||||||
| Optional. How many reconnection attempts to make | |||||||||||
For more information about reconnection strategies in Mule, or even how to write your own custom reconnection strategy please check this section.
Amends subscriptions
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The list of amendments to perform | List<AmendRequest> |
| Return Type | Description |
|---|---|
| List<AmendResult> | a list of AmendResult, one for each amendment |
| Payload Class | Description |
|---|---|
| Exception | if amend fails |
Batch creation of ZObjects
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The type of zobject passed | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The zobjects to create | List<Map<String, Object>> |
| Return Type | Description |
|---|---|
| List<SaveResult> | a list of SaveResult, one for each ZObject |
| Payload Class | Description |
|---|---|
| Exception | If creation fails |
Batch delete of ZObjects
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The type of ZObjects to delete | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The list of ids to delete | List<String> |
| Return Type | Description |
|---|---|
| List<DeleteResult> | a list of DeleteResult, one for each id |
| Payload Class | Description |
|---|---|
| Exception | if deletion fails |
Lazily retrieves ZObject that match a given query, written in Zuora native query language
If you expect more than 2000 results to be returned, remember that you have to enable queryMore for your zuora account (as documented: http://knowledgecenter.zuora.com/D_Using_the_Zuora_API/C_API_Reference/E_API_Calls/queryMore())This operation can potentially return a large amount of records that might exceed memory capacity.
To prevent this from being a problem, the output of this operation is automatically paginated into an iterable collection of objects. Regardless of the page-size, the iterator will be pushing out registries one at a time and fetching next pages on demand. If you wish to take advantage of the pagination, you must process the output through elements that can handle collections, such as a ForEach scope or DataMapper. In this way, Mule will execute the entire set of registries one at a time, but processing only a batch at a time and thus keeping memory usage from going over limits.
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The query, using the SQL-Like Zuora Query Language | String | */* | UTF-8 | ||||||||
| 100 | Specify the number of objects that will be returned in each iteration | int | |||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| Iterator < Map<String, Object> > | A collection: each index contains a list of objects, each object with its own set of properties. It is possible to process it in parts thanks to its pagination. |
| Payload Class | Description |
|---|---|
| Exception | if find fails |
Batch creation of invoices for accounts
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The type of zobject passed | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The zobjects to generate, as a list of string-object maps . Zuora attribute names, unlike java beans, are CamelCase. | List<Map<String, Object>> |
| Return Type | Description |
|---|---|
| List<SaveResult> | a list of SaveResult, one for each ZObject |
| Payload Class | Description |
|---|---|
| Exception | if generation fails |
Retrieve an exported file from Zuora, and return its content as a String
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Id of the Zuora exported file to retrieve | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| String | the file's content as a String |
| Payload Class | Description |
|---|---|
| IOException | if can't access the exported file |
| ZuoraException | if the exported file doesn't exist |
Retrieve an exported file from Zuora and return an InputStream to it
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Id of the Zuora exported file to retrieve | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Return Type | Description |
|---|---|
| InputStream | an InputStream to read from the exported file |
| Payload Class | Description |
|---|---|
| IOException | if can't access the exported file |
| ZuoraException | if the exported file doesn't exist |
Answers user information
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Payload Class | Description |
|---|---|
| Exception | if request fails |
Batch creation of ZObjects associated to Subscriptions
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The list of subscriptions to perform | List<SubscribeRequest> |
| Return Type | Description |
|---|---|
| List<SubscribeResult> | a subscription results list, one for each subscription |
| Payload Class | Description |
|---|---|
| Exception | If subscription fails |
Batch update of ZObjects
INCLUDE_ERROR
| Name | Default Value | Description | Java Type | MIME Type | Encoding | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Optional. Specify which configuration to use. | |||||||||||
| The type of zobject passed | String | */* | UTF-8 | ||||||||
| Connection Parameters This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation. | |||||||||||
| Optional. Username to identify the user | String | */* | UTF-8 | ||||||||
| Optional. Password to authenticate the username | String | */* | UTF-8 | ||||||||
| Name | Default Value | Description | Java Type |
|---|---|---|---|
| The zobjects to update, as a list of string-object maps . Zuora attribute names, unlike java beans, are CamelCase. | List<Map<String, Object>> |
| Return Type | Description |
|---|---|
| List<SaveResult> | a list of SaveResult, one for each ZObject |
| Payload Class | Description |
|---|---|
| Exception | If update fails |