Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Informatica® Cloud Data IntegrationSummer 2018 December
Zuora REST V2 Connector Guide
Informatica Cloud Data Integration Zuora REST V2 Connector GuideSummer 2018 DecemberDecember 2018
© Copyright Informatica LLC 2018, 2019
This software and documentation are provided only under a separate license agreement containing restrictions on use and disclosure. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without prior consent of Informatica LLC.
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation is subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License.
Informatica, the Informatica logo, Informatica Cloud, and PowerCenter are trademarks or registered trademarks of Informatica LLC in the United States and many jurisdictions throughout the world. A current list of Informatica trademarks is available on the web at https://www.informatica.com/trademarks.html. Other company and product names may be trade names or trademarks of their respective owners.
Portions of this software and/or documentation are subject to copyright held by third parties. Required third party notices are included with the product.
See patents at https://www.informatica.com/legal/patents.html.
DISCLAIMER: Informatica LLC provides this documentation "as is" without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of noninfringement, merchantability, or use for a particular purpose. Informatica LLC does not warrant that this software or documentation is error free. The information provided in this software or documentation may include technical inaccuracies or typographical errors. The information in this software and documentation is subject to change at any time without notice.
NOTICES
This Informatica product (the "Software") includes certain drivers (the "DataDirect Drivers") from DataDirect Technologies, an operating company of Progress Software Corporation ("DataDirect") which are subject to the following terms and conditions:
1. THE DATADIRECT DRIVERS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
2. IN NO EVENT WILL DATADIRECT OR ITS THIRD PARTY SUPPLIERS BE LIABLE TO THE END-USER CUSTOMER FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR OTHER DAMAGES ARISING OUT OF THE USE OF THE ODBC DRIVERS, WHETHER OR NOT INFORMED OF THE POSSIBILITIES OF DAMAGES IN ADVANCE. THESE LIMITATIONS APPLY TO ALL CAUSES OF ACTION, INCLUDING, WITHOUT LIMITATION, BREACH OF CONTRACT, BREACH OF WARRANTY, NEGLIGENCE, STRICT LIABILITY, MISREPRESENTATION AND OTHER TORTS.
The information in this documentation is subject to change without notice. If you find any problems in this documentation, report them to us at [email protected].
Informatica products are warranted according to the terms and conditions of the agreements under which they are provided. INFORMATICA PROVIDES THE INFORMATION IN THIS DOCUMENT "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WITHOUT ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT.
Publication Date: 2019-01-14
Table of Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Informatica Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Informatica Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Informatica Intelligent Cloud Services Web Site. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Informatica Intelligent Cloud Services Communities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Informatica Intelligent Cloud Services Marketplace. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Data Integration Connector Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Informatica Knowledge Base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Informatica Intelligent Cloud Services Trust Site. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Informatica Global Customer Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Chapter 1: Introduction to Zuora REST V2 Connector. . . . . . . . . . . . . . . . . . . . . . . . . . 7Zuora REST V2 Connector Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Zuora REST V2 Connector Task and Object Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Administration of Zuora REST V2 Connector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Creating an OAuth Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Chapter 2: Zuora REST V2 Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Zuora REST V2 Connections Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Zuora REST V2 connection properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Chapter 3: Zuora REST V2 Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Zuora REST V2 Operations Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Zuora REST V2 Objects and Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Zuora REST V2 Source Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Configuring a Request Using Request Message Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Field Mapping in a Source Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Zuora REST V2 Target Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
File Preparation for Target Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Field Mapping in a Target Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Rules and Guidelines for Zuora REST V2 Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Chapter 4: Mappings and Mapping Tasks with Zuora REST V2. . . . . . . . . . . . . . . . 29Zuora REST V2 Source Transformation in Mappings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Source Transformation Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Advanced Source Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Source Transformation Mapping Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Zuora REST V2 Target Transformation in Mappings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Target Transformation Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Advanced Target Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Table of Contents 3
Target Transformation Mapping Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Zuora REST V2 Midstream Transformation in Mappings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Advanced Midstream Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Appendix A: Zuora REST V2 Data Type Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Zuora REST V2 Data Type Reference Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Zuora REST V2 and Transformation Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4 Table of Contents
PrefaceThe Data Integration Zuora REST V2 Connector Guide contains information about how to set up and use Zuora Connector. The guide explains how you can use Zuora REST V2 Connector to read data from and write data to Zuora.
Informatica Resources
Informatica DocumentationTo get the latest documentation for your product, browse the Informatica Knowledge Base at https://kb.informatica.com/_layouts/ProductDocumentation/Page/ProductDocumentSearch.aspx.
If you have questions, comments, or ideas about this documentation, contact the Informatica Documentation team through email at [email protected].
Informatica Intelligent Cloud Services Web SiteYou can access the Informatica Intelligent Cloud Services web site at http://www.informatica.com/cloud. This site contains information about Data Integration editions and applications as well as information about other Informatica Cloud integration services.
Informatica Intelligent Cloud Services CommunitiesUse the Informatica Intelligent Cloud Services Community to discuss and resolve technical issues in Data Integration. You can also find technical tips, documentation updates, and answers to frequently asked questions.
Access the Informatica Intelligent Cloud Services Community at:
https://network.informatica.com/community/informatica-network/products/cloud-integration
To find resources on using Application Integration (the Informatica Cloud Real Time service), access the community at:
https://network.informatica.com/community/informatica-network/products/cloud-integration/cloud-application-integration/content
Developers can learn more and share tips at the Cloud Developer community:
https://network.informatica.com/community/informatica-network/products/cloud-integration/cloud-developers
5
Informatica Intelligent Cloud Services MarketplaceVisit the Informatica Marketplace to try and buy Data Integration Connectors, templates, and mapplets:
https://marketplace.informatica.com/community/collections/cloud_integration
Data Integration Connector DocumentationYou can access documentation for Data Integration Connectors at the Informatica Cloud Community: https://network.informatica.com/cloud/index.htm
Informatica Knowledge BaseUse the Informatica Knowledge Base to search Informatica Network for product resources such as documentation, how-to articles, best practices, and PAMs.
To access the Knowledge Base, visit https://kb.informatica.com. If you have questions, comments, or ideas about the Knowledge Base, contact the Informatica Knowledge Base team at [email protected].
Informatica Intelligent Cloud Services Trust SiteSubscribe to the Informatica trust site for upgrade, maintenance, and incident notifications.
Status.Informatica.com displays the production status of all the Informatica cloud products. All maintenance updates are posted to this status page, and during an outage, it will have the most current information. To ensure you are notified of updates and outages, you can subscribe to a single component, a single incident, or the site as a whole. Subscribing to the site as a whole is the best way to be certain you never miss an update. To subscribe, go to http://status.informatica.com and click SUBSCRIBE TO UPDATES. You can then choose to receive notifications sent as emails, SMS text messages, webhooks, RSS feeds, or any combination of the four.
Informatica Global Customer SupportYou can contact a Customer Support Center by telephone or online.
For online support, click Submit Support Request in Informatica Intelligent Cloud Services. You can also use Online Support to log a case. Online Support requires a login. You can request a login at https://network.informatica.com/welcome.
The telephone numbers for Informatica Global Customer Support are available from the Informatica web site at https://www.informatica.com/services-and-training/support-services/contact-us.html.
6 Preface
C h a p t e r 1
Introduction to Zuora REST V2 Connector
This chapter includes the following topics:
• Zuora REST V2 Connector Overview, 7
• Zuora REST V2 Connector Task and Object Types, 7
• Administration of Zuora REST V2 Connector, 8
Zuora REST V2 Connector OverviewYou can use Zuora REST V2 Connector to connect to Zuora from Data Integration. Use Zuora REST V2 Connector to read data from or write data to Zuora. You can use Zuora objects as sources and targets in Mapping tasks and mappings.
When you run a task or mapping, the Secure Agent uses the Zuora REST API to perform the specified operation and reads data from or writes data to Zuora.
Zuora REST V2 Connector Task and Object TypesThe following table lists the Zuora object types that you can include in Data Integration tasks:
Task Type Source Target
Synchronization No No
Mapping Yes Yes
If a mapping or mapping task fails, the error messages are logged in the session log file located at <Secure Agent installation directory>/apps/Data_Integration_Server/logs.
7
Administration of Zuora REST V2 ConnectorBefore you use Zuora REST V2 Connector, complete the following prerequisites:
• Install the Secure Agent on a 64-bit machine.
• Access Zuora portal to create user credentials.
• Ensure that you have the tenant level permission for Bearer Token Management.
• Ensure that you have an API User role with the API Write Access.
Creating an OAuth ClientIf you want to configure Zuora REST V2 connections to use OAuth 2.0 authentication to access Zuora, you must create an OAuth client in Zuora. The client ID and the client secret are generated for a new OAuth client, and the user needs to provide the client ID and the client secret in the REST request to create an access token for the API Gateway.
1. Login to Zuora website.
2. Click your username at the top right, and navigate to Administration > Manage Users.
3. Click the First Name, Last Name, or User Name of the user from the list of users on the All Users page.
4. In the OAuth Clients section, you can view or delete the existing OAuth Client for the user.
5. To create a new OAuth Client, enter the Client Name, Description, and select the Accessible Entities for those entities that you want to authenticate.
6. Click create.
7. Upon the successful creation, the Client ID and Client Secret appears on the screen. Save the Client ID and Client Secret.
Note: The client secret appears only once on the screen.
8. Click OK to close the window.
8 Chapter 1: Introduction to Zuora REST V2 Connector
C h a p t e r 2
Zuora REST V2 ConnectionsThis chapter includes the following topics:
• Zuora REST V2 Connections Overview, 9
• Zuora REST V2 connection properties, 9
Zuora REST V2 Connections OverviewCreate a Zuora REST V2 connection to connect to Zuora and read data from or write data to Zuora. You can use Zuora REST V2 connections in Mapping tasks and mappings.
Zuora REST V2 connection propertiesWhen you create a Zuora REST V2 connection, you must configure the connection properties.
The following table describes the Zuora REST V2 connection properties:
Property Description
Runtime Environment
Runtime environment that contains Secure Agent used to access Zuora.
Authentication Select ZuoraRESTV2.
Base Url Endpoint URL of REST API to which you want to make calls. Do not specify the query parameters with the Base URL.For example, https://rest.apisandbox.zuora.com/
Authentication Type
The type of user authentication to connect to the Zuora portal login. Select authentication method that the connector must use to login to the Zuora portal login.You can select the following authentication types:- Basic Auth- OAuth 2.0Default is OAuth 2.0.
9
Property Description
Username User name for the Zuora portal login. You must enter the username if you select Basic Auth as the Authentication Type.
Password Password for the Zuora portal login. You must enter the password if you select Basic Auth as the Authentication Type.
Client ID The client ID to complete the OAuth 2.0 authentication to connect to Zuora. You must enter the client ID if you select OAuth 2.0 as the Authentication Type.
Client Secret The client secret key to complete the OAuth 2.0 authentication to connect to Zuora. You must enter the client secret key if you select OAuth 2.0 as the Authentication Type.
Grant Type The type of authentication used to obtain the token. Use client_credentials.
Entity ID When you have multiple entities in a single tenant, specify the entity ID to connect to a particular entity.This property will work only when you select Basic Auth as the Authentication Type. You can also specify the entity ID in the Request Message Editor. If you specify the entity ID in connection properties and Request Message Editor, entity ID specified in the connection properties takes precedenceNote: If you select OAuth 2.0 as the Authentication Type and want to specify an entity ID other than the default entity ID, you must specify the entity ID in the Request Message Editor and leave the Entity ID field blank in the connection properties.
Zuora API Version Swagger file that you want to use for the Zuora REST V2 connection.You can select the Zuora Swagger API V1_2017_09_06 or Zuora Swagger API V1_2018_08_23 swagger file.
10 Chapter 2: Zuora REST V2 Connections
C h a p t e r 3
Zuora REST V2 OperationsThis chapter includes the following topics:
• Zuora REST V2 Operations Overview, 11
• Zuora REST V2 Objects and Operations, 11
• Zuora REST V2 Source Operations, 25
• Zuora REST V2 Target Operations, 27
• Rules and Guidelines for Zuora REST V2 Operations, 28
Zuora REST V2 Operations OverviewZuora exposes the web service API that the Secure Agent uses to perform integration tasks through the REST protocol.
When you create a mapping, you can associate a Zuora REST V2 connection and an operation. The Secure Agent connects to the web service to access, transform, or write data. The request and response are REST messages. The REST request and response messages contain hierarchical data, where the data follows a JSON schema. If you want to write data to a relational target, the Secure Agent converts the hierarchical data fetched from Zuora to relational data.
Zuora REST V2 Objects and OperationsThe following table lists the supported Zuora objects and operations:
Zuora REST V2 Object Relative Path to the Object Operation
Accounting Codes /accounting-codes POST_AccountingCode and GET_AllAccountingCodes
Accounting Codes /accounting-codes/{ac-id}/activate
PUT_ActivateAccountingCode
Accounting Codes /accounting-codes/{ac-id}/deactivate
PUT_DeactivateAccountingCode
11
Zuora REST V2 Object Relative Path to the Object Operation
Accounting Codes /accounting-codes/{ac-id} DELETE_AccountingCode, GET_AccountingCode, and PUT_AccountingCode
Accounting Periods /accounting-periods/{ap-id}/close
PUT_CloseAccountingPeriod
Accounting Periods /accounting-periods/{ap-id}/pending-close
PUT_PendingCloseAccountingPeriod
Accounting Periods /accounting-periods POST_AccountingPeriod and GET_AllAccountingPeriods
Accounting Periods /accounting-periods/{ap-id} GET_AccountingPeriod, PUT_UpdateAccountingPeriod, and DELETE_AccountingPeriod,
Accounting Periods /accounting-periods/{ap-id}/reopen
PUT_ReopenAccountingPeriod
Accounting Periods /accounting-periods/{ap-id}/run-trial-balance
PUT_RunTrialBalance
Accounts /accounts POST_Account
Accounts /accounts/{account-key} GET_Account and PUT_Account
Accounts /accounts/{account-key}/summary
GET_AccountSummary
Accounts /accounts/{id}/billing-documents/generate
POST_GenerateBillingDocuments
Accounts /accounts/billing-documents/files/deletion-jobs
POST_JobToHardDeleteBillingDocuments
Accounts /accounts/billing-documents/files/deletion-jobs/{jobId}
GET_JobToHardDeleteBillingDocuments
Accounts /object/account Object_POSTAccount
Accounts /object/account/{id} Object_GETAccount, Object_PUTAccount, and Object_DELETEAccount
Actions /action/amend Action_POSTamend
Actions /action/create Action_POSTcreate
Actions /action/delete Action_POSTdelete
Actions /action/execute Action_POSTexecute
Actions /action/generate Action_POSTgenerate
12 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Actions /action/query Action_POSTquery
Actions /action/queryMore Action_POSTqueryMore
Actions /action/subscribe Action_POSTsubscribe
Actions /action/update Action_POSTupdate
Amendments /amendments/{amendment-key} GET_AmendmentsByKey
Amendments /amendments/subscriptions/{subscription-id}
GET_AmendmentsBySubscriptionID
Amendments /object/amendment Object_POSTAmendment
Amendments /object/amendment/{id} Object_GETAmendment, Object_PUTAmendment, and Object_DELETEAmendment
Attachments /attachments POST_Attachments
Attachments /attachments/{object-type}/{object-key}
GET_AttachmentsList
Attachments /attachments/{attachment-id} GET_Attachments, PUT_Attachments, and DELETE_Attachments
Bill Run /object/bill-run Object_POSTBillRun
Bill Run /object/bill-run/{id} Object_GETBillRun, Object_PUTBillRun, and Object_DELETEBillRun
Bill Run /bill-runs/{billRunId}/emails POST_EmailBillingDocumentsfromBillRun
Billing Documents /billing-documents GET_BillingDocuments
Billing Preview Run /billing-preview-runs POST_BillingPreviewRun
Billing Preview Run /billing-preview-runs/{billingPreviewRunId}
GET_BillingPreviewRun
Catalog /catalog/products GET_Catalog
Catalog /catalog/product/{product-id} GET_Product
Catalog /catalog/products/{product-id}/share
POST_Catalog
Charge Revenue Summaries /charge-revenue-summaries/{crs-number}
GET_CRSByCRSNumber
Zuora REST V2 Objects and Operations 13
Zuora REST V2 Object Relative Path to the Object Operation
Charge Revenue Summaries /charge-revenue-summaries/subscription-charges/{charge-key}
GET_CRSByChargeID
Communication Profiles /object/communication-profile/{id}
Object_GETCommunicationProfile
Connections /connections POST_Connections
Contacts /object/contact Object_POSTContact
Contacts /object/contact/{id} Object_GETContact, Object_PUTContact, and Object_DELETEContact
Credit Balance Adjustments /object/credit-balance-adjustment/{id}
Object_GETCreditBalanceAdjustment
Credit Memos /creditmemos/{creditMemoId} PUT_UpdateCreditMemo, GET_CreditMemo, and DELETE_CreditMemo
Credit Memos /creditmemos/{creditMemoId}/post
PUT_PostCreditMemo
Credit Memos /creditmemos/{creditMemoId}/unpost
PUT_UnpostCreditMemo
Credit Memos /creditmemos/{creditMemoId}/items/{cmitemid}
GET_CreditMemoItem
Credit Memos /creditmemos/{creditmemoId}/refunds
POST_RefundCreditMemo
Credit Memos /creditmemos/query POST_QueryCreditMemos
Credit Memos /creditmemos/{creditMemoId}/parts
GET_CreditMemoParts
Credit Memos /creditmemos/{creditMemoId}/apply
PUT_ApplyCreditMemo
Credit Memos /creditmemos/{creditMemoId}/items
GET_CreditMemoItems
Credit Memos /creditmemos/{creditMemoId}/parts/{partid}/itemparts
GET_CreditMemoItemParts
Credit Memos /creditmemos/{creditMemoId}/unapply
PUT_UnapplyCreditMemo
Credit Memos /creditmemos/invoice/{invoiceId}
POST_CreditMemoFromInvoice
14 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Credit Memos /creditmemos/{creditMemoId}/parts/{partid}/itemparts/{itempartid}
GET_CreditMemoItemPart
Credit Memos /creditmemos POST_CreditMemoFromPrpc and GET_CreditMemos
Credit Memos /creditmemos/{creditMemoId}/parts/{partid}
GET_CreditMemoPart
Credit Memos /creditmemos/{creditMemoId}/emails
POST_EmailCreditMemo
Credit Memos /creditmemos/{creditMemoNumber}/amountBreakdownByOrder
GET_BreakdownCreditMemoByOrder
Credit Memos /creditmemos/{creditMemoId}/cancel
PUT_CancelCreditMemo
Credit Memos /creditmemos/{creditMemoId}/pdfs
POST_CreditMemoPDF
Credit Memos /creditmemos/{creditMemoId}/taxationitems
POST_CM_TaxationItems
Custom Exchange Rates /custom-exchange-rates/{currency}
GET_CustomExchangeRates
Debit Memos /debitmemos/{debitMemoId}/items/{dmitemid}
GET_DebitMemoItem
Debit Memos /debitmemos/invoice/{invoiceId} POST_DebitMemoFromInvoice
Debit Memos /debitmemos POST_DebitMemoFromPrpc, GET_DebitMemos, and PUT_BatchUpdateDebitMemos
Debit Memos /debitmemos/{debitMemoId}/application-parts
GET_DebitMemoApplicationParts
Debit Memos /debitmemos/{debitMemoId}/items
GET_DebitMemoItems
Debit Memos /debitmemos/{debitMemoId}/cancel
PUT_CancelDebitMemo
Debit Memos /debitmemos/{debitMemoId} PUT_DebitMemo, GET_DebitMemo, and DELETE_DebitMemo
Debit Memos /debitmemos/{debitMemoId}/post
PUT_PostDebitMemo
Debit Memos /debitmemos/{debitMemoId}/unpost
PUT_UnpostDebitMemo
Zuora REST V2 Objects and Operations 15
Zuora REST V2 Object Relative Path to the Object Operation
Debit Memos /debitmemos/{debitMemoId}/emails
POST_EmailDebitMemo
Debit Memos /debitmemos/{debitMemoId}/pdfs
POST_DebitMemoPDF
Debit Memos /debitmemos/{debitMemoId}/taxationitems
POST_DM_TaxationItems
Describe /describe/{object} GET_Describe
Entities /entities POST_Entities and GET_Entities
Entities /entities/{id} PUT_Entities, GET_EntityById, and DELETE_Entities
Entities /entities/{id}/provision PUT_ProvisionEntity
Entity Connections /entity-connections GET_EntityConnections and POST_EntityConnections
Entity Connections /entity-connections/{connection-id}/accept
PUT_EntityConnectionsAccept
Entity Connections /entity-connections/{connection-id}/deny
PUT_EntityConnectionsDeny
Entity Connections /entity-connections/{connection-id}/disconnect
PUT_EntityConnectionsDisconnect
Event Triggers /events/event-triggers POST_EventTrigger and GET_EventTriggers
Event Triggers /events/event-triggers/{id} GET_EventTrigger, PUT_EventTrigger, and DELETE_EventTrigger
Exports /object/export Object_POSTExport
Exports /object/export/{id} Object_GETExport
Features /object/feature/{id} Object_GETFeature and Object_DELETEFeature
Get Files /files/{file-id} GET_Files
HMAC Signatures /hmac-signatures POST_HMACSignatures
Hosted Pages /hostedpages Get_HostedPages
Imports /object/import Object_POSTImport
Imports /object/import/{id} Object_GETImport
Invoice Adjustments /object/invoice-adjustment Object_POSTInvoiceAdjustment
16 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Invoice Adjustments /object/invoice-adjustment/{id} Object_GETInvoiceAdjustment, Object_PUTInvoiceAdjustment, and Object_DELETEInvoiceAdjustment
Invoice Item Adjustments /object/invoice-item-adjustment/{id}
Object_GETInvoiceItemAdjustment and Object_DELETEInvoiceItemAdjustment
Invoice Items /object/invoice-item/{id} Object_GETInvoiceItem
Invoice Payments /object/invoice-payment Object_POSTInvoicePayment
Invoice Payments /object/invoice-payment/{id} Object_GETInvoicePayment and Object_PUTInvoicePayment
Invoice Split Items /object/invoice-split-item/{id} Object_GETInvoiceSplitItem
Invoice Splits /object/invoice-split/{id} Object_GETInvoiceSplit
Invoices /invoices PUT_BatchUpdateInvoices
Invoices /invoices/{invoiceId} PUT_UpdateInvoice
Invoices /invoices/{invoiceId}/application-parts
GET_InvoiceApplicationParts
Invoices /invoices/{invoiceId}/creditmemos
POST_CreditMemoFromInvoice
Invoices /invoices/{invoiceId}/debitmemos
POST_DebitMemoFromInvoice
Invoices /invoices/{invoice-id}/files GET_InvoiceFiles
Invoices /invoices/{invoice-id}/items GET_InvoiceItems
Invoices /invoices/{invoiceId}/write-off PUT_WriteOffInvoice
Invoices /invoices/{invoiceId}/emails POST_EmailInvoice
Invoices /invoices/{invoiceId}/reverse PUT_ReverseInvoice
Invoices /object/invoice/{id} Object_GETInvoice, Object_PUTInvoice, and Object_DELETEInvoice
Journal Runs /journal-runs POST_JournalRun
Journal Runs /journal-runs/{jr-number} GET_JournalRun and DELETE_JournalRun
Journal Runs /journal-runs/{jr-number}/cancel PUT_JournalRun
Mass Updater /bulk POST_MassUpdater
Zuora REST V2 Objects and Operations 17
Zuora REST V2 Object Relative Path to the Object Operation
Mass Updater /bulk/{bulk-key} GET_MassUpdater
Mass Updater /bulk/{bulk-key}/stop PUT_MassUpdater
Notifications /notification-definitions POST_Create_Notification_Definition and GET_Query_Notification_Definitions
Notifications /notification-definitions/{id} PUT_Update_Notification_Definition, GET_Get_Notification_Definition, and DELETE_Delete_Notification_Definition
Notifications /notifications/email-templates POST_Create_Email_Template and GET_Query_Email_Templates
Notifications /notifications/email-templates/{id}
PUT_Update_Email_Template, GET_Get_Email_Template, and DELETE_Delete_Email_Template
Notifications /notification-history/callout GET_CalloutHistory
Notifications /notification-history/email GET_EmailHistory
OAuth /oauth/token CreateToken
Operations /operations/invoice-collect POST_TransactionInvoicePayment
Operations /operations/billing-preview POST_BillingPreview
Orders /orders POST_Order and GET_AllOrders
Orders /orders/preview POST_PreviewOrder
Orders /orders/{orderNumber} GET_Order and DELETE_Order
Orders /orders/{orderNumber}/billingInfo
GET_OrderBillingInfo
Orders /orders/{orderNumber}/evergreenMetrics/{subscriptionNumber}
GET_OrderMetricsforEvergreenSubscription
Orders /orders/invoiceOwner/{accountNumber}
GET_OrdersByInvoiceOwner
Orders /orders/subscriptionOwner/{accountNumber}
GET_OrdersBySubscriptionOwner
Orders /orders/subscription/{subscriptionNumber}
GET_OrdersBySubscriptionNumber
Orders /orders/term/{subscriptionNumber}
GET_SubscriptionTermInfo
18 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Orders /orders/{orderNumber}/ratedResults
GET_OrderRatedResult
Orders /invoices/{invoiceNumber}/amountBreakdownByOrder
GET_BreakdownInvoiceByOrder
Orders /orders/{orderNumber}/customFields
PUT_UpdateOrderCustomFields
Orders /subscriptions/{subscriptionNumber}/customFields
PUT_CustomFieldsByOrder
Orders orders/{orderNumber}/triggerDates
PUT_OrderTriggerDates
Payment Gateways /paymentgateways GET_Paymentgateways
Payment Method Snapshots /object/payment-method-snapshot/{id}
Object_GETPaymentMethodSnapshot and Object_DELETEPaymentMethodSnapshot
Payment Method Transaction Logs /object/payment-method-transaction-log/{id}
Object_GETPaymentMethodTransactionLog
Payment Methods /payment-methods POST_PaymentMethod
Payment Methods /payment-methods/credit-cards POST_PaymentMethods
Payment Methods /payment-methods/credit-cards/accounts/{account-key}
GET_PaymentMethods and GET_PaymentMethodsCreditCard
Payment Methods /payment-methods/credit-cards/{payment-method-id}
PUT_PaymentMethods and PUT_PaymentMethodsCreditCard
Payment Methods /payment-methods/{payment-method-id}
DELETE_PaymentMethods
Payment Methods /payment-methods/decryption POST_PaymentMethodsDecryption
Payment Methods /payment-methods/{payment-method-id}/verify
PUT_VerifyPaymentMethods
Payment Methods /payment-methods/{payment-method-id}/scrub
PUT_ScrubPaymentMethods
Payment Methods /payment-methods/{payment-method-id}/authorize
POST_CreateAuthorization
Payment Methods /payment-methods/{payment-method-id}/voidAuthorize
POST_AuthorizePaymentMethod
Payment Methods /object/payment-method Object_POSTPaymentMethod
Zuora REST V2 Objects and Operations 19
Zuora REST V2 Object Relative Path to the Object Operation
Payment Methods /object/payment-method/{id} Object_GETPaymentMethod, Object_PUTPaymentMethod, and Object_DELETEPaymentMethod
Payment Runs /payment-runs POST_PaymentRun and GET_PaymentRuns
Payment Runs /payment-runs/{paymentRunId} PUT_PaymentRun, GET_PaymentRun, and DELETE_PaymentRun
Payment Runs /payment-runs/{paymentRunId}/summary
GET_PaymentRunSummary
Payment Transaction Logs /object/payment-transaction-log/{id}
Object_GETPaymentTransactionLog
Payments /payments/{paymentId}/unapply PUT_UnapplyPayment and POST_UnapplyPayment
Payments /payments/{paymentId}/parts GET_PaymentParts
Payments /payments/{paymentId}/parts/{partid}/itemparts
GET_PaymentItemParts
Payments /payments/{paymentId}/apply PUT_ApplyPayment and POST_ApplyPayment
Payments /payments/{paymentId}/refunds POST_RefundPayment
Payments /payments POST_CreatePayment, GET_RetrieveAllPayments
Payments /payments/{paymentId}/parts/{partid}
GET_PaymentPart
Payments /payments/{paymentId}/parts/{partid}/itemparts/{itempartid}
GET_PaymentItemPart
Payments /payments/{paymentId}/transfer PUT_TransferPayment and POST_TransferPayment
Payments /payments/{paymentId}/cancel PUT_CancelPayment
Payments /payments/{paymentId} PUT_UpdatePayment, GET_Payment, and DELETE_Payment
Payments /object/payment Object_POSTPayment
Payments /object/payment/{id} Object_GETPayment, Object_PUTPayment, and Object_DELETEPayment
Product Features /object/product-feature/{id} Object_GETProductFeature and Object_DELETEProductFeature
20 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Product Rate Plan Charge Tiers /object/product-rate-plan-charge-tier/{id}
Object_GETProductRatePlanChargeTier
Product Rate Plan Charges /object/product-rate-plan-charge Object_POSTProductRatePlanCharge
Product Rate Plan Charges /object/product-rate-plan-charge/{id}
Object_GETProductRatePlanCharge, Object_PUTProductRatePlanCharge, and Object_DELETEProductRatePlanCharge
Product Rate Plans /rateplan/{product_id}/productRatePlan
GET_ProductRatePlans
Product Rate Plans /object/product-rate-plan Object_POSTProductRatePlan
Product Rate Plans /object/product-rate-plan/{id} Object_GETProductRatePlan, Object_PUTProductRatePlan, and Object_DELETEProductRatePlan
Products /object/product Object_POSTProduct
Products /object/product/{id} Object_GETProduct, Object_PUTProduct, and Object_DELETEProduct
Quotes Document /quotes/document POST_QuotesDocument
RSA Signatures /rsa-signatures POST_RSASignatures
RSA Signatures /rsa-signatures/decrypt POST_DecryptRSASignatures
Rate Plan Charge Tiers /object/rate-plan-charge-tier/{id} Object_GETRatePlanChargeTier
Rate Plan Charges /object/rate-plan-charge/{id} Object_GETRatePlanCharge
Rate Plans /object/rate-plan/{id} Object_GETRatePlan
Refund Invoice Payments /object/refund-invoice-payment/{id}
Object_GETRefundInvoicePayment
Refund Transaction Logs /object/refund-transaction-log/{id}
Object_GETRefundTransactionLog
Refunds /refunds/{refundId} PUT_UpdateRefund, GET_Refund and DELETE_Refund
Refunds /refunds/{refundId}/parts/{refundpartid}/itemparts
GET_RefundItemParts
Refunds /refunds GET_Refunds
Refunds /refunds/{refundId}/parts GET_RefundParts
Zuora REST V2 Objects and Operations 21
Zuora REST V2 Object Relative Path to the Object Operation
Refunds /refunds/{refundId}/parts/{refundpartid}
GET_RefundPart
Refunds /refunds/{refundId}/parts/{refundpartid}/itemparts/{itempartid}
GET_RefundItemPart
Refunds /refunds/{refundId}/cancel POST_CancelRefund
Refunds /object/refund Object_POSTRefund
Refunds /object/refund/{id} Object_GETRefund, Object_PUTRefund, and Object_DELETERefund
Revenue Events /revenue-events/{event-number} GET_RevenueEventDetails
Revenue Events /revenue-events/revenue-schedules/{rs-number}
GET_RevenueEventForRevenueSchedule
Revenue Items /revenue-items/charge-revenue-summaries/{crs-number}
GET_RevenueItemsByChargeRevenueSummaryNumber
Revenue Items /revenue-items/revenue-events/{event-number}
GET_RevenueItemsByChargeRevenueEventNumber and PUT_CustomFieldsonRevenueItemsByRevenueEvent
Revenue Items /revenue-items/revenue-schedules/{rs-number}
GET_RevenueItemsByRevenueSchedule and PUT_CustomFieldsonRevenueItemsByRevenueSchedule
Revenue Rules /revenue-recognition-rules/product-charges/{charge-key}
GET_RevenueRecRulebyProductRatePlanCharge
Revenue Rules /revenue-recognition-rules/subscription-charges/{charge-key}
GET_RevenueRecRules
Revenue Schedules /revenue-schedules/credit-memo-items/{cmi-id}
POST_RSforCreditMemoItem_ManualDistribution and GET_RSbyCreditMemoItem
Revenue Schedules /revenue-schedules/credit-memo-items/{cmi-id}/distribute-revenue-with-date-range
POST_RSforCreditMemoItem_DistributeByDateRange
Revenue Schedules /revenue-schedules/debit-memo-items/{dmi-id}
POST_RSforDebitMemoItem_ManualDistribution and GET_RSbyDebitMemoItem
Revenue Schedules /revenue-schedules/debit-memo-items/{dmi-id}/distribute-revenue-with-date-range
POST_RSforDebitMemoItem_DistributeByDateRange
22 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Revenue Schedules /revenue-schedules/invoice-items/{invoice-item-id}/distribute-revenue-with-date-range
POST_RSforInvoiceItem_DistributeByDateRange
Revenue Schedules /revenue-schedules/invoice-items/{invoice-item-id}
POST_RSforInvoiceItem_ManualDistribution and GET_RSbyInvoiceItem
Revenue Schedules /revenue-schedules/invoice-item-adjustments/{invoice-item-adj-key}/distribute-revenue-with-date-range
POST_RSforInvoiceItemAdjustment_DistributeByDateRange
Revenue Schedules /revenue-schedules/invoice-item-adjustments/{invoice-item-adj-key}
POST_RSforInvoiceItemAdjustment_ManualDistribution and GET_RSbyInvoiceItemAdjustment
Revenue Schedules /revenue-schedules/product-charges/{charge-key}/{account-key}
GET_RSbyProductChargeAndBillingAccount
Revenue Schedules /revenue-schedules/subscription-charges/{charge-key}
POST_RSforSubsCharge and GET_RSforSubscCharge
Revenue Schedules /revenue-schedules/{rs-number}/distribute-revenue-across-accounting-periods
PUT_RevenueAcrossAP
Revenue Schedules /revenue-schedules/{rs-number}/distribute-revenue-on-specific-date
PUT_RevenueSpecificDate
Revenue Schedules /revenue-schedules/{rs-number}/distribute-revenue-with-date-range
PUT_RevenueByRecognitionStartandEndDates
Revenue Schedules /revenue-schedules/{rs-number} GET_RS and DELETE_RS
Revenue Schedules /revenue-schedules/invoice-item-adjustments/{invoice-item-adj-id}/
GET_RSbyInvoiceItemAdjustment
Revenue Schedules /revenue-schedules/{rs-number}/basic-information
PUT_RSBasicInfo
Settings /settings/finance/revenue-automation-start-date
GET_RevenueAutomationStartDate
Subscription Product Features /object/subscription-product-feature/{id}
Object_GETSubscriptionProductFeature
Subscriptions /subscriptions/preview POST_PreviewSubscription
Subscriptions /subscriptions POST_Subscription
Zuora REST V2 Objects and Operations 23
Zuora REST V2 Object Relative Path to the Object Operation
Subscriptions /subscriptions/accounts/{account-key}
GET_SubscriptionsByAccount
Subscriptions /subscriptions/{subscription-key}
PUT_Subscription and GET_SubscriptionsByKey
Subscriptions /subscriptions/{subscription-key}/versions/{version}
GET_SubscriptionsByKeyAndVersion
Subscriptions /subscriptions/{subscription-key}/renew
PUT_RenewSubscription
Subscriptions /subscriptions/{subscription-key}/cancel
PUT_CancelSubscription
Subscriptions /subscriptions/{subscription-key}/resume
PUT_ResumeSubscription
Subscriptions /subscriptions/{subscription-key}/suspend
PUT_SuspendSubscription
Subscriptions /object/subscription/{id} Object_GETSubscription, Object_PUTSubscription, and Object_DELETESubscription
Summary Journal Entries /journal-entries POST_SummaryJournalEntry
Summary Journal Entries /journal-entries/journal-runs/{jr-number}
GET_AllSummaryJournalEntries
Summary Journal Entries /journal-entries/{je-number} GET_SummaryJournalEntry and DELETE_SummaryJournalEntry
Summary Journal Entries /journal-entries/{je-number}/cancel
PUT_SummaryJournalEntry
Summary Journal Entries /journal-entries/{je-number}/basic-information
PUT_BasicSummaryJournalEntry
Taxation Items /taxationitems/{id} PUT_TaxationItem, GET_TaxationItem, and DELETE_TaxationItem
Taxation Items /taxationitems/creditmemo/{memoId}
POST_CM_TaxationItems
Taxation Items /taxationitems/debitmemo/{memoId}
POST_DM_TaxationItems
Taxation Items /object/taxation-item Object_POSTTaxationItem
Taxation Items /object/taxation-item/{id} Object_GETTaxationItem, Object_PUTTaxationItem, and Object_DELETETaxationItem
24 Chapter 3: Zuora REST V2 Operations
Zuora REST V2 Object Relative Path to the Object Operation
Transactions /transactions/invoices/accounts/{account-key}
GET_TransactionInvoice
Transactions /transactions/payments/accounts/{account-key}
GET_TransactionPayment
Unit Of Measure /object/unit-of-measure Object_POSTUnitOfMeasure
Unit Of Measure /object/unit-of-measure/{id} Object_GETUnitOfMeasure, Object_PUTUnitOfMeasure, and Object_DELETEUnitOfMeasure
Usage /usage POST_Usage
Usage /usage/accounts/{account-key} GET_Usage
Usage /object/usage Object_POSTUsage
Usage /object/usage/{id} Object_GETUsage, Object_PUTUsage, and Object_DELETEUsage
Users /users/{username}/request-access
PUT_SendUserAccessRequests
Users /users/{username}/accept-access
PUT_AcceptUserAccess
Users /users/{username}/deny-access PUT_DenyUserAccess
Users /users/{username}/accessible-entities
GET_EntitiesUserAccessible
When you use the Get operation, you can read maximum of 65,000 characters in a single call. If an error occurs while reading the records, reduce the limit specified for the Get operation and try again. For information about the operations, see the Zuora API documentation.
Zuora REST V2 Source OperationsCreate a Source transformation in the Mapping Task wizard to read data from Zuora.
When you select a Zuora REST V2 connection for a Source transformation in a mapping to read data from Zuora, you can select an operation from the list of operations.
After you specify the connection, specify the operation on the Source tab of the Source transformation.
Select the operation you require, configure the request message in JSON from the sample template provided, and configure the advanced properties for the operation.
If you want to write to a relational target, define a relational structure for the source data by mapping the incoming fields that is in hierarchical format to the output fields in relational format. When you run the mapping, the Secure Agent retrieves data for the specified operation from Zuora.
Zuora REST V2 Source Operations 25
Configuring a Request Using Request Message EditorWhen you create a Source transformation, configure an JSON request message for the operation that you want to perform in Zuora.
Use the Request Message Editor to create a request message. The request message is in JSON format and contains request parameters exposed by Zuora REST API for a specific operation. You can use the default request message for the operation and then customize the request message to specify the data that you want to include.
To customize your request, copy the request message from the sample template to the Request Message Editor pane where you can edit the JSON message and add the attributes for the request. Remove unnecessary and empty tags from the request message to avoid operation failure. You can hide the optional elements to see the mandatory elements required for the request message.
For example, you want to perform an operation GET_AllAccountingCodes using Zuora REST V2 Connector to retrieve reports for all users in a single call.
The following JSON sample shows the filters used for the GET_AllAccountingCodes operation:
{ "entityId" : "", "entityName" : "", "pageSize" : 0}
The following image shows the validated request message in a GET_AllAccountingCodes operation in the Mapping Designer:
The request message format in Zuora REST V2 Connector follows the service request definition in Zuora. Ensure that you use well-formed JSON formatting in the request message. You can verify if the JSON request is valid to ensure that the JSON matches the structure expected by the operation.
26 Chapter 3: Zuora REST V2 Operations
Field Mapping in a Source TransformationThe response message format follows the service response definition in Zuora. You can map response fields from a hierarchical to a relational structure of output groups and fields.
After you configure an operation for a source and specify the request message, create the relational format from the hierarchical data to include groups and fields that you want in the output.
Select the elements in the response structure that you want to include as output fields. The Secure Agent converts the JSON response in the hierarchical structure to relational groups at run time.
The output groups along with the primary and foreign keys are generated. You can pause on the output field to view the XPath expression, which indicates which field the output field is mapped to in the response structure of the hierarchy tree.
The following image shows an example hierarchical response structure generated from the request JSON for the Get_AllAccountingCodes operation and the corresponding relational output fields for the response:
You can edit the data type, precision, and scale for the groups and fields after mapping the fields.
Zuora REST V2 Target OperationsCreate a Target transformation in the Mapping Task wizard to write data to Zuora. When you select a Zuora REST V2 connection for a Target transformation in a mapping, you can select an operation from the list of operations. When you want to write data that is in relational format to Zuora, the Secure Agent converts the relational data to a hierarchical format before writing to Zuora.
When you configure a Zuora target, you can select Operations on the Target tab to display the list of operations. The Secure Agent creates target fields based on the request message structure of the operation you select on the Target tab.
When you write data to Zuora, the Secure Agent includes all the incoming fields from the source, by default. You can exclude the incoming fields, if required. You can add multiple input sources to write data to Zuora target object and define the primary and foreign key relationships between the input sources before you run the mapping. Each input source appears as separate group in the Field Mapping tab in the target transformation. You can define key relationships on the Field Mapping tab.
Zuora REST V2 Target Operations 27
File Preparation for Target TransformationTo write data to Zuora, the source file must include the container with the processing options and the wrapper referential elements to perform the specified operation in Zuora.
For information about the required business process parameters and the wrapper elements, see the request elements for the specified operation in the Zuora web service directory. You need to prepare a file to include the wrapper elements along with the data that you want to write to Zuora. You can add the processing options in an Expression transformation later when you write the data to Zuora.
When you run the mapping, the Secure Agent writes data to a configured target .csv file. Later, use this file as a source from which you write data to Zuora.
Field Mapping in a Target TransformationYou can map fields that are in a relational structure to the hierarchical structure used by a Zuora target.
On the Field Mapping tab for the Target transformation, the fields in the Target Fields appear in hierarchical format. The target fields are determined by the request message structure of the operation you select for the Target transformation.
Each source object displays as a group in the Input Fields area. You can select fields in the Input Fields area to map the fields to the request. If the input fields include multiple input groups, map the groups to the corresponding nodes in the request. Be sure to map all of the fields that you require in the request.
The following image shows an example of mapped input fields from the source file with the Zuora target in an operation to insert data into Accounting Code Types object:
Rules and Guidelines for Zuora REST V2 OperationsConsider the following rules and guidelines for Zuora REST V2 operations:
• To read large number of records from Zuora and increase the Secure Agent memory, you must edit the JVM options for DTM and INFA_MEMORY for Tomcat JRE.Specify JVMOption1 as -Xmx2048m, JVMOption2 as -Xmx2048m, and INFA_MEMORY as '-Xms256m -Xmx2048m -XX:MaxPermSize=128m' in the System Configuration Details section of the Secure Agent, and then restart the Secure Agent.
• When you select an operation for a Zuora source, target, or midstream, the Select Operation dialog box displays the first 200 operations that is listed in the Zuora Swagger API V1_2017_09_06 file. If the required operation is not listed, you must search for the operation that you want to perform on the Zuora source, target, or midstream.
• When you select the Action_POSTQuery operation for a Zuora source, target, or midstream, the Field Mapping tab does not display the recordsArray field.
28 Chapter 3: Zuora REST V2 Operations
C h a p t e r 4
Mappings and Mapping Tasks with Zuora REST V2
This chapter includes the following topics:
• Zuora REST V2 Source Transformation in Mappings, 29
• Zuora REST V2 Target Transformation in Mappings, 33
• Zuora REST V2 Midstream Transformation in Mappings, 35
Zuora REST V2 Source Transformation in MappingsWhen you configure a Source transformation, select the Zuora REST V2 connection and choose an operation to represent a Zuora source. You can parameterize a Zuora REST V2 connection.
When you select a Zuora REST V2 connection for a source, you can select an operation from the list of operations. You can use the request message template to configure the request message in a JSON format. You can parameterize the input values in the request message. Configure the advanced properties to set the tracing level and the cache size for the web service response.
You can view the response structure in the field mapping. When you map the elements from the response structure to the output fields, the Secure Agent creates the output groups, along with the primary and foreign keys for the field names. When you deploy the mapping in a mapping task and run the task, the Secure Agent reads the data from Zuora.
Source Transformation PropertiesYou can use one or more source transformations in a mapping. Use a Joiner transformation to join data from two sources.
When you select a source, the Properties panel displays the following information:
• General. Configure the name and a description for the source.
• Source. Select the connection and the operation, and configure the request options and advanced source properties.
• Field Mapping. Map elements of the response structure with the output fields.
• Fields. Edit the metadata source field metadata that you want to use in the mapping.
29
Advanced Source PropertiesIn a mapping, you can configure a source to represent a Zuora source. For Zuora REST V2 connections used in Mapping Configuration tasks, you can configure advanced properties on the Source page of the Mapping Configuration Task wizard.
The following table describes the advanced properties that you can configure in a source:
Property Description
Tracing Level Amount of detail that appears in the log.Use the following tracing levels:- Terse- Normal- Verbose Initialization- VerboseDefault is normal.
Cache Size for Web Service Response (KB)
Memory available for the web service response. If the web service response contains many rows or columns, you might want to increase the cache size. Default is 100 KB.
Source Transformation Mapping ExampleYou are a payroll administrator and you want to extract accounting codes details for all employees from Zuora to a flat file using Zuora REST V2 connection.
To read data from Zuora and write to a flat file using Zuora REST V2 connection, perform the following tasks:
1. Create a Zuora REST V2 connection. Verify that you select the Swagger file that contains accounting codes object in the connection properties.The following image shows the configured Zuora REST V2 connection:
2. Create a flat file connection to write data to the flat file.
3. Create a Zuora REST V2 mapping.
4. Add a Source transformation. Specify a name and description in the general properties.
30 Chapter 4: Mappings and Mapping Tasks with Zuora REST V2
5. On the Source tab, perform the following steps:
a. In the Connection field, select the configured Zuora REST V2 connection to connect to Zuora REST V2.
b. In the Operation field, select Get_AllAccountingCodes as the operation.The following image shows the GetAccountingCodes operations:
c. In the Request Options section, configure the request message in the following JSON format, specify the attributes in the message, and validate the message:
{ "entityId" : "", "entityName" : "", "pageSize" : 0}
The request message specifies the criteria to include accounting codes for all employees. You can hide the optional elements to see the mandatory elements required for the request message. You must have the Web Services Admin (Professional) or Can Administer (Standard) user role to use the user parameter.
d. In the Advanced Properties section, set the tracing level to Normal, and use the default cache size of 1024.
6. On the Field Mapping tab, select the elements, such as gIAccountName, gIAccountNumber, id, name, and status in the response structure that you want to map to the output fields.The following image shows the response structure on the left pane in a hierarchical format and the output groups on the right pane in a relational format:
Zuora REST V2 Source Transformation in Mappings 31
The Secure Agent creates two output groups, root and GETAccountingCodeItemWithoutSuccess, which results in two relational output files. Primary and foreign keys are auto-generated.
7. Add two Target transformations. Specify name and description in the general properties.
8. Select a flat file connection for the target transformations.
9. Draw a link to connect the GETAccountingCodeItemWithoutSuccess output group to the ZuoraRestV2_Read2_1.csv flat file. Draw another link to connect the root output group to the ZuoraRestV2_Read2_2.csv flat file.The following image shows the Select Output Group dialog box where you select the output group to write to each target:
10. On the Field Mapping tab, select the automatic field map option.The following image shows the target field mapping when you select the automatic field map option for the ZuoraRestV2_Read2_1.csv flat file:
32 Chapter 4: Mappings and Mapping Tasks with Zuora REST V2
11. Save and run the mapping.The following image shows the Zuora REST V2 mapping:
Zuora REST V2 Target Transformation in MappingsWhen you select a Zuora REST V2 connection for a target, you can select an operation from the list of operations.
You can add multiple input groups into the Zuora REST V2 target and define the primary and foreign key relationships between the multiple input groups before the mapping.
Target Transformation PropertiesYou can configure target properties, such as target details and advanced properties, based on the connection type you select. Configure target transformation properties on the Target tab of the Properties panel.
When you select a target, the Properties panel displays the following areas and information:
• General. Defines the transformation name and a description.
• Incoming Fields. Includes the field rules that define the data written to the target. Allows a preview of target fields.
• Target. Defines the target connection, operation, and advanced options.
• Target Fields. Not applicable for Web Service targets.
• Field Mapping. Defines the field mappings from the upstream transformation to the target.
Advanced Target PropertiesIn a mapping, you can configure a target to represent a Zuora REST V2 target. For Zuora REST V2 target connections used in mapping tasks, you can configure advanced properties in the Targets page of the Mapping Task wizard.
Zuora REST V2 Target Transformation in Mappings 33
The following table describes the advanced properties that you can configure in a Target transformation:
Property Description
Cache Size for Web Service Request (KB)
Memory available for the web service request. If the web service request contains many rows or columns, you might want to increase the cache size. Default is 100 KB.
Transaction Commit Control
Control to commit or roll back transactions based on the set of rows that pass through the transformation. Use the transaction commit control if you have a large amount of data and you want to control how it is processed.
Target Transformation Mapping ExampleYou are an operation administrator and you want to create an Accounting Codes in Zuora using Zuora REST V2 connection.
To create an Accounting Codes object in Zuora from a flat file using Zuora REST V2 connection, perform the following tasks:
1. Create a flat file connection to read data from the flat file.
2. Create a Zuora REST V2 connection to write data to Zuora.The following image shows the configured Zuora REST V2 connection:
3. Create a Zuora REST V2 mapping.
4. Add a Source transformation to include the flat file object that contains the Accounting Codes information. Add the flat file connection.
5. Add a Target transformation to write the Accounting Codes data to Zuora. Perform the following tasks on the Target tab:
a. In the Connection field, select the Zuora REST V2 connection to connect to Zuora.
b. In the Operation field, select POST_AccountingCode as the operation.The following image shows the POST_AccountingCode in the list of write operations:
34 Chapter 4: Mappings and Mapping Tasks with Zuora REST V2
c. In the Advanced Properties section, set the cache size and the transaction commit interval.
6. On the Field Mapping tab, select the input elements to map to the target fields.The following image shows all the mapped fields between the input file and the Zuora REST V2 target:
7. When you save and run the mapping in a mapping task, the Secure Agent creates the accounting codes in Zuora.The following image shows the Zuora REST V2 mapping:
Zuora REST V2 Midstream Transformation in Mappings
Before you configure a midstream transformation, you must create a business service from the Configure tab. You must select a Zuora REST V2 connection and an operation when you create a business service.
When you configure the midstream transformation, select the business service and the operation on the Web Service tab.
Zuora REST V2 Midstream Transformation in Mappings 35
You can map the incoming fields from source file to elements in request structure on the Request Mapping tab.
You can view the response structure on the Response Mapping tab. When you map the elements from the response structure to the output fields, the Secure Agent creates the output groups, along with the primary and foreign keys for the field names.
Advanced Midstream PropertiesThe following table describes the advanced properties that you can configure for a midstream transformation:
Property Description
Cache Size for Web Service Request (KB)
Memory available for the web service request. If the request is more than 100 KB, you can increase the cache size. Default is 100 KB.
Cache Size for Web Service Response (KB)
Memory available for the web service response. If the web service response contains many rows or columns, you might want to increase the cache size. Default is 100 KB.
Allow Input Flush Not applicable.
Transaction Commit Control Not applicable.
36 Chapter 4: Mappings and Mapping Tasks with Zuora REST V2
A p p e n d i x A
Zuora REST V2 Data Type Reference
This appendix includes the following topics:
• Zuora REST V2 Data Type Reference Overview, 37
• Zuora REST V2 and Transformation Data Types, 37
Zuora REST V2 Data Type Reference OverviewData Integration uses the following data types in mappings and mapping tasks with Zuora:
Zuora native data types
Zuora data types appear in the parameters in the Zuora REST V2 operations and you cannot change these data types.
Transformation data types
Set of data types that appear in the remaining transformations. They are internal data types based on ANSI SQL-92 generic data types, which Data Integration uses to move data across platforms. Transformation data types appear in all remaining transformations in a mapping, or mapping task.
When Data Integration reads or writes Zuora data, it converts the native data types to the comparable transformation data types before transforming the data.
Zuora REST V2 and Transformation Data TypesThe following table lists the Zuora data types that Data Integration supports and the corresponding transformation data types:
Zuora Data Type Transformation Data Type Description
boolean string 1 to 65536 characters
double decimal Precision 31, scale 10
37
Zuora Data Type Transformation Data Type Description
float decimal Precision 31, scale 10
integer integer -2,147,483,648 to 2,147,483,647Precision 12, scale 0
string string 1 to 65536 characters. In Zuora, string data type handles date/time values.
38 Appendix A: Zuora REST V2 Data Type Reference
I n d e x
Bbusiness service 35
CCloud Application Integration community
URL 5Cloud Data Integration web site
URL 5Cloud Developer community
URL 5connections
Zuora REST V2 9
DData Integration Community
URL 5data types
Zuora 37
Ffield mapping
cardinality 27foreign key 27primary key 27Target transformation 28XPath expression 27
IInformatica Global Customer Support
contact information 6
Mmaintenance outages 6mapping example
Source transformation 30Target transformation 34
midstream transformation advanced properties 36request mapping 35
midstream transformation (continued)response mapping 35web service 35
Ssource
field mapping 27read operations 25request message 26
source transformation advanced properties 30mappings 29properties 29
status Informatica cloud services 6
system status 6
Ttarget
operations 27target transformation
advance properties 33mappings 33properties 33
trust site description 6
Uupgrades 6
ZZuora
data types 37Zuora REST V2
supported transformations 7connection properties 9connector tasks 7Operations Overview 11
Zuora REST V2 connections overview 9
Zuora REST V2 Connector overview 7
39