You are on page 1of 11

ReST

User Guide V3.0

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

Contents
ReST ...................................................................................................................................... 1 User Guide V3.0 ..................................................................................................................... 1 1. Introduction.................................................................................................................... 3 2. Operation Matrix ............................................................................................................ 4 3. Pre-requisites for Installing the ReST Connector Plug-in ................................................... 5 4. 5. 6. 7. 8. 9. 10. 11. Enabling the ReST Connector SDK ................................................................................... 5 Assumptions & Considerations ........................................................................................ 5 Creating a ReST Connection in Informatica Cloud ............................................................ 5 Data-Filter ...................................................................................................................... 8 Known future enhancements / Current issues.................................................................. 9 Recommendations .......................................................................................................... 9 Troubleshooting .......................................................................................................... 9 Appendix..................................................................................................................... 9

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

1. Introduction
Informatica Cloud Connector SDKs are off-cycle, off-release add-ins that provide connectivity to SaaS and on-premise applications not supported natively in Informatica Cloud. Connector SDKs can be enabled anytime for your cloud org Id, and are designed to address common use cases including getting data in to, and out of, the supported application. Connector SDKs does not require any separate software installation on the Informatica Cloud Secure Agent machine. The Connector uses an internal Java application to communicate with the Secure Agent, as shown in the architecture diagram below:

Once you have enabled the Connector for your org Id, you will create an connection in Informatica Cloud to access the ReST Connector.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

2. Operation Matrix
ReST Operation Supported DSS Src Objects ReST Entity* x DSS Tgt x Read x insert x update
NA

delete
NA

Lookup
NA

Remarks The Fetch support is for xml/json based Response. It also supports multiple source. Write (insert) is supported.

* ReST Entity is URL-Object for which the ReST connection is created. This Entity can have multi-fold data.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

3. Pre-requisites for Installing the ReST Connector Plug-in


You need a ReST Application Access (User credentials) for creating a ReST Connection in the Informatica Cloud. For the connection you need to provide the base url, request and authentication parameters. You also need to mention the Auth Type and Media Type.

4. Enabling the ReST Connector SDK


Note that ReST Connector SDK needs to be enabled by Support or Informatica Representative. It might take 15 minutes for the Connector SDK to get downloaded to your Secure Agent after being enabled.

5. Assumptions & Considerations


ReST Connector was developed and tested with few assumptions: i. ReST connector supports Media-Type a. application/xml b. application/json ii. Currently ReST connector supports Request-Type a. GET b. POST c. PUT d. DELETE iii. The supported Authentication-Type is a. NO_AUTH b. BASIC_AUTH c. DIGEST_AUTH d. OAUTH e. CUSTOM_AUTH

6. Creating a ReST Connection in Informatica Cloud


Before you can use the ReST Connector SDK in a data synchronization task, you must follow these steps to create a connection in Informatica Cloud: 1. Click on the Configuration tab. 2. Click on the Connections page. 3. Click the New button.

Connection Property Connection Name Type Secure Agent Base Url Is BaseUrl Dynamic

Description Name of the connection Type of connection. Select ReST Secure Agent - Informatica Cloud. Endpoint url of ReST (without the Query parameters) Select checkbox if the baseurl for each request is going to different/dynamic.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

Connection Property Url Request Parameters

Description All the Request (url query) parameters. Parameters separated by semi-colon (;). The Property and value is separated by equals (=). All the Request (form query) parameters. Parameters separated by semi-colon (;). The Property and value is separated by equals (=). All the Request (Header query) parameters. Parameters separated by semi-colon(;). The Property and value is separated by equals (=). HTTP Mime Types supported. HTTP Request type. Type of authentication like., Basic. Digest or OAuth. UserId for Basic and Form based authentication. Password for Basic and Form based authentication. Consumer key for OAuth authentication Consumer secret for OAuth authentication Token key for OAuth authentication Token Secret for OAuth authentication User can provide any additional Custom Auth parameter, this field is normally used for BlueGreen usecase. Full file path of the xml/xsd. If the user has the xml or xsd path of the Response then it can be provided here. Mention the folder path (in secure agent machine) where the response file needs to be populated. The Url Input Parameter File name (with Path) needs to be mentioned. It is Optional.

Form Request Parameters

Header Request Parameters Media Type Request Type Authentication Type Auth UserId Auth Password OAuth Consumer Key OAuth Consumer Secret OAuth Token OAuth Token Secret Additional Custom Auth Parameters Sample Response XML or JSON File Path Response Folder Path Url Input Parameters Config File Name Form Input Parameters Config File Name Header Input Parameters Config File Name

The Form Input Parameter File name (with Path) needs to be mentioned. It is Optional.

The Header Input Parameter File name (with Path) needs to be mentioned. It is Optional. Select YES, if you want to generate the Input URL Parameters Config File & Input FORM Parameters Config File with data. Select NO if you already have one and dont want to override the file during the run-time.

Create the config csv file

Note: The Url/Form/Header parameter key & value should not contain ; and parameter value should not contain =
Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

4.

Click OK to save the connection.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

7. Data-Filter
i. Parameters given in the connection screen for Field Url request Parameters , Form Parameters or Header Parameters are shown in filter drop-down of data-filter tab.

ii.

We have a static Filter Field Input Parameters Config File Path, which can be used for processing multiple ReST request.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

8. Known future enhancements / Current issues


i. Any CLOB, BLOB or base64Encode data field attached to the ReST table is not supported. The Big Data fields will be supported in the future release. ii. After creation of DSS tasks, clicking on Refresh Fields can give difference results ( change in no of fields). This is due to the fact, most of the time the xml (or) json response from same endpoint (with same filter condition) fetches different result for 2nd URL hit. iii. Lookup in the field mapping tab is not supported.

9. Recommendations
It is advised to give the Url request parameter, Form request parameters & Header request parameters that fetches maximum/most data from ReST endpoint Server, which would allow the connector to analyze/store more metadata. ii. If the same endpoint supports both xml and json based responses; its recommended to go for json based response, as it is proven more stable. iii. To manually control the metadata (Tables and Fields in the DSS task); use the field Sample Response Xml or Jason File. Any manual change in the file will change the list of Tables ( records) or the Fields on click of Refresh Fields button. i.

10. Troubleshooting
NA

11. Appendix
How to Incorporate Custom Authentication?

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

Business Use case: Many ReST endpoint/server use authentication other than OAuth, Basic & Digest ( or other out-of-box auth). ReST Connector Custom Function: Custom Auth functionality enables user to implement his own authentication logic. With minimum java knowledge, custom authentication can be implemented. Custom Authentication function, gives user a pre-defined java template to implement custom authentication logic. The following details needed to create one: i. The Java template will be shared with user on request. The user may contact the Sales team ( or Informatica Cloudlabs team) or Customer Service for the same. ii. The Java Template is a Class. The name of the Class is CustomAuth.java. The name of the Class should not be changed by the user. iii. The CustomAuth should be in package com.informatica.cloudlabs.adapter.rest.CustomAuth . iv. You need to create a separate jar out of CustomAuth.java. The Naming convention of the jar can be ReST-CustomAuth_<UserCompanyName/EndpointName>.jar v. Before deployment of the jar stop the Informatica Cloud Secure agent Service. vi. The created jar should be copied in the following Informatica secure agent path. a. C:\Program Files\Informatica Cloud Secure Agent\main\bin\rdtm\javalib\<Plugin-Id> b. C:\Program Files\Informatica Cloud Secure Agent\main\tomcat\plugins\<Plugin-Id> vii. Start the Informatica Cloud Secure agent services.

The following are the details technical details of the CustomAuth.java: There is 1 method, 1 Inner Class & 1 Enum defined in this template. a. Method the method signature is String GetCustomAuthParams(RequestInfo , Ilogger). b. RequestInfo is bean class , which captures all the connection UI parameters. c. Inner Class it is a bean class. d. Enum the enum defines the types of parameter involved in Custom Authentication ii. Irrespective of type of Authentication, the user might need to include new Form, Url or Header parameter for implementing custom authentication. iii. User needs to implement a method called GetCustomAuthParams(). The method signature is String response GetCustomAuthParams(RequestInfo,Ilogger) i. iv. There is inner class called CustomParams. The return value is always a vector of CustomParams Objects. Each Custom Parameter the user need to set should be defined as a instance of this class. You need to set all the bean method values to use the Custom Parameter. v. There is enum in the CustomAuth class called enumParamType, used for categorizing a given CustomParam to URL, Form or Header. vi. Below is the screenshot of the code,

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

Informatica Worldwide Headquarters, 100 Cardinal Way, Redwood City, California 94063, USA phone: toll-free in the US: 1.800.653.3871 www.InformaticaCloud.com 2011 Informatica Corporation. All rights reserved. Informatica and the Informatica logo are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.