0% found this document useful (0 votes)
39 views

IC Fall2016 DeveloperGuide en

Informatica Cloud Developer guide

Uploaded by

sunny
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

IC Fall2016 DeveloperGuide en

Informatica Cloud Developer guide

Uploaded by

sunny
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 212

Informatica Cloud (Version Fall 2016)

Developer Guide
Informatica Cloud Developer Guide

Version Fall 2016


January 2017
Copyright Informatica LLC 1993, 2017

This software and documentation contain proprietary information of Informatica LLC and are provided under a license agreement containing restrictions on use and
disclosure and are also protected by copyright law. Reverse engineering of the software is prohibited. 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. This Software may be protected by U.S. and/or
international Patents and other Patents Pending.

Use, duplication, or disclosure of the Software by the U.S. Government is subject to the restrictions set forth in the applicable software license agreement and as
provided in DFARS 227.7202-1(a) and 227.7702-3(a) (1995), DFARS 252.227-7013(1)(ii) (OCT 1988), FAR 12.212(a) (1995), FAR 52.227-19, or FAR 52.227-14
(ALT III), as applicable.

The information in this product or documentation is subject to change without notice. If you find any problems in this product or documentation, please report them to us
in writing.
Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange,
PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica
On Demand, Informatica Identity Resolution, Informatica Application Information Lifecycle Management, Informatica Complex Event Processing, Ultra Messaging,
Informatica Master Data Management, and Live Data Map are trademarks or registered trademarks of Informatica LLC 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.

Portions of this software and/or documentation are subject to copyright held by third parties, including without limitation: Copyright DataDirect Technologies. All rights
reserved. Copyright Sun Microsystems. All rights reserved. Copyright RSA Security Inc. All Rights Reserved. Copyright Ordinal Technology Corp. All rights
reserved. Copyright Aandacht c.v. All rights reserved. Copyright Genivia, Inc. All rights reserved. Copyright Isomorphic Software. All rights reserved. Copyright Meta
Integration Technology, Inc. All rights reserved. Copyright Intalio. All rights reserved. Copyright Oracle. All rights reserved. Copyright Adobe Systems
Incorporated. All rights reserved. Copyright DataArt, Inc. All rights reserved. Copyright ComponentSource. All rights reserved. Copyright Microsoft Corporation. All
rights reserved. Copyright Rogue Wave Software, Inc. All rights reserved. Copyright Teradata Corporation. All rights reserved. Copyright Yahoo! Inc. All rights
reserved. Copyright Glyph & Cog, LLC. All rights reserved. Copyright Thinkmap, Inc. All rights reserved. Copyright Clearpace Software Limited. All rights
reserved. Copyright Information Builders, Inc. All rights reserved. Copyright OSS Nokalva, Inc. All rights reserved. Copyright Edifecs, Inc. All rights reserved.
Copyright Cleo Communications, Inc. All rights reserved. Copyright International Organization for Standardization 1986. All rights reserved. Copyright ej-
technologies GmbH. All rights reserved. Copyright Jaspersoft Corporation. All rights reserved. Copyright International Business Machines Corporation. All rights
reserved. Copyright yWorks GmbH. All rights reserved. Copyright Lucent Technologies. All rights reserved. Copyright (c) University of Toronto. All rights reserved.
Copyright Daniel Veillard. All rights reserved. Copyright Unicode, Inc. Copyright IBM Corp. All rights reserved. Copyright MicroQuill Software Publishing, Inc. All
rights reserved. Copyright PassMark Software Pty Ltd. All rights reserved. Copyright LogiXML, Inc. All rights reserved. Copyright 2003-2010 Lorenzi Davide, All
rights reserved. Copyright Red Hat, Inc. All rights reserved. Copyright The Board of Trustees of the Leland Stanford Junior University. All rights reserved. Copyright
EMC Corporation. All rights reserved. Copyright Flexera Software. All rights reserved. Copyright Jinfonet Software. All rights reserved. Copyright Apple Inc. All
rights reserved. Copyright Telerik Inc. All rights reserved. Copyright BEA Systems. All rights reserved. Copyright PDFlib GmbH. All rights reserved. Copyright
Orientation in Objects GmbH. All rights reserved. Copyright Tanuki Software, Ltd. All rights reserved. Copyright Ricebridge. All rights reserved. Copyright Sencha,
Inc. All rights reserved. Copyright Scalable Systems, Inc. All rights reserved. Copyright jQWidgets. All rights reserved. Copyright Tableau Software, Inc. All rights
reserved. Copyright MaxMind, Inc. All Rights Reserved. Copyright TMate Software s.r.o. All rights reserved. Copyright MapR Technologies Inc. All rights reserved.
Copyright Amazon Corporate LLC. All rights reserved. Copyright Highsoft. All rights reserved. Copyright Python Software Foundation. All rights reserved.
Copyright BeOpen.com. All rights reserved. Copyright CNRI. All rights reserved.

This product includes software developed by the Apache Software Foundation (http://www.apache.org/), and/or other software which is licensed under various versions
of the Apache License (the "License"). You may obtain a copy of these Licenses at http://www.apache.org/licenses/. Unless required by applicable law or agreed to in
writing, software distributed under these Licenses is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied. See the Licenses for the specific language governing permissions and limitations under the Licenses.

This product includes software which was developed by Mozilla (http://www.mozilla.org/), software copyright The JBoss Group, LLC, all rights reserved; software
copyright 1999-2006 by Bruno Lowagie and Paulo Soares and other software which is licensed under various versions of the GNU Lesser General Public License
Agreement, which may be found at http:// www.gnu.org/licenses/lgpl.html. The materials are provided free of charge by Informatica, "as-is", without warranty of any
kind, either express or implied, including but not limited to the implied warranties of merchantability and fitness for a particular purpose.

The product includes ACE(TM) and TAO(TM) software copyrighted by Douglas C. Schmidt and his research group at Washington University, University of California,
Irvine, and Vanderbilt University, Copyright () 1993-2006, all rights reserved.

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (copyright The OpenSSL Project. All Rights Reserved) and
redistribution of this software is subject to terms available at http://www.openssl.org and http://www.openssl.org/source/license.html.

This product includes Curl software which is Copyright 1996-2013, Daniel Stenberg, <[email protected]>. All Rights Reserved. Permissions and limitations regarding this
software are subject to terms available at http://curl.haxx.se/docs/copyright.html. Permission to use, copy, modify, and distribute this software for any purpose with or
without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

The product includes software copyright 2001-2005 () MetaStuff, Ltd. All Rights Reserved. Permissions and limitations regarding this software are subject to terms
available at http://www.dom4j.org/ license.html.

The product includes software copyright 2004-2007, The Dojo Foundation. All Rights Reserved. Permissions and limitations regarding this software are subject to
terms available at http://dojotoolkit.org/license.

This product includes ICU software which is copyright International Business Machines Corporation and others. All rights reserved. Permissions and limitations
regarding this software are subject to terms available at http://source.icu-project.org/repos/icu/icu/trunk/license.html.

This product includes software copyright 1996-2006 Per Bothner. All rights reserved. Your right to use such materials is set forth in the license which may be found at
http:// www.gnu.org/software/ kawa/Software-License.html.

This product includes OSSP UUID software which is Copyright 2002 Ralf S. Engelschall, Copyright 2002 The OSSP Project Copyright 2002 Cable & Wireless
Deutschland. Permissions and limitations regarding this software are subject to terms available at http://www.opensource.org/licenses/mit-license.php.

This product includes software developed by Boost (http://www.boost.org/) or under the Boost software license. Permissions and limitations regarding this software are
subject to terms available at http:/ /www.boost.org/LICENSE_1_0.txt.

This product includes software copyright 1997-2007 University of Cambridge. Permissions and limitations regarding this software are subject to terms available at
http:// www.pcre.org/license.txt.

This product includes software copyright 2007 The Eclipse Foundation. All Rights Reserved. Permissions and limitations regarding this software are subject to terms
available at http:// www.eclipse.org/org/documents/epl-v10.php and at http://www.eclipse.org/org/documents/edl-v10.php.
This product includes software licensed under the terms at http://www.tcl.tk/software/tcltk/license.html, http://www.bosrup.com/web/overlib/?License, http://
www.stlport.org/doc/ license.html, http://asm.ow2.org/license.html, http://www.cryptix.org/LICENSE.TXT, http://hsqldb.org/web/hsqlLicense.html, http://
httpunit.sourceforge.net/doc/ license.html, http://jung.sourceforge.net/license.txt , http://www.gzip.org/zlib/zlib_license.html, http://www.openldap.org/software/release/
license.html, http://www.libssh2.org, http://slf4j.org/license.html, http://www.sente.ch/software/OpenSourceLicense.html, http://fusesource.com/downloads/license-
agreements/fuse-message-broker-v-5-3- license-agreement; http://antlr.org/license.html; http://aopalliance.sourceforge.net/; http://www.bouncycastle.org/licence.html;
http://www.jgraph.com/jgraphdownload.html; http://www.jcraft.com/jsch/LICENSE.txt; http://jotm.objectweb.org/bsd_license.html; . http://www.w3.org/Consortium/Legal/
2002/copyright-software-20021231; http://www.slf4j.org/license.html; http://nanoxml.sourceforge.net/orig/copyright.html; http://www.json.org/license.html; http://
forge.ow2.org/projects/javaservice/, http://www.postgresql.org/about/licence.html, http://www.sqlite.org/copyright.html, http://www.tcl.tk/software/tcltk/license.html, http://
www.jaxen.org/faq.html, http://www.jdom.org/docs/faq.html, http://www.slf4j.org/license.html; http://www.iodbc.org/dataspace/iodbc/wiki/iODBC/License; http://
www.keplerproject.org/md5/license.html; http://www.toedter.com/en/jcalendar/license.html; http://www.edankert.com/bounce/index.html; http://www.net-snmp.org/about/
license.html; http://www.openmdx.org/#FAQ; http://www.php.net/license/3_01.txt; http://srp.stanford.edu/license.txt; http://www.schneier.com/blowfish.html; http://
www.jmock.org/license.html; http://xsom.java.net; http://benalman.com/about/license/; https://github.com/CreateJS/EaselJS/blob/master/src/easeljs/display/Bitmap.js;
http://www.h2database.com/html/license.html#summary; http://jsoncpp.sourceforge.net/LICENSE; http://jdbc.postgresql.org/license.html; http://
protobuf.googlecode.com/svn/trunk/src/google/protobuf/descriptor.proto; https://github.com/rantav/hector/blob/master/LICENSE; http://web.mit.edu/Kerberos/krb5-
current/doc/mitK5license.html; http://jibx.sourceforge.net/jibx-license.html; https://github.com/lyokato/libgeohash/blob/master/LICENSE; https://github.com/hjiang/jsonxx/
blob/master/LICENSE; https://code.google.com/p/lz4/; https://github.com/jedisct1/libsodium/blob/master/LICENSE; http://one-jar.sourceforge.net/index.php?
page=documents&file=license; https://github.com/EsotericSoftware/kryo/blob/master/license.txt; http://www.scala-lang.org/license.html; https://github.com/tinkerpop/
blueprints/blob/master/LICENSE.txt; http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html; https://aws.amazon.com/asl/; https://github.com/
twbs/bootstrap/blob/master/LICENSE; https://sourceforge.net/p/xmlunit/code/HEAD/tree/trunk/LICENSE.txt; https://github.com/documentcloud/underscore-contrib/blob/
master/LICENSE, and https://github.com/apache/hbase/blob/master/LICENSE.txt.
This product includes software licensed under the Academic Free License (http://www.opensource.org/licenses/afl-3.0.php), the Common Development and Distribution
License (http://www.opensource.org/licenses/cddl1.php) the Common Public License (http://www.opensource.org/licenses/cpl1.0.php), the Sun Binary Code License
Agreement Supplemental License Terms, the BSD License (http:// www.opensource.org/licenses/bsd-license.php), the new BSD License (http://opensource.org/
licenses/BSD-3-Clause), the MIT License (http://www.opensource.org/licenses/mit-license.php), the Artistic License (http://www.opensource.org/licenses/artistic-
license-1.0) and the Initial Developers Public License Version 1.0 (http://www.firebirdsql.org/en/initial-developer-s-public-license-version-1-0/).

This product includes software copyright 2003-2006 Joe WaInes, 2006-2007 XStream Committers. All rights reserved. Permissions and limitations regarding this
software are subject to terms available at http://xstream.codehaus.org/license.html. This product includes software developed by the Indiana University Extreme! Lab.
For further information please visit http://www.extreme.indiana.edu/.

This product includes software Copyright (c) 2013 Frank Balluffi and Markus Moeller. All rights reserved. Permissions and limitations regarding this software are subject
to terms of the MIT license.

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.

Publication Date: 2017-01-18


Table of Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Informatica Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Informatica Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Informatica Cloud Web Site. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Informatica Cloud Communities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Informatica Cloud Marketplace. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Informatica Cloud Connector Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Informatica Knowledge Base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Informatica Cloud Trust Site. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Informatica Global Customer Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Chapter 1: Informatica Cloud Connector Toolkit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9


Informatica Cloud Connector Toolkit Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Sample Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Development Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Best Practices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Rules and Guidelines for Development. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Informatica Cloud Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Informatica Cloud Connector Toolkit Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Tasks and Toolkit Interfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Additional Functionality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Related Source Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Midstream Writes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Target Creation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Validation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
IPlugin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
IExtWrtPlugin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
IRegistrationInfo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
IMetadata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
IExtWrtMetadata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
IExplicitMultiObjectMetadata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
ITypeSystem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
IConnection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
IDataOperation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
IRead. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
IMultiObjectRead. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
IWrite2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
IWrite. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
IDefineMetadata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
IValidateRead. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4 Table of Contents
Chapter 2: Informatica Cloud REST API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Informatica Cloud REST API Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
XML Schema Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Header and Body Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Update Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Date/Time Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Object IDs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Session IDs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
REST API Responses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Success Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Error Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Error Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
REST API Guidelines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Documentation Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Resource Quick Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
activityLog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
activityMonitor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
agent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
auditlog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
bundleObject. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
bundleObjectLicense. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
connection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
CSV Flat File Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
FTP and SFTP Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Microsoft Access Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Microsoft Dynamics CRM Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Microsoft SQL Server Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
MySQL Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
NetSuite Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
ODBC Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Oracle Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Oracle CRM On Demand Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Salesforce Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
SAP IDoc Reader Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
SAP IDoc Writer Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Web Service Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
connector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
customFunc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
dataPreview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
expressionValidation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

Table of Contents 5
fileRecord. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
fwConfig. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
job. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
licenseInfo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
logout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
logoutall. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
loginSaml. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
masterTemplate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
mttask. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Mask Rule Parameter Attributes for Masking Techniques. . . . . . . . . . . . . . . . . . . . . . . . 146
Mask Rule Parameter Attribute Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
org. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
permission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
runtimeEnvironment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
salesforceVersion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
schedule. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
serverTime. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
task. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
user. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
usergroup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
workflow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

Appendix A: REST API Codes and Supplemental Information. . . . . . . . . . . . . . . . . 197


REST API Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
REST API Codes Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
State Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
Country Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Time Zone Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Connector Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Connection User Interface Fields to REST API Attributes Mapping. . . . . . . . . . . . . . . . . . . . . 209

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

6 Table of Contents
Preface
Welcome to Informatica Cloud, Informaticas hosted applications. Informatica Cloud uses functionality from
PowerCenter and Informatica Data Quality to provide easy-to-use, web-based applications.

The Informatica Cloud Developer Guide explains how developers can use the Informatica Cloud Connector
Toolkit and the Informatica Cloud REST API.

Some of the features and functionality mentioned in this guide might not be available to your organization due
to licensing.

Informatica Resources

Informatica Documentation
To 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 Cloud Web Site


You can access the Informatica Cloud web site at http://www.informatica.com/cloud. This site contains
information about Informatica Cloud editions and applications.

Informatica Cloud Communities


Use the Informatica Cloud Community to discuss and resolve technical issues in Informatica Cloud. You can
also find technical tips, documentation updates, and answers to frequently asked questions.

Access the Informatica Cloud Community at:

https://network.informatica.com/community/informatica-network/products/cloud-integration

To find resources on using Cloud 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

7
Informatica Cloud Marketplace
Visit the Informatica Marketplace to try and buy Informatica Cloud Connectors, Informatica Cloud integration
templates, and Data Quality mapplets:

https://marketplace.informatica.com/community/collections/cloud_integration

Informatica Cloud Connector Documentation


You can access documentation for Informatica Cloud Connectors at the Informatica Cloud Community:
https://network.informatica.com/cloud/index.htm

You can also download individual connector guides: https://network.informatica.com/docs/DOC-15333.

Informatica Knowledge Base


Use 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 Cloud Trust Site


You can access the Informatica Cloud trust site at http://trust.informaticacloud.com. This site provides real
time information about Informatica Cloud system availability, current and historical data about system
performance, and details about Informatica Cloud security policies.

Informatica Global Customer Support


You can contact a Customer Support Center by telephone or online.

For online support, click Submit Support Request in the Informatica Cloud application. 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.

8 Preface
CHAPTER 1

Informatica Cloud Connector


Toolkit
This chapter includes the following topics:

Informatica Cloud Connector Toolkit Overview, 9


Development Process, 10
Informatica Cloud Architecture, 11
Informatica Cloud Connector Toolkit Architecture, 13
Additional Functionality, 14
IPlugin, 15
IRegistrationInfo, 16
IMetadata, 17
ITypeSystem, 18
IConnection, 19
IDataOperation, 19
IDefineMetadata, 22
IValidateRead, 22

Informatica Cloud Connector Toolkit Overview


The Informatica Cloud Connector Toolkit provides a set of application programming interface (API)
components that allows you to extend the capability of Informatica Cloud.

With the Informatica Cloud Connector Toolkit, you can develop Informatica Cloud Connectors to read from or
write to endpoints that are not yet natively supported in Informatica Cloud. A connector can include the
following functionality:

Read data from an endpoint. You can develop a connector to read data as a source or lookup.
Write data to an endpoint. You can develop a connector to write data to a target.
Write data to an endpoint in midstream. You can develop a connector to write data to a target in the
middle of a data flow and return requested data to the data flow for additional processing.

When you import an Informatica Cloud Connector to an organization, the endpoint accessed by the connector
displays as a connection type in the Informatica Cloud application. An Informatica Cloud user can then create

9
connections for the connection type and use the connections in data synchronization tasks. For the user, the
Informatica Cloud Connector displays and performs like a native Informatica Cloud connection type.

Before you use the Informatica Cloud Connector Toolkit to create an Informatica Cloud Connector, you must
have knowledge of Java, the endpoint that you want to use, and object-oriented programming.

Sample Project
The Informatica Cloud Connector Toolkit provides a sample project that builds a sample connector. You can
use the sample project as a guide to using the Informatica Cloud Connector Toolkit and as a template for
your Informatica Cloud Connector.

The sample connector connects to a sample application that can serve as a host application for testing. The
sample application includes records and sample data.

To use the sample project and application, import the sample project to Eclipse and deploy the sample
application to the Google App Engine.

Development Process
To create an Informatica Cloud Connector, use the following process:

1. Use the Informatica Cloud Connector Toolkit to create the Informatica Cloud Connector.
2. Perform unit testing.
Correct any known errors before continuing to the next step.
3. Contact Informatica to upload the connector for testing.
Informatica deploys the connector to a development organization in the development instance and
creates a user account for you. Once deployed, the connector is pushed to every Secure Agent in the
organization.
4. Test the connector.
After the connector is deployed in the test organization, you can test the connector by creating
connections and using them in data synchronization tasks.
The connector is pushed to Secure Agents as a package. You can unzip the files on a local Secure
Agent to test updates and changes.
5. Contact Informatica for certification and deployment.
Contact Informatica when development is complete. After the Informatica Cloud Team tests and certifies
the connector, the connector can be deployed to Informatica Cloud.

Best Practices
Consider the following best practices when developing Informatica Cloud Connectors:

Implement a Java unit testing framework to validate method implementation. This can help debug and fix
most issues in isolated mode. It is easier to fix issues before deploying the connector to the test
organization.
Assign a unique UUID for each connector. Use the same UUID in each version and update of the
connector. Informatica Cloud uses the UUID to identify the connector, and internal registration entries are
created and maintained based on the UUID.

10 Chapter 1: Informatica Cloud Connector Toolkit


To implement logging to help with troubleshooting, use the setLogger method in the iPlugin interface to
call the iLogger interface.
With logging enabled, runtime details are written to the session log for the job. In addition, Informatica
Cloud creates a connection log each time a user selects the connection for use in a task.
The connection log file is named <PluginShortName>_<connection_timestamp>.log. It is written to the
following directory:
<SecureAgent_InstallDirectory>/main/tomcat/log

Rules and Guidelines for Development


Consider the following rules and guidelines when developing Informatica Cloud Connectors:

Use JDK version 1.7 update 25 for development.


Use at least one custom connection attribute when configuring an Informatica Cloud Connector.
Connection attributes that are standard across connection types, such as user name or password, are
case-sensitive. Note the capitalization used for connection attributes in the Informatica Cloud Connector
Toolkit.
When you define the default values for source or target fields using the setDefaultValue method in the
RecordAttribute class, note the following details:
- The default value for a NUMBER datatype should be an integer.

- If a default value is not defined for a multivalued attribute, the datatype of the first value is used.
To get and set custom attributes for toolkit records, use the following methods:
- getRecordAttributes in the IRegistrationInfo interface

- getRecordAttributeValue in the IMetadata interface

- setRecordAttributes in the IDataOperation interface

Note: To find the method in the Informatica Cloud Connector Toolkit, search for "custom."
To deinitialize resources when implementing IRead or IWrite, add a method annotated with @Deinit. To
ensure that the deinit method is called reliably, do not use the @Deinit annotation in more than one
method. Use no parameters with this method and ensure that the return type is either void or
SessionStats.
To deinitialize resources when implementing IWrite2, use the deinit method defined in the interface.
Configure the SUPPORTS_BYTEBUFFER_OBJECT capability to return the size of data in a ByteBuffer
object. If you do not configure the capability, the Informatica Cloud Toolkit sizes the buffer to the
maximum precision of the field.

Informatica Cloud Architecture


The following figure illustrates the basic Informatica Cloud architecture.

Informatica Cloud Architecture 11


1. Informatica Cloud Secure Agent. A component of Informatica Cloud installed on a local machine that
runs all tasks and provides firewall access between external data sources and your organization.
The Secure Agent is installed on a local machine with a web browser and internet access. Secure Agent
machines require access to the Informatica Cloud repository in addition to the sources and targets that
you want to use.
Secure Agents are contained in Secure Agent groups. If an organization has the Agent Clustering
license, a Secure Agent group can include multiple Secure Agents which can improve scalability and
performance.
When a Secure Agent runs a task, it connects to the Informatica Cloud repository to access task details.
The Secure Agent connects directly and securely to sources and targets, transfers data between sources
and targets, and performs any additional task requirements.
An organization can use unlimited Secure Agents to run jobs. When selected for use in an organization,
Informatica Cloud Connectors are deployed to all Secure Agents in the organization.
You can use the Informatica Cloud Hosted Agent (Hosted Agent) instead of a Secure Agent. The Hosted
Agent is hosted on a Informatica Cloud Hosting Facility and is available for Data Synchronization and
Mapping Configuration tasks.
When you configure a task, you specify the runtime environment to use when the task runs. A runtime
environment can either be a Secure Agent group or a Hosted Agent. If a Secure Agent group is selected
as the runtime environment, when the task runs, it uses the first available Secure Agent in the Secure
Agent group.
2. Informatica Cloud repository. Securely stores organization and task metadata, and any additional
metadata created by users in the organization, at the Informatica Cloud hosting facility.

12 Chapter 1: Informatica Cloud Connector Toolkit


3. External and internal endpoints. The source and target systems that you want to access. You can
connect natively to the endpoints that Informatica Cloud supports. Or, you can use Informatica Cloud
Connectors to connect to endpoints that are not yet supported.

Informatica Cloud Connector Toolkit Architecture


The Informatica Cloud Connector Toolkit provides the framework to develop connectors for Informatica
Cloud. The Informatica Cloud Connector Toolkit uses the following high-level interfaces:

IPlugin. Top level interface.


- IExtWrtPlugin. Enables the use of IWrite2 to perform midstream and endstream writes.

- IRegistrationInfo. Defines connector metadata.

- IMetadata. Retrieves metadata from the endpoint.

- IExtWrtMetadata. Retrieves metadata from the endpoint for a midstream or endstream target.

- IExplicitMultiObjectMetadata. Enables the selection of related source objects.

- ITypeSystem. Retrieves datatypes from the endpoint and their mappings to Java datatypes.

- IConnection. Defines connection actions and properties.

- IDataOperation. Defines data operation information used by the IRead and IWrite interfaces.

- IRead. Defines how to read data from the endpoint for single source.

- IMultiObjectRead. Defines how to read data from the endpoint for related sources.

- IWrite2. Defines how to write data to the endpoint. Also allows midstream writes. Use for all new
development.
- IWrite. This interface is depreciated. Use IWrite2 for all new development.

- IDefineMetadata. Enables the creation of a target object in a target system.

- IValidateRead. Validates relationships and filters.

Tasks and Toolkit Interfaces


When you work in Informatica Cloud, the following interfaces and methods are called in the Informatica Cloud
Connector Toolkit:

Cloud Interaction Toolkit Interface

Create or edit connection: Test connection IConnection > connect

Select source: Browse the source object list IMetadata > getAllRecords

Select target: Browse the target object list IMetadata > getAllRecords

Data preview: Displays the first 50 fields of the selected source or target IMetadata > getDataPreview

Field mapping: Refresh fields IMetadata > getFields

Run task: Extracts data from a single source IRead

Informatica Cloud Connector Toolkit Architecture 13


Cloud Interaction Toolkit Interface

Run task: Extracts data from multiple sources IMultiObjectRead

Run task: Performs insert/update/delete on the target, optionally performs midstream writes. IWrite2

Additional Functionality
You can configure additional functionality in the Informatica Cloud Connector Toolkit.

Related Source Selection


You can configure an Informatica Cloud Connector to allow the selection of related sources when the source
system uses primary key-foreign key relationships.

To enable related source selection, perform the following steps:

1. Implement the IExplicitMultiObjectMetadata interface.


2. Specify the MULTI_OBJECT_READ_WITH_PREDEFINED_RELATIONSHIP capability or the
MULTI_OBJECT_READ_WITH_USER_DEFINED_JOIN capability.
3. Implement the IValidateRead interface and specify the VALIDATE_READ capability to validate
relationships and filters.
4. Implement the IMultiObjectRead interface instead of the IRead interface.

Midstream Writes
You can configure an Informatica Cloud Connector to allow midstream writes. A midstream write allows the
user to write data to a target in the middle of the data flow, and to retrieve information to return to the data
flow for further processing.

To allow midstream writes, perform the following steps:

1. Implement the IExtWrtPlugin interface to call the IWrite2 interface. Use IExtWrtPlugin to call the write
interface instead of the IPlugin getWriter method.
2. Implement the IExtWrtMetadata interface to define the output fields and error information for a
midstream target.
3. Implement the IWrite2 interface.
4. Specify the EXTENDED_WRITE capability.

Target Creation
You can configure an Informatica Cloud Connector to create targets. When you enable target creation for a
connector, the user can configure a task to create the target on the Targets page of the task wizard.

To enable target creation, perform the following steps:

1. Specify the SUPPORTS_CREATE_RECORD capability.


2. Implement the IDefineMetadata interface.

14 Chapter 1: Informatica Cloud Connector Toolkit


Validation
You can configure an Informatica Cloud Connector to validate reads. Use the IValidateRead interface to
validate relationships and filters.

IValidateRead can validate predefined and user-defined relationships.

IPlugin
The top-level interface, IPlugin, provides a starting point for connector development. IPlugin calls objects
created by high-level interfaces, such as IConnection and IMetadata, and defines connector-level details,
such as error logging.

The following table describes the methods that you can use with the IPlugin interface:

Method Description

getConnection Returns an object that implements the IConnection interface.


IConnection defines how to connect to the endpoint.

getMetadata Returns an object that implements the IMetadata interface.


IMetadata retrieves endpoint metadata.

getReader Returns an object that implements the IRead interface.


Uses the IConnection interface to identify the connection to use for the read.

getRegistrationInfo Returns an connector metadata as defined by the IRegistrationInterface.

getWriter Returns an object that implements the IWrite interface.


Uses the IConnection interface to identify the connection to use for the write.
Do not use when implementing IWrite2.

getVersion Returns the connector version as defined by the PluginVersion class.


The connector version uses the following format:
<major release>.<minor release>.<build number>.
For example: 1.3.11.

setContext Method Defines the operation context of the connector. The operation context can be set to READ, WRITE,
TRANSFORM, or MIDSTREAMWRITE.

setLogger Method Configures error logging by calling the iLogger interface. You can configure the logging levels and the
messages that you want to use.
You can create error, warning, or informational messages. Messages can include a prefix and code, as
well as message text.
With logging enabled, runtime details are written to the session log for the job. In addition, Informatica
Cloud creates a connection log each time a user selects the connection for use in a task.
The connection log file is named <PluginShortName>_<connection_timestamp>.log. It is
written to the following directory:
<SecureAgent_InstallDirectory>/main/tomcat/log

IPlugin 15
IExtWrtPlugin
This extended write plugin interface, IExtWrtPlugin, configures the connector to use the IWrite2 interface. The
IWrite2 interface allows midstream and endstream writes.

The following table describes the methods that you can use with the IExtWrtPlugin interface:

Method Description

getExtendedWriter Returns an object that implements the IWrite2 interface.


Uses the IConnection interface to identify the connection to use for the write.

IRegistrationInfo
The registration interface, IRegistrationInfo, allows you to specify static connector metadata. Connector
metadata is critical information used internally by the Informatica Cloud Connector Toolkit.

The following table describes the methods that you can use with the IRegistrationInfo interface:

Method Description

getConnectionAttributes Returns a list of all connection attributes as defined by the ConnectionAttribute class.

getFieldAttributes Returns static field attribute information about the endpoint as defined by the FieldAttribute
class.
Assumes field attributes are valid for all fields, not specific to a single field.

getName Returns the name of the connector endpoint.


The name can include chararacters and spaces.

getPluginDescription Returns the description for the connector.

getPluginShortName Returns the connector short name.


The short name should not include characters or spaces.

getPluginUUID Returns the unique identifier (UUID) of the connector.

getReadOperationAttributes Returns the design-time and runtime attributes of the read operation as defined by the
RecordAttribute class.

getRecordAttributes Returns static record attributes, including custom attributes, as defined by the RecordAttribute
class.
Assumes record attributes are valid for all records accessed by the connector, not specific to a
single record.

getTransformationAttributes Note: This method is not supported with this release.

getTransformationOperations Note: This method is not supported with this release.

16 Chapter 1: Informatica Cloud Connector Toolkit


Method Description

getTypeSystem Returns the endpoint system datatypes and the mapping to Java datatypes as defined by the
ITypeSystem class.

getWriteOperationAttributes Returns the design-time and runtime attributes of the write operation as defined by the
RecordAttribute class.

IMetadata
The metadata access interface, IMetadata, retrieves information about the endpoint that you want to use.
With IMetadata, you can implement metadata access from the endpoint using a native API, such as a WSAPI
or any Java API.

The following table describes the methods that you can use with the IMetadata interface:

Method Description

filterRecords Returns data based on search criteria passed as a regex pattern.

getAllRecords Returns the names of all records in the endpoint.

getDataPreview Returns a snapshot of data for the record.


The data preview is limited by the pageSize argument.

getFields Returns all fields in a record.


Returns refreshed fields or cached fields based on the refreshFields argument.

getReadOpDesigntimeAttribValues Returns the design-time attribute values for the read operation based on the attrNames
argument.

getRecordAttributeValue Returns the design-time attributes of a record, including custom attributes.

getWriteOpDesigntimeAttribValues Returns the design-time attribute values for the write operation based on the attrNames
argument.

serializeFilterCriteria Returns a string representation of the filter list.

IExtWrtMetadata
The extended write metadata interface, IExtWrtMetadata, returns the output fields and error messages.

To enable midstream writes, configure the setOutputFieldList and setErrorOutputFieldList. If the connector
allows only endstream writes, configure setErrorOutputFieldList.

IMetadata 17
The following table describes the methods that you can use with the IExtWrtMetadata interface:

Method Description

getErrorOutputFields Defines the error fields in the target that can return error responses.
Use for midstream and endstream targets.

getOutputFields Defines the output fields that are supported by the midstream target. Use for midstream targets only.

IExplicitMultiObjectMetadata
The multiple source object interface, IExplicitMultiObjectMetadata, enables the selection of related source
objects.

Use this interface to allow multiple source selection for a source system that uses primary key-foreign key
relationships.

When you implement IExplicitMultiObjectMetadata, specify one of the following capabilities:

MULTI_OBJECT_READ_WITH_PREDEFINED_RELATIONSHIP
MULTI_OBJECT_READ_WITH_USER_DEFINED_JOIN

The following table describes the methods that you can use with the IExplicitMultiObjectMetadata interface:

Method Description

getReadOpDesigntimeAttribValues Returns the read design time attribute values.

getRelationships Returns a list of relationships with other objects.

ITypeSystem
The datatype interface, ITypeSystem, returns datatypes from the endpoint and their mappings to Java
datatypes.

The following table describes the methods that you can use with the ITypeSystem interface:

Method Description

getNativeDataTypes Returns the datatypes used in the endpoint.


Datatypes should be modeled using the DataType class.

getDatatypeMapping Returns a mapping of endpoint datatypes to Java datatypes.


When modeling fields using the Field class, the Java datatype in the Field object must be one of the
Java datatypes listed for the native datatype in this mapping.

18 Chapter 1: Informatica Cloud Connector Toolkit


IConnection
The connection interface, IConnection, defines connection actions and properties.

The following table describes the methods that you can use with the IConnection interface:

Method Description

connect Connects to the endpoint system.

disconnect Disconnects from the endpoint system.

setConnectionAttributes Defines connection properties, such as user name, password, and application URL.

validate Note: This method is not supported with this release.

IDataOperation
The data operation interface, IDataOperation, defines data operation information used by the IRead and
IWrite interfaces.

The following table describes the methods that you can use with the IDataOperation interface:

Method Description

initializeAndValidate Intializes and validates runtime implementation.

setChildRecords Defines the list of child records for which the data operation is performed.

setMetadataVersion Defines the metadata version used at the time of the creation of the task.

setOperationAttributes Defines the runtime attributes for data operation, such as filters.

setPrimaryRecord Defines the primary record to be used in the read or write operation.

setRecordAttribute Defines record attributes, including custom attributes.

IRead
The read interface, IRead, is an extension of the IDataOperation interface. IRead allows you to read data
natively from the endpoint.

Implement IRead to read from a single source. To read from multiple sources, implement IMultiObjectRead.

When you configure the read method, list fields in the same order returned by the setFieldList method. The
Informatica Cloud application determines the field order based on the source field order and the field
mappings configured in the task.

To deinitialize resources, use the @Deinit annotation with one of the following signatures:
public void <method-name>()
public SessionStats <method-name>()

IConnection 19
The following table describes the methods that you can use with the IRead interface:

Method Description

read Reads data from the endpoint natively and sends it to the IOutputDataBuffer interface row by row.
List fields in the same order returned by the setFieldList method.
Convert data to the appropriate Java datatype for the field.

setAdvancedFilters Defines the advanced filters to be used in the read.

setFieldList Defines the fields to be used in the read.


List fields in the same order returned by the Informatica Cloud application.

setFilters Deflines the list of filters to be used in the read.


Required to ensure the interface functions as expected.

setRelatedRecords Defines the list of related records for which the data operation is performed.

IMultiObjectRead
The multiple object read interface, IMultiObjectRead, is an extension of the IRead interface. IMultiObjectRead
allows you to read data natively from the endpoint.

Implement IMultiObjectRead to read data from multiple objects based on relationships. To read from a single
source, implement IRead.

The following table describes the method that you can use with the IMultiObjectRead interface:

setGroupingInfo This method is not supported with this release.

setOrderingInfo This method is not supported with this release.

setRelationships Defines the relationships based on predefined or user-defined relationships.

IWrite2
The write interface, IWrite2, is an extension of the IDataOperation interface. IWrite2 allows you to write data
natively to an endpoint. It can perform both midstream and endstream writes. Use IWrite2 for all new
development.

Unlike IWrite, IWrite2 uses batches to process data and generates success and error files based on the
return status. When you implement the IWrite2 interface in addition to an existing IWrite interface, the
connector uses IWrite2.

When you configure the insert, update, upsert, and delete methods, list fields in the same order returned by
the setFieldList method. The Informatica Cloud application determines the field order based on the target
field order.

Use the getContainingRecord method to distinguish between input fields, output fields, and error fields.

Note the following requirements when using IWrite2:

Implement the IExtWrtPlugin interface to call the IWrite2 interface. Use IExtWrtPlugin to call the write
interface instead of the IPlugin getWriter method.

20 Chapter 1: Informatica Cloud Connector Toolkit


Specify the EXTENDED_WRITE capability.

The following table describes the methods that you can use with the IWrite2 interface:

Method Description

deinit Use this method to perform commits, rollbacks, flushes, and deinitializations.

delete Obtains data from the IInputDataBuffer interface and deletes it from the target.
List fields in the same order returned by the setFieldList method.

getCumulativeOperationStats Returns the session statistics for all target operations. Returns the current statistics at the time
of the call.

insert Obtains data from the IInputDataBuffer interface and inserts it to the target.
List fields in the same order returned by the setFieldList method.

setErrorGroupBuffer Sets the errorOutputBuffer.


Set error rows output data on this buffer for all error fields in-order.

setErrorOutputFieldList Sets the list of error output fields that the write needs to return data.
The containingRecord for an error output field will always be set to NULL as error output fields
are for the entire operation and not for a particular record.

setInputFieldList Sets the list of input fields that the write needs to write data to the target.

setOutputFieldList Sets the list of output fields for which the write needs to return data.
The containingRecord for an output field will always be set to null as output fields are for the
entire operation and not for a particular record.

setOutputGroupBuffer Sets the outputDataBuffer.


Set the success rows output data on this buffer for all output fields in order.

update Obtains data from the IInputDataBuffer interface and updates it in the target.
List fields in the same order returned by the setFieldList method.

upsert Obtains data from the IInputDataBuffer interface. Inserts new data to the target and updates
existing data in the target.
List fields in the same order returned by the setFieldList method.

IWrite
This interface is depreciated. Use IWrite2 for all new development.

The write interface, IWrite, is an extension of the IDataOperation interface. IWrite allows you to write data
natively to the endpoint.

When you configure the insert, update, upsert, and delete methods, list fields in the same order returned by
the setFieldList method. The Informatica Cloud application determines the field order based on the target
field order.

To deinitialize resources, use the @Deinit annotation with one of the following signatures:
public void <method-name>()
public SessionStats <method-name>()

IDataOperation 21
The following table describes the methods that you can use with the IWrite interface:

Method Description

delete Obtains data from the IInputDataBuffer interface and deletes it from the target.
List fields in the same order returned by the setFieldList method.

insert Obtains data from the IInputDataBuffer interface and inserts it to the target.
List fields in the same order returned by the setFieldList method.

setFieldList Defines the fields to be used in the write.

update Obtains data from the IInputDataBuffer interface and updates it in the target.
List fields in the same order returned by the setFieldList method.

upsert Obtains data from the IInputDataBuffer interface. Inserts new data to the target and updates existing data in the
target.
List fields in the same order returned by the setFieldList method.

IDefineMetadata
The IDefineMetadata interface enables the creation a target object in the target system. The return value
should include information about the new target.

The following table describes the methods that you can use with the IDefineMetadata interface:

Method Description

createRecord Defines a target object in the target system. Includes the following target information:
- record. Name for the target.
- fields. For each field, includes field information such as display name, java datatype, precision, scale, and
whether the field is a key field, mandatory field, or filterable field.
Returns CreateRecordResult.

IValidateRead
The read validation interface, IValidateRead, validates the relationships and filters configured by the user for
multiple sources.

IValidateRead can validate predefined and user-defined relationships.

When you implement IValidateRead, specify the VALIDATE_READ capability.

22 Chapter 1: Informatica Cloud Connector Toolkit


The following table describes the methods that you can use with the IValidateRead interface:

Method Description

validateFilterCriteria Validates filters.

validateRelationships Validates relationships.

IValidateRead 23
CHAPTER 2

Informatica Cloud REST API


This chapter includes the following topics:

Informatica Cloud REST API Overview, 25


REST API Guidelines, 36
Resource Quick Reference, 37
activityLog, 46
activityMonitor, 55
agent, 58
auditlog, 61
bundleObject, 64
bundleObjectLicense, 66
connection, 68
connector, 87
customFunc, 88
dataPreview, 94
expressionValidation, 97
field, 98
fileRecord, 101
fwConfig, 104
job, 108
licenseInfo, 111
login, 113
logout, 117
logoutall, 117
loginSaml, 118
mapping, 121
masterTemplate, 125
mttask, 134
org, 152
permission, 158
register, 163
runtimeEnvironment, 171

24
salesforceVersion, 172
schedule, 173
serverTime, 181
task, 182
user, 183
usergroup, 188
workflow, 191

Informatica Cloud REST API Overview


Use the Informatica Cloud REST API to access information from your Informatica Cloud organization. You
can also perform tasks such as create, update, and delete connections, schedules, mapplets, and task flows.

Use version 2 of the REST API for all development. Version 1 is no longer updated with the latest resources
and enhancements.

To use the Informatica Cloud REST API, you need a valid Informatica Cloud login and an understanding of
REST API guidelines.

To configure a request using the REST API, use the appropriate resource and method, along with the
applicable attributes. Informatica Cloud returns the requested information, performs the requested task, or
returns an error object and related messages.

The Informatica Cloud REST API includes the following resources:

activityLog
Returns job details from the Informatica Cloud activity log.

activityMonitor
Returns job details from the Informatica Cloud activity monitor.

agent
Returns the details of a Secure Agent or the details of all Secure Agents in the organization. Also deletes
a Secure Agent.

auditlog
Returns audit log entries.

bundleObject
Returns the details of a bundle. Returns the details of all bundles installed on or published by the
organization. Pushes a published private bundle to sub-organizations.

bundleObjectLicense
Returns the license information for a bundle. Returns the license information for all bundles installed on
or available to the organization. Installs a bundle and uninstalls a bundle.

connection
Returns the details of a connection or the details of all connections in the organization. Returns available
source or target objects for a specified connection. Returns all connections of a specified type
associated with a Secure Agent. Creates, updates, tests, and deletes a connection.

Informatica Cloud REST API Overview 25


connector
Returns list of connectors available to an organization. Returns attribute values for a connector type.

customFunc
Returns the details of a mapplet or of all mapplets in the organization. Uploads a PowerCenter mapplet.
Also deletes a mapplet.

dataPreview
Returns up to ten rows of source or target data for the specified object.

expressionValidation
Returns a message that states the expression is valid or returns an error.

field
Returns the field details for a source or target object.

fileRecord
Uploads an integration template XML file or image file. Also deletes an integration template XML file or
image file.

fwConfig
Returns the details of fixed-width formats. Creates or updates a fixed-width format. Also deletes a fixed-
width format.

job
Starts or stops a task or task flow and optionally returns job status.

licenseInfo
Returns the license information for the organization that you are logged in to. Updates license
information for a sub-organization.

login
Logs in to an Informatica Cloud organization with Informatica Cloud or Salesforce credentials. Returns a
two hour REST API session ID that you can use for subsequent REST API requests.

loginSaml
Logs in to an Informatica Cloud organization using SAML single sign-on credentials. Returns a two hour
REST API session ID that you use for subsequent REST API requests. Also logs out of a SAML single
sign-on session.

logout
Logs out of the organization and ends the REST API session specified in the request.

logoutall
Logs out of the organization and ends all REST API sessions for the organization.

mapping
Returns the details of a mapping or the details of all mappings in the organization.

masterTemplate
Returns the details of an integration template or the details of all integration templates in the
organization. Creates or updates an integration template. Also deletes an integration template.

mttask
Returns the details of a mapping configuration task. Creates or updates a mapping configuration task.
Also deletes a mapping configuration task.

26 Chapter 2: Informatica Cloud REST API


org
Returns the details of an Informatica Cloud organization or related sub-organization. Updates an
organization or related sub-organization. Also deletes a related sub-organization.

permission
Returns user group permissions details for specific entities. Updates permission levels for specific user
groups and overwrites permissions set in the user interface.

register
Creates an Informatica Cloud organization or sub-organization using organization details. Also creates
an organization using Salesforce credentials. (Available for Informatica Cloud partners only.)

runtimeEnvironment
Returns the details of a runtime environment.

schedule
Returns the details of a schedule or the details of all schedules in the organization. Creates or updates a
schedule. Also deletes a schedule.

serverTime
Returns the local time of the Informatica Cloud server.

task
Returns a list of tasks of the specified type.

user
Returns the details of a user account or the details of all user accounts in the organization. Creates or
updates a user account. Also deletes a user account.

usergroup
Returns the details for a user group or all user groups in the organization.

workflow
Returns the details of a task flow or the details of all task flows in the organization. Creates or updates a
task flow. Also deletes a task flow.

XML Schema Definition


You can access the xml schema definition (XSD) for the Informatica Cloud REST API at the following URL:
https://app.informaticaondemand.com/saas/xsd/ics_api_v2.xsd

To use the XSD URL, log into Informatica Cloud, then enter the XSD URL.

Header and Body Configuration


Configure the request header and request body as required.

Request Header
When you construct a REST API request header, use the following format:
<METHOD> <serverUrl>/<URI> HTTP/<HTTP version>
Content-Type: application/<json | xml>
Accept: application/<json | xml>
icSessionId: <icSessionId>

Informatica Cloud REST API Overview 27


The following list describes the attributes of the above format:

METHOD
Required.

Method you want to use, such as GET, POST, or DELETE.

serverUrl
Required for most resources.

Base URL for all resources except login, loginSf, logoutall, register, and registerSf.

Use a placeholder for serverUrl, and replace the placeholder with the Informatica Cloud URL returned by
the login resource.

For the login, loginSf, logoutall, register, and registerSf resources, use the URL listed in the resource.

URI
Required for most resources.

Resource URI.

For the login, loginSf, logoutall, register, and registerSf resources, use the URL listed in the resource.

HTTP version
Required.

HTTP version that you are using.

Content-Type
Required for POST requests

Format of the request. Use one of the following options:

application/json. Reads request as JSON.


application/xml. Reads request as XML.

Default is json.

Accept
Optional.

Request format that you want. Use one of the following options:

application/json. Sends response as JSON.


application/xml. Sends response as XML.

Default is json.

icSessionId

Informatica Cloud session ID.

Required for all resources except login, loginSf, logoutall, register, and registerSf.

Use a placeholder for icSessionId, and replace the placeholder with the session ID returned by the login
resource.

Request Body
Use the request body to pass additional attributes for the resource. When you pass attributes in a request
body, you pass the attributes as part of an object.

28 Chapter 2: Informatica Cloud REST API


For example, to log in with the login resource, you pass the required username and password attributes in a
login object.

Some requests include sub-objects for attributes. Declare the sub-objects before listing the related attributes.

JSON Format
When you use the JSON format, define a request object with the @type attribute, as follows:
{
"@type": "<request object>",
"<attribute1>": "<value1>",
"<attribute2>": "<value2>",
}

When an attribute includes an object, state the attribute and use the object name as follows:
{
"@type": "<request object>",
"<attribute1>": "<value1>",
"<attribute2>": {
"@type": "<attribute object>",
"<attributeA>": "<valueA>",
"<attributeB>": "<valueB>",}
"@type": "<attribute object>",
"<attributeD>": "<valueD>",
"<attributeE>": "<valueE>",}
"<attribute3>": "<value3>",
}

XML Format
When you use the XML format, define a request object as an enclosing set of tags, as follows:
<request object>
<attribute1>value1</attribute1>
<attribute2>value2</attribute2>
</request object>

When an attribute includes an object, enclose the attribute object within the attribute tags as follows:
<request object>
<attribute1>value1</attribute1>
<attribute2>
<attribute object>
<attributeA>valueA</attributeA>
<attributeB>valueB</attributeB>
</attribute object>
<attribute object>
<attributeC>valueC</attributeC>
<attributeD>valueD</attributeD>
</attribute object>
</attribute2>
<attribute3>value3</attribute3>
</request object>

Return Lists
When the REST API returns a series of objects in XML, it encloses the list in the root tag, as follows:
<root>
<return object 1>
<attribute1>value1</attribute1>
<attribute2>value2</attribute2>
</return object 1>
<return object 2>
<attribute1>value1</attribute1>
<attribute2>value2</attribute2>
</return object 2>
</root>

Informatica Cloud REST API Overview 29


In JSON, no additional attributes are used. The REST API encloses the list in square brackets ( [ ] ), as
follows:
[
{
"@type": "<return object1>",
"<attribute1>": "<value1>",
"<attribute2>": "<value2>",
}{
"@type": "<return object2>",
"<attribute1>": "<value1>",
"<attribute2>": "<value2>",
}
]

JSON Example
To log in using JSON, you might use the following request header and body:
POST https://app.informaticaondemand.com/ma/api/v2/user/login HTTP/1.0
Content-Type: application/json
Accept: application/json

{
"@type": "login",
"username": "[email protected]",
"password": "mypassword"
}

The login might return the following information:


{
"@type" : "user",
"id" : "00000B03000000000001",
"orgId" : "00000B",
"name" : "[email protected]",
"description" : null,
"createTime" : "2012-06-14T15:00:00.000Z",
"updateTime" : "2012-06-14T15:00:00.000Z",
"createdBy" : "System",
"updatedBy" : "[email protected]",
"sfUsername" : null,
"firstName" : "Firstname",
"lastName" : "Lastname",
"title" : "Senior Software Engineer",
"password" : "********",
"phone" : "11111111111111111111",
"emails" : null,
"timezone" : "America/Los_Angeles",
"serverUrl" : "https://example.informatica.com/saas",
"icSessionId" : "IV4wOrJmd6YUtmKa8t"
}

You can then use the icSessionId and the serverUrl to construct a request to delete a schedule with the
schedule ID of 000001D0000000000001:
DELETE http://example.informatica.com/saas/api/v2/schedule/000001D0000000000001 HTTP/1.0
Accept: application/xml
icSessionId: IV4wOrJmd6YUtmKa8t

Note that Content-Type is not required because the DELETE method does not have additional attributes to
pass in the request body.

30 Chapter 2: Informatica Cloud REST API


XML Example
To log in using XML, you might use the following header and body:
POST https://app.informaticaondemand.com/ma/api/v2/user/login HTTP/1.0
Content-Type: application/xml
Accept: application/xml

<login>
<username>[email protected]</username>
<password>mypassword</password>
</login>

The login might return the following information:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
<id>00000B03000000000001</id>
<orgId>00000B</orgId>
<name>[email protected]</name>
<createTime>2012-06-14T15:00:00.000Z</createTime>
<updateTime>2012-06-14T15:00:00.000Z</updateTime>
<createdBy>System</createdBy>
<updatedBy>[email protected]</updatedBy>
<firstName>Firstname</firstName>
<lastName>Lastname</lastName>
<title>Senior Software Engineer</title>
<password>********</password>
<phone>11111111111111111111</phone>
<timezone>America/Los_Angeles</timezone>
<serverUrl>http://example.informatica.com/saas</serverUrl>
<icSessionId>IV4wOrJmd6YUtmKa8t</icSessionId>
</user>

You can then use the icSessionId and the serverUrl to construct a request to delete a schedule as follows.
The schedule ID is 000001D0000000000001.
DELETE http://example.informatica.com/saas/api/v2/schedule/000001D0000000000001 HTTP/1.0
Accept: application/xml
icSessionId: IV4wOrJmd6YUtmKa8t

Note that Content-Type is not required because the DELETE method does not have additional attributes to
pass in the request body.

Update Modes
You can submit a POST request using full update mode or partial update mode.

Use partial mode to submit a POST request that only includes the changed object fields, instead of including
all of the object fields. For example, if you want to update the connection in an mttask object, you can submit
a POST request using partial mode that might look like the following example:
POST api/v2/mttask/<taskId> HTTP/1.0
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>
Update-Mode: PARTIAL
{
"@type": "mtTask",
"parameters": [
{
"@type": "mtTaskParameter",
"name": "$NewSource$",
"type": "EXTENDED_SOURCE",
"sourceConnectionId": "<sourceConnectionId>"
}
]
}

Informatica Cloud REST API Overview 31


If you do not use partial mode, you need to include the entire object in the request. By default, the REST API
uses full mode.

Partial mode is available for the following resources:

connection
fwConfig
masterTemplate
mttask
schedule
workflow

When you submit a POST request in partial mode, format the request using JSON and include the following
line in the header:
Update-Mode=PARTIAL

Include the @type attribute for the updated object in the body.

Some fields are grouped in collections. To update a field that resides in a collection, include the key field for
the collection in the POST request. The following table lists the collections and corresponding key fields:

Resource Collection Key Field

fwConfig fwColumn name

masterTemplate mtParameter name


type

mttask mtTaskInOutParameter name

mttask sequenceDefinition txName

mttask mtTaskOverriddenField name

mttask mtTaskParameter name


type

workflow workflowTask taskId

Date/Time Values
With the REST API, Informatica Cloud uses the UTC date format to pass all date/time values.

Use the following UTC date format for all date/time values that you pass in requests. The same format is
used for all date/time values returned from Informatica Cloud.
<yyyy>-<MM>-<dd>T<HH>:<mm>:<ss>.<SSS>Z

The following list describes the attributes of the UTC date format:

yyyy
Year expressed in four digits.

MM
Month expressed in two digits.

32 Chapter 2: Informatica Cloud REST API


dd
Date of the month expressed in two digits.

T
Indicates the time portion of the format.

HH
Hour in the 24-hour format. For example, 0 for 12:00:00 a.m. and 23 for 11:00:00 p.m.

mm
Minutes expressed in two digits.

ss
Seconds expressed in two digits.

SSS
Microseconds expressed in three digits.

Z
UTC time indicator.

For example, the following date string represents 3:00 pm on December 14, 2012:
2012-12-14T15:00:00.000Z

Object IDs
Many requests require an object ID, such as a connection ID or task flow ID. To find the object ID that you
need, you can use the related GET request.

For example, to determine the task flow ID that you need to update a task flow, you can use a workflow GET
request to view the details of all task flows in the organization. The return list of task flow details includes the
task flow ID. Similarly, to determine the ID of a user, you can perform a user GET request.

Object IDs are not readily available through the Informatica Cloud application.

Session IDs
When you log in to an Informatica Cloud organization using the REST API, the login resource returns the
REST API session ID in the icSessionId attribute. You include this session ID in subsequent REST API
requests during the session. The session ID is valid for two hours.

You can submit a POST request to determine the status of a session ID. Use the following URI to submit the
request:
/api/v2/user/validSessionId

Include the following attributes in the request:

icToken. The session ID.


userName. Your Informatica Cloud user name.

For example, you might use the following request:


POST https://app.informaticaondemand.com/saas/api/v2/user/validSessionId HTTP/1.0
Content-Type: application/json
Accept: application/json

{
"@type": "validatedToken",

Informatica Cloud REST API Overview 33


"userName": "[email protected]",
"icToken": "<icSessionId>"
}

The response returns whether the session ID is valid or not. The response also includes the number of
minutes left before the session ID expires.

REST API Responses


The following table describes the responses to REST API requests:

REST API Request Successful Response Failure Response

GET For an information request, HTTP 403 error, including an Informatica Cloud
returns the requested object or an REST API error object.
array of objects when applicable.
For an action request, returns the
HTTP 200 success code. Can
also return the Informatica Cloud
REST API success object.

POST The object that you created or HTTP 403 error, including an Informatica Cloud
updated. REST API error object.

DELETE HTTP 200 success code. Can HTTP 403 error, including an Informatica Cloud
also return the Informatica Cloud REST API error object.
REST API success object.

For example, if you use a GET request to view a schedule, a successful response is the schedule object that
you requested. Or, if you use a POST request to update the time that the schedule runs, a successful
response is the schedule object that you updated, including the update. If you use a DELETE request to
delete a schedule that is no longer being used, a successful response is the 200 success code.

Success Object
When the REST API successfully performs an action, it returns a 200 success response. It might also return
a success object.

The success object has the following structure:


<xs:complexType name="success">
<xs:sequence>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>

Error Object
When the REST API encounters an error, it returns HTTP 403 error, including an Informatica REST API error
object.

The error object has the following structure:


<xs:complexType name="error">
<xs:sequence>
<xs:element name="code" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="statusCode" type="xs:int"/>

34 Chapter 2: Informatica Cloud REST API


</xs:sequence>
</xs:complexType>

Error Messages
The REST API provides the following error messages:

Error Code Response Key Response Text

13400 REST_UNKNOWN The REST API encountered an error: <info>.

13401 REST_PARAMETERS_ARE_WRONG Wrong parameters <info>.

13402 REST_ERROR_PARSING_JSON_OBJECT Error parsing JSON object.

13403 REST_ERROR_WRITING_JSON_OBJECT Error writing JSON object.

13404 REST_INVALID_OBJECT_ID Object identifier is invalid or missing, property is


(<info>).

13405 REST_NO_OBJECTS Connection has no objects.

13406 REST_INVALID_SUBORG_ID Sub org identifier is invalid, property is (<info>).

13407 REST_REGISTRATION_ERROR Error during user registration.

13408 REST_INSUFFICIENT_SUBORG_PRIVILEGE Insufficient privileges to create suborg. User must have


org hierarchy license and update org privilege to create
suborg.

13409 REST_MAX_SUBORG_LIMIT Maximum subOrgLimit reached.

13410 REST_PARENT_ORG_HAS_PARENT_ORG Parent org which already has a parent org could not
create a subOrg.

13411 REST_INSUFFICIENT_VIEW_USER_PRIVILEGE Insufficient privileges to view user.

13412 REST_INSUFFICIENT_DELETE_USER_PRIVILEGE Insufficient privileges to delete user.

13413 REST_DNB_EMPTY_ID_UNAME Empty value for id and uname.

13414 REST_INVALID_CONN_ID Invalid connection ID.

13415 REST_INVALID_CONN_ID_TYPE Enter a valid connectionId with a valid connection type


<type> for the application type <type>.

13416 REST_INVALID_SCHEDULE_ID Invalid schedule ID.

13417 REST_INVALID_USERNAME Invalid user name. It must be a valid email address.

13418 REST_INVALID_PASSWORD Invalid password.

13419 REST_INVALID_FIRSTNAME Invalid first name.

13420 REST_INVALID_LASTNAME Invalid last name.

Informatica Cloud REST API Overview 35


Error Code Response Key Response Text

13421 REST_INVALID_PHONE Invalid phone.

13422 REST_INVALID_EMAIL Invalid email.

13423 REST_INVALID_TIMEZONE Invalid time zone.

13424 REST_INVALID_LICENSE You cannot use the REST API. You must have a valid
REST API license to use the REST API. Contact
Informatica Global Customer Support.

13425 REST_INVALID_TASK_TYPE Invalid taskType.

13426 REST_INVALID_AGENT_ID Invalid Secure Agent ID.

13427 REST_INVALID_CODE_PAGE Invalid codepage. It must be UTF-8 or MS1252.

13428 REST_INVALID_TYPE Invalid type <type>.

13429 REST_INVALID_TASK_ID Invalid taskId <id>.

13430 REST_INVALID_TASK_NAME Invalid task name <name>.

13431 REST_INVALID_RUN_TASK Invalid privileges when running <task> task with id <id>.

13434 REST_INVALID_CERTIFICATE_FILE_TYPE Invalid certificateFileType.

13435 REST_INVALID_AUTHENTICATION_TYPE Invalid authenticationType.

13436 REST_INVALID_PRIVATE_KEY_FILE_TYPE Invalid privateKeyFileType.

13437 REST_INVALID_DATE_FORMAT Invalid date format. Valid values are <info>.

13438 REST_INVALID_COUNTRY_CODE Invalid country code.

13439 REST_INVALID_STATE_CODE Invalid state code.

13440 REST_INVALID_TITLE Invalid title.

13441 REST_NETSUITE_NOT_SUPPORTED NetSuite connection type not supported for create or


update.

13442 REST_TOOLKIT_NOT_SUPPORTED TOOLKIT connection type not supported for create or


update.

REST API Guidelines


Use the following guidelines when working with Informatica Cloud REST API:

Use the login resource to start a two-hour REST API session. Best practice is to log out before the
session ends. To continue work with the REST API, start a new session.

36 Chapter 2: Informatica Cloud REST API


Use the logout resource to log out of the Informatica Cloud session included in the request header. Use
the logoutall resource to log out of all REST API sessions started by the user in the request body.
Construct a request using the JSON or XML format.
Specify the format of the request and response in the header. Use the Content-Type attribute to specify
the request format and the Accept attribute to specify the response format.
If a request or response type is not configured, Informatica Cloud uses JSON by default.
Use a placeholder for the icSessionId in request headers for all resources except login, loginSf, logoutall,
register, and registerSf. Replace the placeholder with the icSessionId data returned when you log in to a
session.
The login, loginSf, logoutall, register, and registerSf resources do not require the icSessionId in the
request header.
For all resources except login, loginSf, logoutall, register, and registerSf, use a placeholder for the base
URL. Replace the placeholder with the serverUrl data returned by the login resource.
For POST requests, you must include all fields in the request object unless you submit the request in
JSON format using partial mode. By default, the REST API uses full mode.
All resources and attributes are case-sensitive.
Where indicated, enclose POST request attributes in the specified object. When no object is specified,
include attributes in the request body.
For requests in JSON, use the @type attribute to define an object. For requests in XML, use an enclosing
<object name> tag to define an object.
XML responses that include a list of objects return the objects enclosed in the <root> tag.

Documentation Conventions
Informatica Cloud REST API documentation uses the following conventions:

Methods are in capital letters, such as GET.


Request syntax uses the following conventions:
- Variables are enclosed in angle brackets ( < > ), such as <id> for a user ID.

- When listing a choice of attribute values, options are separated by a pipe ( | ).

- Optional attributes are in italics.

Resource Quick Reference


The following list contains the syntax and a brief description of the Informatica Cloud REST API resources:

activityLog GET
Returns information from the activity log.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/activity/activityLog/<id>
/api/v2/activity/activityLog?rowLimit=<row limit>
/api/v2/activity/activityLog?offset=<offset>
/api/v2/activity/activityLog?taskId=<taskId>
/api/v2/activity/activityLog?runId=<runId>

You can also use the activityLog to download error logs and session logs from the server.

Resource Quick Reference 37


Use the serverUrl from the login response for one of the following URIs:
/api/v2/activity/errorLog/<id>
/api/v2/activity/activityLog/<Top_Level_Log_Entry_Id>/sessionLog?itemId=<child-log-
entry-item-id>&childItemId=<child-log-entry-item-id>

activityMonitor GET
Returns information from the activity monitor.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/activity/activityMonitor?details=<true|false>

agent GET
Returns the details of a Secure Agent or of all Secure Agents in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/agent/<id>
/api/v2/agent/name/<name>

agent DELETE
Deletes a Secure Agent.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/agent/<id>

auditlog GET
Returns audit log entries.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/auditlog
/api/v2/auditlog?batchId=<batchId>&batchSize=<batchSize>

bundleObject GET
Returns the details of a bundle or the details of all published or installed bundles in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/bundleObject/<id>
/api/v2/bundleObject/name/<name>
/api/v2/bundleObject/?published=true
/api/v2/bundleObject/?published=true&installed=false
/api/v2/bundleObject/?installed=true
/api/v2/bundleObject/?published=false&installed=true

bundleObject POST
Pushes a published private bundle to sub-organizations.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/bundleObject/push/<bundleId>

bundleObjectLicense GET
Returns the details of all bundles available to or installed on the organization.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/bundleObjectLicense/<bundleObjectId>

bundleObjectLicense POST
Installs a bundle.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/bundleObjectLicense/

38 Chapter 2: Informatica Cloud REST API


Use a bundleObjectLicense object to define attributes. Include the following required attribute: bundleId.

bundleObjectLicense DELETE
Uninstalls a bundle.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/bundleObjectLicense?bundleObjectId=<bundleId>&updateOption=<updateOption>

connection GET
Returns information related to connections in the organization.

You can request the following information:

Connection details. You can request the details of a connection or of all connections in the
organization. Use the serverUrl from the login response as the base URL for one of the following
URIs:
/api/v2/connection/<id>
/api/v2/connection/name/<name>
Connection objects. You can request a list of objects that you can use as a source or target for the
specified connection. Use the serverUrl from the login response as the base URL for one of the
following URIs:
/api/v2/connection/source/<id>
/api/v2/connection/target/<id>
Connection details by runtime environment. You can request a list of all connections in the
organization that use a particular runtime environment. Use the serverUrl from the login response as
the base URL for the following URI:
/api/v2/connection/<runtimeEnvironmentId>
Connections by Secure Agent and connection type. You can request a list of connections by Secure
Agent ID and connection type. Use the serverUrl from the login response as the base URL for the
following URI:
/api/v2/connection/search?agentId=<agent ID>&uiType=<uiType>
Metadata details. To request metadata details for a connection, use the following URI:
/api/v2/connection/<source or target>/<id>/ metadata
Test connection. To test a connection, use the serverUrl from the login response as the base URL for
the following URI:
/api/v2/connection/test/<id>
connection POST
Creates or updates a connection.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/connection/<id>

Use a connection object to define attributes.

connection DELETE
Deletes a connection.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/connection/<id>

connector GET
Returns a list of connectors available to the organization or attribute values for a specified connector
type.

Resource Quick Reference 39


Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/connector
/api/v2/connector/metadata?connectorType=<connectorType>

customFunc GET
Returns the details of a mapplet or of all mapplets in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/customFunc/<id>
/api/v2/customFunc/name/<name>

customFunc POST
Uploads a PowerCenter mapplet.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/customFunc/<id>

Define attributes in the request body and encode the request body as multipart/form-data. Include the
following required attributes: file, name.

customFunc DELETE
Deletes a mapplet.
Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/customFunc/<id>

dataPreview GET
Use this resource to preview data during mapping design. Returns up to ten rows of source or target
data for a specified object.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/connection/<source or target>/<connId>/datapreview/<object name>
/api/v2/connection/<source or target>/name/<name>/datapreview/<object name>

expressionValidation POST
Validates expressions and returns a success or error response.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/expression/validate

field GET
Returns the field details for a source or target object.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/connection/<source or target>/<id>/field/<objectName>
/api/v2/connection/<source or target>/name/<name>/field/<object name>
/api/v2/connection/<source or target>/<id>/fields?objectName=<objectName>

field POST
Updates the flat file attributes for a source or target object.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/connection/<source or target>/<id>/field/<objectName>

The flat file attributes provided in the request override the default attributes specified in the connection
object.

fileRecord POST
Upload an integration template XML file or image file.

40 Chapter 2: Informatica Cloud REST API


Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/fileRecord

Define attributes in the request body and encode the request body as multipart/form-data. Include the
following required attributes: file, name.

fileRecord DELETE
Delete an integration template file or image file.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/fileRecord/<id>

fwConfig GET
Returns the details of a fixed-width format.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/fwConfig/<id>
/api/v2/fwConfig/name/<name>

fwConfig POST
Uploads a fixed-width format.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/fwConfig/<id>

fwConfig DELETE
Delete a fixed-width format.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/fwConfig/<id>

job POST
Starts or stops a task or task flow and optionally provides job status. You can perform the following
actions:

To start a task or task flow, use the serverUrl from the login response as the base URL for the
following URI:
/api/v2/job
To stop a task or task flow, use the serverUrl from the login response as the base URL for the
following URI:
/api/v2/job/stop
Use a job object to define attributes. Include the following required attributes: taskId or taskName, and
taskType.

licenseInfo GET
Returns the license details for the organization that you are logged in to or a specified sub-organization.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/licenseInfo/org/<id>

licenseInfo POST
Updates license information for a sub-organization.

Use the serverUrl from the login response as the base URL in the following URI:
/api/v2/licenseInfo/org/<id>

Resource Quick Reference 41


Use the orgLicenseInfo object to update license information.

login POST
Logs into an organization and returns a session ID that you can use for other resource calls.

You can log in using the following credentials:

Informatica Cloud. To log in to an organization with your Informatica Cloud user account, use the
following URL:
https://app.informaticaondemand.com/ma/api/v2/user/login
Omit icSessionId from the request header.
Use a login object for attributes. Include the following required attributes: username, password.
Salesforce. To log in to an organization with a Salesforce session ID and Salesforce server URL:
https://app.informaticaondemand.com/ma/api/v2/user/loginSf
Use a login object to define attributes. Include the following required attributes: sfSessionId,
sfServerUrl.

loginSAML POST
For SAML single sign-on users, logs into an organization and returns a session ID that you can use for
other resource calls.

To log in to an organization, use the following URL:


https://app.informaticaondemand.com/ma/api/v2/user/loginSAML

Omit icSessionId from the request header. Include the following required attributes in the login object:
orgId, samlToken.

logout POST
Logs out of an organization and ends the REST API session included in the request header.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/user/logout

logoutall POST
Logs out of an organization and ends all REST API sessions for the organization.

Use the following URL:


https://app.informaticaondemand.com/ma/api/v2/user/logoutall

Use a logout object to define attributes. Include the following required attributes: username, password.

Omit icSessionId from the request header.

mapping GET
Returns the details of a mapping or of all mappings in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/mapping/<id>
/api/v2/mapping/name/<name>
/api/v2/mapping/search?name=<name>

42 Chapter 2: Informatica Cloud REST API


masterTemplate GET
Returns information about integration templates. You can request the following information:

Integration templates. You can request the details of an integration template or of all integration
templates in the organization. Use the serverUrl from the login response as the base URL for one of
the following URIs:
/api/v2/masterTemplate/<id>
/api/v2/masterTemplate/name/<name>
Mapping Configuration tasks. You can request a list of Mapping Configuration tasks that use an
integration template. Use the serverUrl from the login response as the base URL for the following
URI:
/api/v2/masterTemplate/<id>/tasks
masterTemplate POST
Creates or updates an integration template.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/masterTemplate/<id>

Use a masterTemplate object to define attributes.

masterTemplate DELETE
Deletes an integration template.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/masterTemplate/<id>

mttask GET
Returns the details of a Mapping Configuration task.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/mttask/<id>
/api/v2/mttask/name/<name>

mttask POST
Creates or updates a Mapping Configuration task.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/mttask/<id>

Use an mttask object to define attributes.

mttask DELETE
Deletes a Mapping Configuration task.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/mttask/<id>

org GET
Returns the details of your Informatica Cloud organization or a related sub-organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/org/<id>
/api/v2/org/name/<name>

org POST
Updates the details of an Informatica Cloud organization or a related sub-organization.

Resource Quick Reference 43


Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/org/<id>

Use an org object to define attributes.

org DELETE
Deletes a related sub-organization.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/org/<id>

permission GET
Returns permission details for a specific entity.

Use the serverUrl from the login response as the base URL for the following URI:
api/v2/permission/<id>

permission POST
Updates permissions for a specified object. The following values for the updatetype request parameter
determine how to apply the permissions:

set. The permissions of the user groups provided in the request are updated and permissions for the
remaining user groups are set to default.
setdefault. The permissions of all user groups are set to default. The request body is optional.
update. The permissions of the user groups provided in the request are updated while the
permissions of user groups that are not mentioned in request remain unaffected.

Use the serverUrl from the login response as the base URL for the following URI:
api/v2/permission/<id>

register POST
Creates an Informatica Cloud organization. You can use the following methods to create an organization:

Creates an Informatica Cloud organization based on user and company information. Use the
following URL:
https://app.informaticaondemand.com/ma/api/v2/user/register
Omit the icSessionId from the request header.
Creates an Informatica Cloud sub-organization based on an Informatica Cloud user account. Use the
serverUrl from the login response as the base URL for the following URI:
/api/v2/user/register
Define the icSessionId in the request header.
Creates an Informatica Cloud organization based on Salesforce account details. Use the following
URL:
https://app.informaticaondemand.com/ma/api/v2/user/registerSf
Use a registration object to define attributes.

runtimeEnvironment GET
Returns the details of the runtime environments used by the organization.

Use the serverUrl from the login response as the base URL for the following URI:
api/v2/runtimeEnvironment

schedule GET
Returns the details of a schedule or of all schedules in the organization.

44 Chapter 2: Informatica Cloud REST API


Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/schedule/<id>
/api/v2/schedule/name/<name>

schedule POST
Creates or updates a schedule.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/schedule/<id>

Use a schedule object to define attributes.

schedule DELETE
Deletes a schedule.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/schedule/<id>

serverTime GET
Returns the local time for the Informatica Cloud server.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/server/serverTime

task GET
Returns a list of tasks of the specified type.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/task?type=<type>

user GET
Returns the details of an Informatica Cloud user account or of all user accounts in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/user/<id>
/api/v2/user/name/<name>

user POST
Creates or updates an Informatica Cloud user account.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/user/<id>

Use a user object to define attributes.

user DELETE
Deletes an Informatica user account.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/user/<id>

usergroup GET
Returns the details of a user group or of all user groups in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/usergroup/<id>
/api/v2/usergroup/name/<name>

Resource Quick Reference 45


workflow GET
Returns the details of a task flow or of all task flows in the organization.

Use the serverUrl from the login response as the base URL for one of the following URIs:
/api/v2/workflow/<id>
/api/v2/workflow/name/<name>
/api/v2/workflow/?simpleMode=true

workflow POST
Creates or updates a task flow.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/workflow/<id>

Use a workflow object to define attributes.

workflow DELETE
Deletes a task flow.

Use the serverUrl from the login response as the base URL for the following URI:
/api/v2/workflow/<id>

activityLog
Use this resource to request information from the activity log. You can also request error logs and session
logs from the server.

GET Request
You can request all of the activity log information or filter the activity log response. To request information
from the activity log, use the following URI:
/api/v2/activity/activityLog

To request information for a specific activity log ID, use the following URI:
/api/v2/activity/activityLog/<id>

To request information for a specific run ID, use the following URI:
/api/v2/activity/activityLog?runId=<runId>

To request information for a specific task, you can use the task ID, use the following URI:
/api/v2/activity/activityLog?taskId=<taskId>

To specify the number of rows to skip, use the following URI:


/api/v2/activity/activityLog?offset=<offset>

To specify a row limit, use the following URI:


/api/v2/activity/activityLog?rowLimit=<rowLimit>

You can use any combination of these options. For example, you can use the following URI in a request:
api/v2/activity/activityLog?
offset=<offset>&rowLimit=<rowLimit>&taskId=<taskId>&runId=<runId>

You can use the following optional activityLog GET URI attributes:

46 Chapter 2: Informatica Cloud REST API


id
Activity log entry ID.

Include this attribute if you want to receive information for a specific ID.

runId
Job ID associated with the log entry ID.

taskId
Task ID associated with the log entry ID. If taskId is not specified, all activityLog entries for all tasks are
returned.

offset
The number of rows to skip. For example, you might want to skip the first three rows.

rowLimit
The maximum number of rows to return. The maximum number you can specify is 1000.

If you omit this attribute, the activityLog returns all available rows, up to a maximum of 200 rows.

GET Response
Returns an activityLogEntry object for each row in the activity log or returns an activityLogEntry object for the
specified ID. Returns the error object if errors occur.

When you request information for each row in the activity log, the activityLogEntry object includes the
following attributes:

id
Activity log entry ID.

type
The type of task. Returns one of the following codes:

AVS. Contact Validation task.


DMASK. Data Masking task.
DQA. Data Assessment task.
DRS. Data Replication task.
DSS. Data Synchronization task.
MTT. Mapping Configuration task.
PCS. PowerCenter task.
WORKFLOW. Task flow.
DNB_TASK. D&B360 task.
DNB_WORKFLOW. D&B360 workflow.

objectId
Task ID.

objectName
Name of the task.

runId
ID for the task run.

activityLog 47
agentId
Agent that runs the task.

runtimeEnvironmentId
Runtime environment where the task runs.

startTime
Start time for the task or task flow. Uses Eastern Time Zone (ET).

endTime
End time for the task or task flow. Uses Eastern Time Zone (ET).

startTimeUtc
Start time for the task or task flow. Uses Coordinated Universal Time (UTC).

endTimeUtc
End time for the task or task flow. Uses Coordinated Universal Time (UTC).

state
Whether the task completed successfully. Returns one of the following codes:

1. The task completed successfully.


2. The task completed with errors.
3. The task failed to complete.

failedSourceRows
Number of rows that were not read from the source.

successSourceRows
Number of rows that are successfully read from the source.

failedTargetRows
Number of rows that were not written to the target.

successTargetRows
Number of rows that were successfully written to the target.

errorMsg
Error message associated with the job.

startedBy
User who started the task.

runContextType
Method through which the task was initiated. Includes the following values:

UI. Task was initiated through the Informatica Cloud user interface.
SCHEDULER. Task was initiated through the task scheduler.
REST-API. Task was initiated through the REST API.
OUTBOUND MESSAGE. Task was initiated through an outbound message.

scheduleName
Schedule name, if task was initiated by a schedule.

48 Chapter 2: Informatica Cloud REST API


entries
Indicates the start of information for a child object. A child object might be a task within a task flow, or an
object in a data replication task or D&B360 workflow.

When you request activity log information for a specific ID, the activityLogEntry object includes the following
attributes:

id
Activity log entry ID.

type
The type of task. Returns one of the following codes:

AVS. Contact Validation task.


DMASK. Data Masking task.
DQA. Data Assessment task.
DRS. Data Replication task.
DSS. Data Synchronization task.
MTT. Mapping Configuration task.
PCS. PowerCenter task.
WORKFLOW. Task flow.
DNB_TASK. D&B360 task.
DNB_WORKFLOW. D&B360 workflow.

objectId
Task ID.

objectName
Name of the task.

runId
ID for the task run.

agentId
Agent that runs the task.

runtimeEnvironmentId
Runtime environment where the task runs.

startTime
Start time for the task or task flow. Uses Eastern Time Zone (ET).

endTime
End time for the task or task flow. Uses Eastern Time Zone (ET).

startTimeUtc
Start time for the task or task flow. Uses Coordinated Universal Time (UTC).

endTimeUtc
End time for the task or task flow. Uses Coordinated Universal Time (UTC).

activityLog 49
state
Whether the task completed successfully. Returns one of the following codes:

1. The task completed successfully.


2. The task completed with errors.
3. The task failed to complete.

failedSourceRows
Number of rows that were not read from the source.

successSourceRows
Number of rows that are successfully read from the source.

failedTargetRows
Number of rows that were not written to the target.

successTargetRows
Number of rows that were successfully written to the target.

errorMsg
Error message associated with the job.

startedBy
User who started the task.

runContextType
Method through which the task was initiated. Includes the following values:

UI. Task was initiated through the Informatica Cloud user interface.
SCHEDULER. Task was initiated through the task scheduler.
REST-API. Task was initiated through the REST API.
OUTBOUND MESSAGE. Task was initiated through an outbound message.

scheduleName
Schedule name, if task was initiated by a schedule.

orgId
Organization ID.

totalSuccessRows
Total number of rows that were successfully read from the source and written to the target.

totalFailedRows
Total number of rows that were not read from the source and written to the target.

logFilename
The name of the generated log file.

errorFilename
The name of the generated error file.

errorFileDir
The location of the error file on the Secure Agent machine.

50 Chapter 2: Informatica Cloud REST API


connType
Connection type.

stopOnError
Determines the runtime environment action to take when an nonfatal error occurs. Includes the following
values:

True. The task flow stops when an error occurs.


False. The task flow continues to process when an error occurs.

items
Includes the following attributes in the activityLogEntryItem object:
type
The type of task. Returns one of the following codes:

AVS. Contact Validation task.


DMASK. Data Masking task.
DQA. Data Assessment task.
DRS. Data Replication task.
DSS. Data Synchronization task.
MTT. Mapping Configuration task.
PCS. PowerCenter task.
WORKFLOW. Task flow.
DNB_TASK. D&B360 task.
DNB_WORKFLOW. D&B360 workflow.

objectId
Task ID.

objectName
Name of the task.

runId
ID for the task run.

agentId
Agent that ran the task.

runtimeEnvironmentId
Runtime environment where the task ran.

startTime
Start time for the task or task flow. Uses Eastern Time Zone (ET).

endTime
End time for the task or task flow. Uses Eastern Time Zone (ET).

state
Whether the task completed successfully. Returns one of the following codes:

1. The task completed successfully.

activityLog 51
2. The task completed with errors.
3. The task failed to complete.

errorMsg
Error message associated with the job.

connType
Connection type.

children
Returns an activityLogEntryItem object for each table in the task flow.

transformationEntries
Includes the following attributes for each transformation in the transformationLogEntry object:

txName. Transformation name.


txType. Transformation type.
successRows. Number of successful rows for the transformation.
failedRows. Number of failed rows for the transformation.

sequenceValues
Returns information generated from a task that includes the sequence generator transformation.
Includes the following attributes in the sequenceValueLogEntry object:

txName. Transformation name.


nextValue. The last value generated by the task.

inOutParameterValues
The in-out parameter values used in the task. Includes the following attributes in the
inOutParameterValueLogEntry object:

name. Parameter name.


value. Parameter value.

startedBy
User who started the task.

runContextType
Method through which the task was initiated. Includes the following values:

UI. Task was initiated through the Informatica Cloud user interface.
SCHEDULER. Task was initiated through the task scheduler.
REST-API. Task was initiated through the REST API.
OUTBOUND MESSAGE. Task was initiated through an outbound message.

scheduleName
Schedule name, if task was initiated by a schedule.

52 Chapter 2: Informatica Cloud REST API


GET Example
To request 20 rows of information returned from the activity log in JSON format, you might use the following
request:
GET <serverUrl>/api/v2/activity/activityLog?rowLimit=20 HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

A successful request returns a list: an activityLogEntry object for each entry returned from the activity log.

The following text is a sample return in JSON:


[
{
"@type": "activityLogEntry",
"id": "000001C100000000000D",
"type": "DSS",
"objectName": "dss-f2f",
"runId": 0,
"startTime": "2012-07-30T13:30:00.000Z",
"endTime": "2012-07-30T13:30:30.000Z",
"state": 3,
"failedSourceRows": 0,
"successSourceRows": 0,
"failedTargetRows": 0,
"successTargetRows": 0,
"errorMsg": "Exception class org.apache.axis.AxisFault is caught with message=;
nested exception is: \n\tjava.net.ConnectException: Connection refused: connect.",
"entries":
},
{
"@type": "activityLogEntry",
"id": "000001C100000000000C",
"type": "DRS",
"objectName": "drstask1",
"runId": 1,
"runtimeEnvironmentId": "00000C25000000000002",
"startTime": "2012-07-30T13:30:30.000Z",
"endTime": "2012-07-30T13:32:30.000Z",
"state": 1,
"failedSourceRows": 0,
"successSourceRows": 39,
"failedTargetRows": 0,
"successTargetRows": 39,
"errorMsg": null,
"entries": [
{
"@type": "activityLogEntry",
"id": "12",
"type": "DRS",
"objectName": "Contact",
"runId": 0,
"startTime": "2012-07-30T13:32:31.000Z",
"endTime": "2012-07-30T13:35:31.000Z",
"state": 1,
"failedSourceRows": 0,
"successSourceRows": 39,
"failedTargetRows": 0,
"successTargetRows": 39,
"errorMsg": "No errors encountered.",
"entries": []
},
]
}
]

Error Log Requests


You can request an error log from the server.

activityLog 53
To request an error log from the server for a specific activity log ID, use the following URI:
/api/v2/activity/errorLog/id

To retrieve an error log from the server, you might use the following request:
GET <server URL>/api/v2/activity/errorLog/000002C10000000002BG HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

The server returns the error log as a string, as shown in the following example:
"Col1","Col2","Error"

"05/11/2015 00:00:00.000000000","05/11/2015 00:00:00.000000000","ERROR: Target table


[test] has no keys specified."

"05/11/2015 00:00:00.000000000","05/11/2015 00:00:00.000000000","ERROR: Target table


[test] has no keys specified."

"05/11/2015 00:00:00.000000000","05/11/2015 00:00:00.000000000","ERROR: Target table


[test] has no keys specified."

"05/11/2015 00:00:00.000000000","05/11/2015 00:00:00.000000000","ERROR: Target table


[test] has no keys specified."

"05/11/2015 00:00:00.000000000","05/11/2015 00:00:00.000000000","ERROR: Target table


[test] has no keys specified."

Session Log Requests


You can download session logs for all task types using the sessionLog API. For tasks that have subtasks
such as Data Replication and task flows, you can download a ZIP file that contains all of the session logs in
the hierarchy. For Data Replication tasks, which have two levels of tasks, you can specify an itemId to return
a session log for a subtask if you do not want all of the session logs. For task flows, which have three levels
of tasks, you can specify an itemId or childItemId to return a session log for a particular subtask.

Use the following URI to download session logs:


/saas/api/v2/activity/activityLog/<Top_Level_Log_Entry_Id>/sessionLog?itemId=<child-log-
entry-item-id>&childItemId=<child-log-entry-item-id>

The following example requests include a request for a specific session log and requests for session logs for
subtasks:

To request a session log, which may return a ZIP file if the task is a Data Replication task or task flow,
you might use the following request:
/saas/api/v2/activity/activityLog/000001C1000000000591/sessionLog
To request a session log for a particular subtask for a Data Replication task or task flow, you might use
the following request:
/saas/api/v2/activity/activityLog/000001C1000000000591/sessionLog?itemId=233
To request a session log for a sub-subtask in a task flow, you might use the following request:
/saas/api/v2/activity/activityLog/000001C1000000000591/sessionLog?
itemId=233&childItemId=234

54 Chapter 2: Informatica Cloud REST API


activityMonitor
Use this resource to request information from the activity monitor.

GET Request
To request information from the activity monitor, use the following URI:
/api/v2/activity/activityMonitor?details=<true|false>

You can use the following activityMonitor GET URI attribute:

details
Optional.

Activity monitor detail to be returned from Informatica Cloud. Use one of the following options:

true. Returns activity monitor information for tasks, task flows, and child objects. Child objects can
include tasks within task flows, and objects within data replication tasks and D&B360 workflows.
false. Returns activity monitor information for tasks and task flows.

Default is false. If you omit this optional attribute, activitymonitor does not return additional details.

GET Response
Returns an activityMonitorEntry object for each row in the activity monitor. Returns the error object if errors
occur.

The activityMonitorEntry object includes the following GET response attributes:

id
Activity monitor entry ID.

type
Task type. Returns one of the following codes:

AVS. Contact validation task.


DMASK. Data masking task.
DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.
WORKFLOW. Task flow.
DNB_TASK. D&B360 task.
DNB_WORKFLOW. D&B360 workflow.

taskId
Task ID.

taskName
Task name.

objectName
Source object used in the task, or the data replication or D&B360 object being processed.

activityMonitor 55
runId
ID for the task run.

startTime
Start time for the task or task flow.

endTime
End time for the task or task flow.

executionState
State of the task. Returns one of the following codes:

INITIALIZED
RUNNING
STOPPING
COMPLETED
FAILED

failedSourceRows
Number of rows that were not read from the source.

successSourceRows
Number of rows that were successfully read from the source.

failedTargetRows
Number of rows that were not written to the target.

successTargetRows
Number of rows that were successfully written to the target.

errorMsg
Error message associated with the job.

entries
Indicates the start of information for a child object. A child object might be a task within a task flow, or an
object in a data replication task or D&B360 workflow.

agentId
Agent used for the activity.

runtimeEnvironmentId
Runtime environment used for the activity.

startedBy
User who started the task.

runContextType
Method through which the task was initiated. Includes the following values:

UI. Task was initiated through the Informatica Cloud user interface.
SCHEDULER. Task was initiated through the task scheduler.
REST-API. Task was initiated through the REST API.
OUTBOUND MESSAGE. Task was initiated through an outbound message.

56 Chapter 2: Informatica Cloud REST API


scheduleName
Schedule name, if task was initiated by a schedule.

callbackURL
Status of the job.

GET Example
To return activity monitor information including details about child objects in XML, you might use the following
request:
GET <serverUrl>/api/v2/activity/activityMonitor?details=true HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

A successful request returns a list: an activityMonitorEntry object for each item returned from the activity
monitor.

The following text is a sample return in XML:


<root>
<activityMonitorEntry>
<id>000001C100000000000D</id>
<type>DSS</type>
<objectName>dss-f2f</objectName>
<runId>0</runId>
<startTime>2012-07-30T13:30:00.000Z</startTime>
<endTime></endTime>
<executionState>RUNNING</executionState>
<failedSourceRows>0</failedSourceRows>
<successSourcerows>938</successSourceRows>
<failedTargetRows>0</failedTargetRows>
<successTargetRows>596</successTargetRows>
<errorMsg> </errorMsg>
<entries> </entries>
<agentId>00000C08000000000003</agentId>
<runtimeEnvironmentId>00000C25000000000002</runtimeEnvironmentId>
</activityMonitorEntry>
<activityMonitorEntry>
<id>000001C500000000000L</id>
<type>PCS</type>
<objectName>pcs-lookup</objectName>
<runId>2</runId>
<startTime>2012-07-30T13:30:03.001Z</startTime>
<endTime>2012-07-30T13:30:03.010Z</endTime>
<executionState>COMPLETE</executionState>
<failedSourceRows>0</failedSourceRows>
<successSourcerows>688</successSourceRows>
<failedTargetRows>0</failedTargetRows>
<successTargetRows>688</successTargetRows>
<errorMsg> </errorMsg>
<entries> </entries>
<agentId>00000C08000000000003</agentId>
<runtimeEnvironmentId>00000C25000000000002</runtimeEnvironmentId>
</activityMonitorEntry>
</root>

activityMonitor 57
agent
Use this resource to request the details of an Informatica Cloud Secure Agent or the details of all Secure
Agents in the organization. You can also delete a Secure Agent.

GET Request
To request the details of all Secure Agents in the organization, use the following URI:
/api/v2/agent

To request the details of a particular Secure Agent, you can include the Secure Agent ID or the Secure Agent
name in the URI. Use one of the following URIs:
/api/v2/agent/<id>
/api/v2/agent/name/<name>

If you use the Secure Agent name in the URI and the Secure Agent name includes a space, replace the
space with %20. For example:
/api/v2/agent/name/special%20agent

GET Response
Returns the agent object for the requested Secure Agent ID or Secure Agent name.

If you request information for all Secure Agents in the organization, returns an agent object without the
packages and agentConfigs attributes for each Secure Agent in the organization.

Returns the error object if errors occur.

The agent object includes the following attributes:

id
Secure Agent ID.

orgId
Organization ID.

name
Secure Agent name.

description
Description of the Secure Agent.

createTime
Time the Secure Agent was created.

updateTime
Last time the Secure Agent was updated.

createdBy
User who created the Secure Agent.

updatedBy
User who updated the Secure Agent.

58 Chapter 2: Informatica Cloud REST API


active
Whether the Secure Agent is active. Returns one of the following values:

true. Active.
false. Inactive.

readyToRun
Whether the Secure Agent is ready to run a task. Returns one of the following values:

true. Secure Agent is ready to run a task.


false. Secure Agent is not ready to run a task.

platform
Platform of the Secure Agent machine. Returns one of the following values:

win32
linux32
win64
linux64

agentHost
Host name of the Secure Agent machine.

password
Password of the Secure Agent machine.

proxyHost
Host name of the outgoing proxy server that the Secure Agent uses.

proxyPort
Port number of the outgoing proxy server.

proxyUser
User name to connect to the outgoing proxy server.

proxyPassword
Password to connect to the outgoing proxy server.

agentVersion
Secure Agent version.

spiUrl
Informatica Cloud Application Integration URL for the organization the user belongs to.

upgradeStatus
Upgrade status.

lastUpgraded
Last time the Secure Agent was upgraded.

lastUpgradeCheck
Last time the Secure Agent was checked for upgrade.

lastStatusChange
Last time the Secure Agent status was updated.

agent 59
packages
Informatica Cloud Connector packages.

agentConfigs
Attribute that defines Secure Agent properties. Includes the following attributes in an agentConfig object
for each Secure Agent property.

name
Configuration property name.

type
Configuration type. Returns one of the following values:

Secure Agent Core


Secure Agent Manager
DTM
Apache Tomcat JRE
Secure Agent Core JRE

subtype
Configuration subtype. Returns one of the following values:

INFO
DEBUG

value
Value of the property.

customized
Whether the property is in the custom configuration details. Returns one of the following values:

true.
false.

overridden
Whether the property has been overridden. Returns one of the following values:

true.
false.

defaultValue
Default value.

platform
Platform. Returns one of the following values:

win32
linux32
win64
linux64

configUpdateTime
Last time a user updated Secure Agent properties.

60 Chapter 2: Informatica Cloud REST API


DELETE Request
You can delete a Secure Agent if it is not associated with any connections. Before you delete a Secure
Agent, update associated connections to use another Secure Agent.

To delete a Secure Agent, use the Secure Agent ID in the following URI:
/api/v2/agent/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

GET Example
To request the details about the Secure Agent with an ID of 000H1L080000000000001, to be returned in
JSON format, you might use the following request:
GET <serverUrl>/api/v2/agent/000H1L080000000000001 HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

A successful request returns the agent object.

auditlog
Use this resource to request entries from the audit log.

GET Request
To request the most recent 200 entries in the audit log, use the following URI.
/api/v2/auditlog

To request a specific batch of audit log entries, define the batch size and request a batch number with the
following URI.
/api/v2/auditlog?batchId=<batchId>&batchSize=<batchSize>

Use the following auditlog GET URI attributes:

batchSize
Required

Number of entries to include in a batch.

batchId
Required

The batch that you want to view.

Use 0 for the first batch, which contains the most recent audit log entries.

For example, to view entries 26-50, use a batch size of 25, and request batch 1.

GET Response
Returns an auditLogEntry object for each audit log entry returned. Returns the error object if errors occur.

The auditLogEntry object includes the following attributes:

auditlog 61
id
Audit log entry ID.

version
Version.

orgId
Org ID.

username
User who performed the action.

entryTime
Time the action occurred.

objectId
ID of the object used.

objectName
Name of the object used.

category
Category of audit log entry. Returns one of the following codes:

AUTH. Authorization.
AGREEMENT. Subscription agreement.
SYSTEM_INFO.
ADMIN_REPORT.
ORG. Organization.
USER.
AGENT. Secure Agent.
CONNECTION.
SCHEDULE.
DRS. Data replication.
DQA. Data assessment.
DMASK. Data masking.
DSS. Data synchronization.
DATA_FILE. File.
WORKFLOW. Task flow.
PCS. PowerCenter.
MTT. Mapping configuration.
CUSTOM_FUNC. Mapplet.
MIGRATE. Migration.
CUSTOM_SOURCE. Saved query.
DNBWORKFLOW. D&B360 workflow.
ITEM_VIEW. Custom views.

62 Chapter 2: Informatica Cloud REST API


SUBSCRIPTION_BILLING.
USER_GROUP.
SUB_ORG. Sub-organization.
OBJECT_ACL. Object permissions.
AVS. Contact validation.
PACKAGE.
TEMPLATE. Integration template.
DTEMPLATE. Mappings.
CONNECTOR. Informatica Cloud Connector.
EDITION. Informatica Cloud edition.
SCHEDULE_BLACKOUT. Schedule blackout period.
EXT_CONNECTION. Connections stored on a local Secure Agent.
BUNDLE.
ORG_EDITION. Information about changes to organization edition association. For example, when
the organization is reassigned a new edition.
RUNTIME_ENVIRONMENT.

event
Type of action performed. Returns one of the following codes:

LOGIN
CREATE
UPDATE
DELETE
DISABLE
RUN
VERSION1
VERSION2
VERSION3
VERSION4
VERSION5
VERSION6
VERSION7
DOWNLOAD
EXPORT
IMPORT
MAKE_DEFAULT
LINK
ENCRYPT
MOVE_CONNS_TO_AGENT
MOVE_CONNS_TO_IOD

auditlog 63
STOP

eventParam
Objects related to the action.

message
Additional information.

GET Example
To view rows 21-40, you might use the following URI.
/api/v2/auditlog?batchId=1&batchSize=20

bundleObject
Use this resource to request the details for a specific bundle or the details for all bundles published by the
organization or installed by the organization. You can also push a published private bundle to sub-
organizations.

GET Request
To request the details of a particular bundle, you can include the bundle ID or the bundle name in the URI.
Use one of the following URIs:
/api/v2/bundleObject/<id>
/api/v2/bundleObject/name/<name>

If you use the bundle name in the URI and the bundle name includes a space, replace the space with %20.
For example:
/api/v2/bundleObject/name/first%20bundle

To request the details for all bundles published by the organization, use one of the following URIs:
/api/v2/bundleObject/?published=true

/api/v2/bundleObject/?published=true&installed=false

To request the details for all bundles installed by the organization, use one of the following URIs:
/api/v2/bundleObject/?installed=true

/api/v2/bundleObject/?published=false&installed=true

GET Response
When you request the details for a bundle, returns the bundleObject for the bundle.

When you request a list of published bundles, returns a bundleObject for each bundle that the organization
published.

When you request a list of installed bundles, returns a bundleObject for each bundle that the organization
installed.

Returns the error object if errors occurred.

The bundleObject includes the following attributes:

64 Chapter 2: Informatica Cloud REST API


id
Bundle ID.

orgId
Organization ID.

name
Bundle name.

description
Description.

createTime
Time the bundle was created.

updateTime
Time the bundle was updated.

createdBy
User who created the bundle.

updatedBy
User who last updated the bundle.

lastVersion
The current published version of the bundle.

revokeTime
This attribute is not used at this time.

paid
Whether the bundle was purchased. Returns true for paid, false for free.

copyable
Determines whether users can download the contents of the bundle locally. Includes the following
values:

True. Users can download the bundle.


False. Users cannot download the bundle.

accessType
Access type for the bundle. Returns the following codes in the BundleObjectAccessType object:

PUBLIC. Available to all Informatica Cloud organizations.


SUBORGS. Available to sub-organizations of the publishing organization.
ACCESS_LIST. Available to the organization IDs in the sharedWith attribute.

objects
Objects in the bundle. Includes the following attributes in the bundleRefObject object:

objectTypeCode. The type of bundle. Includes the following values:


- 0V. Integration template.

- 17. Mapping.

- 0L. Mapplet.

bundleObject 65
objectId. Object identified in the bundle.
objectName. Name of the object in the bundle.
objectUpdateTime. The date and time that the object in the bundle was last updated.

publishOrgId
ID of the organization that published the bundle.

publishOrgName
Name of the organization that published the bundle.

externalId
External ID for the bundle.

POST Request
As part of a parent organization, you can share a private bundle with sub-organizations.

You can push a published private bundle to install the bundle on all sub-organizations. Push a published
private bundle when you want the objects in the bundle to be immediately available to all sub-organizations.

To push a bundle to a sub-organization, use the ID of the bundle object in the following URI:
/api/v2/bundleObject/push/<bundleId>

POST Response
Returns the success response if the request is successful. Returns the error object if errors occur.

bundleObjectLicense
Use this resource to request license information about bundles installed on or available to the organization.
You can also install a bundle and uninstall a bundle.

GET Request
To request license information for a bundle associated with to the organization, use the bundle ID in the
following URI:
/api/v2/bundleObjectLicense/<bundleObjectId>

To request license information for all bundles associated with the organization, omit the optional bundle ID.

GET Response
If successful, returns the BundleObjectLicenseType for the requested bundle.

If you request license information for all bundles, returns the bundleObjectLicense object for all bundles
associated with the organization.

Returns the error object if errors occur.

The bundleObjectLicense object includes the following attributes:

bundleObjectId
Bundle ID.

orgId
IDs of the organization.

66 Chapter 2: Informatica Cloud REST API


updateOption
This attribute is not used at this time.

licenseType
Bundle type. Returns one of the following values:

Free.
Trial.
Subscription.

endDate
Date the license expires. Returns NULL for free public bundles.

numberOfDaysToApply
This attribute is not used at this time.

numberOfMonthsToApply
This attribute is not used at this time.

beginDate
Publish date for the bundle.

bundleVersion
Version number for the bundle.

createTime
Creation date for the bundle.

installed
Indicates if the organization installed the bundle. Returns TRUE for installed bundles and FALSE for
available bundles.

active
Indicates that the bundle is available and active. Returns TRUE.

accessCode
Required to install a licensed bundle. Used for sharing private bundles. Read only.

POST Request
To install a bundle on the organization, use the following URI:
/api/v2/bundleObjectLicense

With this URI, use the following attributes in a bundleObjectLicense object:

bundleObjectId
The ID of the bundle.

check
Optional.

Validates the bundle before installation. Use TRUE to validate the bundle.

POST Response
Returns the success response if the request is successful. Returns the error object if errors occur.

bundleObjectLicense 67
DELETE Request
To uninstall a bundle from the organization, use the following URI:
/api/v2/bundleObjectLicense?bundleObjectId=<bundleId>&updateOption=<updateOption>

Use the following bundleObjectLicense Delete URI attributes:


bundleObjectId
The ID of the bundle.

updateOption
Optional.

Defines what happens if objects in the bundle are used. Use one of the following options:

DELETE_EXISTING_OBJECTS. Deletes the objects that use the bundle object.


UPDATE_EXISTING_OBJECTS. Updates the object that uses the bundle object.
EXCEPTION_IF_IS_USED. Returns a message when a bundle object is used and cancels the
uninstallation.

DELETE Response
Returns the success response if the request is successful. Returns the error object if errors occur.

connection
Use this resource to request connection details for an organization. You can also use this resource to create,
update, test, and delete a connection.

Details GET Request


You can request the following details using a connection GET request:

Details of all connections in the organization.


Details for a particular connection in the organization.
List of objects that you can use as a source or target with a particular connection.
List of connections of a specified type associated with a Secure Agent or runtime environment.
Metadata details for a specified connection.

Details of all connections in the organization


To request the details of all connections in the organization, use the following URI:
/api/v2/connection

Details of a particular connection


To request the details of a particular connection, include the connection ID or name in the URI. Use one
of the following URIs:
/api/v2/connection/<id>
/api/v2/connection/name/<name>

If you use the connection name in the URI and the connection name includes a space, replace the space
with %20. For example:
/api/v2/connection/name/my%20connection

68 Chapter 2: Informatica Cloud REST API


List of objects that you can use as a source or target
You can request the objects that you can use as a source or target. A maximum of 200 objects can be
returned for one request. To request source or target objects, you can include either the connection ID or
connection name in the URI. Use one of the following URIs:
/api/v2/connection/source/<id>
/api/v2/connection/target/<id>
/api/v2/connection/source/name/<name>
/api/v2/connection/target/name/<name>

If you use the connection name in the URI and the connection name includes a space, replace the space
with %20. For example:
/api/v2/connection/target/name/my%20connection

If you expect to receive a large number of objects, you might want to filter the results. To filter the
results, include the connection ID and the searchPattern parameter. To use the searchPattern
parameter, use the following URI:
/api/v2/connection/<source or target>/<id>?searchPattern=<pattern>

For example, the following request returns source objects that include "abc" in the object name:
/api/v2/connection/source/002D420000000J?searchPattern=abc

List of connections of a specified type associated with a Secure Agent or runtime environment
To request a list of connections by Secure Agent ID and connection type, use the following URI:
/api/v2/connection/search?agentId=<agentId>&uiType=<uiType>

To request a list of connections by runtime environment ID and connection type, use the following URI:
/api/v2/connection/search?runtimeEnvironmentId=<runtimeEnvironmentId>&uiType=<uiType>

If you pass both agentId and runtimeEnvironmentId, the service uses runtimeEnvironmentId and ignores
agentId. If you pass only agentId, the service translates agentId into its corresponding
runtimeEnvironmentId before it saves the resource to the repository.

Metadata details for a specified connection


To request metadata details for a specified connection, use the following URI:
/api/v2/connection/source/<connection ID>/metadata
/api/v2/connection/target/<connection ID>/metadata

The metadata is returned in the runtimeAttribute object which contains the following attributes:

name
dataType
defaultValue
label
mandatory
maxLength
sessionVarAllowed
possibleValues

Use the following connection request URI attributes:

connection 69
agentId
Secure Agent ID.

runtimeEnvironmentId
Runtime environment ID.

uiType
Connection type. Use one of the following options:

CSVFile. CSV flat file.


FTP.
MS_ACCESS.
MSD. Microsoft Dynamics CRM.
MySQL.
ODBC.
Oracle.
OCOD. Oracle CRM On Demand.
Salesforce.
SFTP. Secure FTP.
SAP_ALE_IDoc_Reader. SAP IDoc Reader.
SAP_ALE_IDoc_Writer. SAP IDoc Writer.
SqlServer. Microsoft SQL Server 2000.
SqlServer2005. Microsoft SQL Server 2005.
SqlServer2008. Microsoft SQL Server 2008.
SqlServer2012. Microsoft SQL Server 2012.
SqlServer2014. Microsoft SQL Server 2014.
SqlServer2016. Microsoft SQL Server 2016.
TOOLKIT. Informatica Cloud Connector. Also use for NetSuite connections.
WebServicesConsumer. Web Service.

Details GET Response


Returns the connection object for the requested connection ID. If you request information for all connections
in the organization, returns a connection object for each connection in the organization.

If you request a list of connections based on the runtime environment ID and connection type, returns a
connection object for each connection that matches the requirements.

If you request a list of source or target objects available for the requested connection ID, returns the
connListItem object for each available object.

Returns the error object if errors occur.

The connection object includes different information based on connection type.

70 Chapter 2: Informatica Cloud REST API


The following table describes attributes included in a connection object:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Description of the connection.

createTime Time the connection was created.

updateTime Last time the connection was updated.

createdBy User who created the connection.

updatedBy User who last updated the connection.

agentId Secure Agent ID for Flat File, FTP/SFTP, Microsoft SQL Server, MS Access, MySQL, ODBC, Oracle,
and Web Service connections.

runtimeEnvironmentId Runtime environment used by the connection. This is the Runtime Environment field in the user
interface. In the response returned to the user interface, this attribute is named agentGroupId.

instanceName Microsoft SQL Server instance name.

host Host name for FTP/SFTP, Microsoft SQL Server, MySQL, and Oracle connections.

domain Domain name for Microsoft Dynamics CRM connections that use IFD or Active Directory
authentication, and Web Service connections.

dateFormat Date format for Flat File, FTP, and SFTP connections.

database Returns the following information:


- For Microsoft SQL Server and MySQL connections, returns the database name.
- For Flat File connections, returns the directory.
- For FTP and SFTP connections, returns the local directory.
- For MS Access and ODBC connections, returns the data source name.
- For Oracle connections, returns the service name.
- For SAP IDoc Writer and Reader connections, returns the destination entry.
- For Web Service connections, returns the service URL.

codepage Code page for Flat File, FTP, SFTP, Microsoft SQL Server, MySQL, MS Access, ODBC, Oracle, and
SAP.

clientCode Client code for SAP IDoc Writer connections.

authenticationType Authentication type for Microsoft Dynamics CRM, Microsoft SQL Server, and Web Service
connections.

adjustedJdbcHostName Host name. Or host and instance name for Microsoft SQL Server connections.

accountNumber Account ID for NetSuite connections.

languageCode Language code for SAP IDoc Writer connections.

connection 71
Attribute Description

remoteDirectory Remote directory for FTP/SFTP connections.

schema Schema name for Microsoft SQL Server, ODBC, Oracle, and Web Service connections.

serviceUrl Service URL for Microsoft Dynamics CRM, Oracle CRM On Demand, and Salesforce connections.

shortDescription The first 50 letters of the description.

type Connection type returns one of the following responses:


- CSVFile. CSV flat file.
- FTP.
- MS_ACCESS.
- MSD. Microsoft Dynamics CRM.
- MySQL.
- ODBC.
- Oracle.
- OCOD. Oracle CRM On Demand.
- Salesforce.
- SFTP. Secure FTP.
- SAP_ALE_IDoc_Reader. SAP IDoc Reader.
- SAP_ALE_IDoc_Writer. SAP IDoc Writer.
- SqlServer. Microsoft SQL Server 2000.
- SqlServer2005. Microsoft SQL Server 2005.
- SqlServer2008. Microsoft SQL Server 2008.
- SqlServer2012. Microsoft SQL Server 2012.
- SqlServer2014. Microsoft SQL Server 2014.
- SqlServer2016. Microsoft SQL Server 2016.
- TOOLKIT. Informatica Cloud Connector.
- WebServicesConsumer. Web Service.
Note: The user interface field name on the Connections page varies depending on the connection.
For example, for SQL Server, the user interface field name is SQL Server Version. Also note that for
SQL Server, the REST API attribute that populates the value in the user interface is named subType.

port Port number for FTP/SFTP, Microsoft SQL Server, MySQL, and Oracle connections.

password Password for the connection.

username User name for the connection.

securityToken Security token for a Salesforce connection.

stsUrl Security token service URL for Microsoft Dynamics CRM connections that use Active Directory
authentication.

organizationName Organization name for Microsoft Dynamics CRM connections.

timeout Timeout for Web Service connections.

trustCertificatesFile Trust certificates file name for Web Service connections.

certificateFile Certificates file name for Web Service connections.

certificateFilePassword Certificates file password for Web Service connections.

certificateFileType Certificates file type for Web Service connections.

72 Chapter 2: Informatica Cloud REST API


Attribute Description

privateKeyFile Private key file name for Web Service connections.

privateKeyPassword Private key password for Web Service connections.

privateKeyFileType Private key file type for Web Service connections.

connParams Parameters used in the connection.


Includes connection attributes in the connParam object for SAP, NetSuite, Oracle CRM On Demand,
and Informatica Cloud Connector connections.

connListItem The connListItem object includes the following attributes:


id

Source or target ID.

name

Source or target name.

Test GET Request


To test a connection, use the connection ID in the following URI:
/api/v2/connection/test/<id>

Test GET Response


Returns the success object if the test succeeds.

Returns the error object if errors occur.

POST Request
You can create or update connections. To update a connection, use the connection ID with the following URI.
To create a connection, omit the optional connection ID.
/api/v2/connection/<id>

You can submit a partial update using partial mode. To submit a request using partial mode, use a JSON
request and include the following line in the header:
Update-Mode=PARTIAL

In a connection POST request, use the additional attributes in the connection object. The attributes used by
Informatica Cloud Connector connections vary by connection type.

To create or update an Informatica Cloud Connector connection, consult the Informatica Cloud application for
the attributes used by the connection. Enclose any attributes that are not listed in the following tables in a
connParam object.

To get a list of connectors that are available to the organization and attribute information for a specific
connector type, see connector on page 87.

For more information about attributes and data types used for creating connections through the REST API,
see Connection User Interface Fields to REST API Attributes Mapping on page 209 and Connector Data
Types on page 207.

POST Response
If successful, returns the connection object for the connection that was created or updated.

connection 73
Returns the error object if errors occur.

DELETE Request
To delete a connection, use the connection ID in the following URI.
/api/v2/connection/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To update an SAP Table connection, you might use the following request, enclosing SAP attributes in the
connParam object:
POST <serverUrl>/api/v2/user/connection/0002D420000000J HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

<connection>
<id>0002D420000000J</id>
<orgId>00342000</orgId>
<name>test dir</name>
<type>TOOLKIT</type>
<agentId>00001Y08000000000002</agentId>
<username>username</username>
<password>password</password>
<instanceName>SAPTableConnector</instanceName>
<connParams>
<agentId>00001Y08000000000002</agentId>
<username>username</username>
<password>password</password>
<client>800</client>
<language>EN</language>
<Saprfc Ini Path>C:\\Windows\\SysWOW64</Saprfc Ini Path>
<Destination>GE6</Destination>
</connParams>
<runtimeEnvironmentId>00000C25000000000002</runtimeEnvironmentId>
</connection>

A successful request returns the connection object that you updated.

CSV Flat File Connections


When you create or update a CSV flat file connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for CSV flat file connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use CSVFile.

74 Chapter 2: Informatica Cloud REST API


Attribute Description

database Directory where flat files are stored. In the user interface, this attribute is the Directory field. In the REST API
response that populates the value in the user interface, the name of this attribute is dirName.

dateFormat Date format for date fields in the flat file. Use one of the following formats:
- MM/dd/yyyy
- MM-dd-yyyy
- MM.dd.yyyy
- dd/MM/yyyy
- dd-MM-yyyy
- dd.MM.yyyy
- MM/dd/yyyy HH:mm
- MM-dd-yyyy HH:mm
- MM.dd.yyyy HH:mm
- dd/MM/yyyy HH:mm
- dd-MM-yyyy HH:mm
- dd.MM.yyyy HH:mm
- MM/dd/yyyy HH:mm:ss
- MM-dd-yyyy HH:mm:ss
- MM.dd.yyyy HH:mm:ss
- dd/MM/yyyy HH:mm:ss
- dd-MM-yyyy HH:mm:ss
- dd.MM.yyyy HH:mm:ss
- yyyy-MM-dd
- yyyy-MM-dd HH:mm
- yyyy-MM-dd HH:mm:ss
- yyyy-MM-ddTHH:mm:ss.SSSZ

codepage The code page of the system that hosts the flat file. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

FTP and SFTP Connections


When you create or update an FTP or SFTP connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for FTP or SFTP file connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use FTP or SFTP.

connection 75
Attribute Description

username User name.

password Password.

host Name of the machine hosting the database server or FTP/SFTP host. For a FTP/SFTP connection, enter the
host name of IP address.

port Network port number used to connect to FTP/SFTP connection. Default port is 21 for FTP and 22 for SFTP.

database Directory on a local machine that stores the local file. In the user interface, this attribute is the Directory field.
In the REST API response that populates the value in the user interface, the name of this attribute is
dirName.
The local machine must also run the Secure Agent used to run the corresponding task. Enter a local
directory or use the Browse button to select a local directory.

remoteDirectory Directory on the FTP/SFTP host that stores the remote flat file.
Depending on the FTP/SFTP server, you may have limited options to enter directions. For more information,
see the FTP/SFTP server documentation.

dateFormat Date format for date fields in the flat file. Use one of the following formats:
- MM/dd/yyyy
- MM-dd-yyyy
- MM.dd.yyyy
- dd/MM/yyyy
- dd-MM-yyyy
- dd.MM.yyyy
- MM/dd/yyyy HH:mm
- MM-dd-yyyy HH:mm
- MM.dd.yyyy HH:mm
- dd/MM/yyyy HH:mm
- dd-MM-yyyy HH:mm
- dd.MM.yyyy HH:mm
- MM/dd/yyyy HH:mm:ss
- MM-dd-yyyy HH:mm:ss
- MM.dd.yyyy HH:mm:ss
- dd/MM/yyyy HH:mm:ss
- dd-MM-yyyy HH:mm:ss
- dd.MM.yyyy HH:mm:ss
- yyyy-MM-dd
- yyyy-MM-dd HH:mm
- yyyy-MM-dd HH:mm:ss
- yyyy-MM-ddTHH:mm:ss.SSSZ

codepage The code page of the system that hosts the flat file. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

76 Chapter 2: Informatica Cloud REST API


Microsoft Access Connections
When you create or update a Microsoft Access connection, you can configure additional attributes, such as
the connection ID and the connection name.

The following table describes attributes that you can use for Microsoft Access connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use MS_ACCESS.

database Data source name. In the user interface, this is the Data Source Name field.

codepage The code page compatible with the MS Access database. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

Microsoft Dynamics CRM Connections


When you create or update a Microsoft Dynamics CRM connection, you can configure additional attributes,
such as the connection ID and the connection name.

The following table describes attributes that you can use for Microsoft Dynamics CRM connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use MSD.

connection 77
Attribute Description

authenticationType Authentication type for the connection. Select a valid authentication type. Use one of the following
authentication types:
- LIVE. Microsoft Live. Use for data synchronization tasks or PowerCenter tasks.
- IFD. Internet Facing Development (IFD). Use for data synchronization tasks or PowerCenter tasks.
- AD. Active Directory. Use for PowerCenter tasks only.

username Microsoft Dynamics CRM user name.

password Microsoft Dynamics CRM password.

organizationName Microsoft Dynamics CRM organization name.

domain Microsoft Dynamics CRM domain name.


Required for IFD and Active Directory authetication.

serviceURL URL of the Microsoft Dynamics CRM service.


For Microsoft Live authentication, use the following format:
https:// <orgname>.crm.dynamics.com
For IFD authentication, use the following format:
https://<server.company.com>:<port>
For Active Directory, use the following format:
http://<server.company.com>:<port>

stsURL Microsoft Dynamics CRM security token service URL. For example, https:// sts1.company.com.
Required for IFD authentication.

agentId Secure Agent ID.


Required for Active Directory authentication only.

Microsoft SQL Server Connections


When you create or update a Microsoft SQL Server connection, you can configure additional attributes, such
as the connection ID and the connection name.

The following table describes attributes that you can use for Microsoft SQL Server connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

78 Chapter 2: Informatica Cloud REST API


Attribute Description

type Connection type. Use one of the following codes:


- SqlServer. Microsoft SQL Server 2000.
- SqlServer2005. Microsoft SQL Server 2005.
- SqlServer2008. Microsoft SQL Server 2008.
- SqlServer2012. Microsoft SQL Server 2012.
In the user interface, this attribute is the SQL Server Version field. In the REST API response that
populates the value in the user interface, the name of this attribute is subType.

authenticationType Authentication method for the connection. Use one of the following options:
- Windows. Use Microsoft Windows authentication to access Microsoft SQL Server. Available when
users access Informatica Cloud in Windows.
- SqlServer. Use Microsoft SQL Server authentication to access Microsoft SQL Server.

username User name for the database login. Use when authenticationType is SqlServer.

password Password for the database login. Use when authenticationType is SqlServer.

host Name of the machine hosting the database server.

port Network port number used to connect to the database server. Default port number is 1433.

instanceName Instance name of the Microsoft SQL Server database.

database Database name for the Microsoft SQL Server target. Database name is case sensitive if the database is
case sensitive. Maximum length is 100 characters.
Database names can include alphanumeric and underscore characters.

schema Schema used for the target connection.

codepage The code page of the Microsoft SQL Server database. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

MySQL Connections
When you create or update a MySQL connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for MySQL connections:

Attribute Description

id Connection ID.

orgId Organization ID.

connection 79
Attribute Description

name Connection name.

description Optional connection description.

type Connection type. Use MySQL.

username User name for the database login.

password Password for the database login.

host Name of the machine hosting the database server.

port Network port number used to connect to the database server. Default is 3306.

database Database name for the MySQL database target. Database name is case sensitive if the database is case
sensitive.

codepage The code page for the database server. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

NetSuite Connections
When you create or update a NetSuite connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for NetSuite connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use NetSuite.

username NetSuite user name.

password NetSuite password.

80 Chapter 2: Informatica Cloud REST API


Attribute Description

accountNumber NetSuite account ID. To locate your account ID, log in to NetSuite and navigate to Setup > Integration > Web
Services Preferences.

serviceURL WSDL URL. If your NetSuite account does not use the default NetSuite WSDL URL, enter the WSDL URL
used by your NetSuite account.

ODBC Connections
When you create or update an ODBC connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for OBDC connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use ODBC.

username User name for the database login.

password Password for the database login.

database Data source name.

schema Schema used for the target connection.


Use uppercase letters when you specify the schema name for an Oracle database.
Required to connect to an IBM DB2 database.

codepage The code page of the database server or flat file defined in the connection. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

connection 81
Oracle Connections
When you create or update an Oracle connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for Oracle connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use Oracle.

username User name for the database login.

password Password for the database login.

host Name of the machine hosting the database server.

port Network port number used to connect to the database server. Default is 1521.

database Service name that uniquely identifies the Oracle database. This attribute is the Service Name field in the user
interface.
If the connection fails, contact the database administrator.

schema Schema used for the target connection. Optional.

codepage The code page of the database server. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent that Informatica Cloud uses to access the database in the local area network.

82 Chapter 2: Informatica Cloud REST API


Oracle CRM On Demand Connections
When you create or update an Oracle CRM On Demand connection, you can configure additional attributes,
such as the connection ID and the connection name.

The following tables describes attributes that you can use for Oracle CRM On Demand connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use OCOD.

username Oracle CRM On Demand user name. Use the following format:
<domain>/<user name>
For example: domain/[email protected].

password Oracle CRM On Demand password.

serviceUrl URL of the Oracle CRM On Demand service.


For example: https://securecompany.crmondemand.com.

Salesforce Connections
When you create or update a Salesforce connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for Salesforce connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use Salesforce.

username User name for the Salesforce account.


<domain>/<user name>
For example: domain/[email protected].

password Password for the Salesforce account.

connection 83
Attribute Description

securityToken Security token associated with the user name and password. Optional.

serviceUrl URL of the Salesforce service. Maximum length is 100 characters.

SAP IDoc Reader Connections


When you create or update an SAP IDoc Reader connection, you can configure additional attributes, such as
the connection ID and the connection name.

The following table describes attributes that you can use for SAP IDoc Reader connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use SAP_ALE_IDoc_Reader.

username SAP user name with authorization on S_DATASET, S_TABU_DIS, S_PROGRAM, and B_BTCH_JOB objects.

password Password for the SAP user name.

database Type A DEST entry in the saprfc.ini file. This attribute is the Destination Entry field in the user interface.

codepage The code page compatible with the SAP source. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

84 Chapter 2: Informatica Cloud REST API


SAP IDoc Writer Connections
When you create or update an SAP IDoc Writer connection, you can configure additional attributes, such as
the connection ID and the connection name.

The following table describes attributes that you can use for SAP IDoc Writer connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

description Optional connection description.

type Connection type. Use SAP_ALE_IDoc_Writer.

username SAP user name with authorization on S_DATASET, S_TABU_DIS, S_PROGRAM, and B_BTCH_JOB objects.

password Password for the SAP user name.

database Type A DEST entry in the saprfc.ini file. This attribute is the Connection String field in the user interface.

languageCode Language code that corresponds to the SAP language. A two-letter code, such as en for English.

clientCode SAP client number. A three-letter code.

codepage The code page compatible with the SAP target. Use one of the following options:
- UTF-8. Unicode Transformation Format, multibyte.
- MS1252. MS Windows Latin 1 (ANSI), superset of Latin 1.
- ISO-8859-15. Latin 9, Western European.
- ISO-8859-2. Eastern European.
- ISO-8859-3. Southeast European.
- ISO-8859-5. Cyrillic.
- ISO-8859-9. Latin 5, Turkish.
- IBM500. IBM EBCDIC International Latin-1.

agentId Secure Agent ID.

Web Service Connections


When you create or update a Web Service connection, you can configure additional attributes, such as the
connection ID and the connection name.

The following table describes attributes that you can use for Web Service connections:

Attribute Description

id Connection ID.

orgId Organization ID.

name Connection name.

connection 85
Attribute Description

description Optional connection description.

type Connection type. Use WebServicesConsumer.

username SAP user name with authorization on S_DATASET, S_TABU_DIS, S_PROGRAM, and B_BTCH_JOB
objects.

password Password for the web service login. If the web service does not require a user name, leave this field
empty. Optional.

domain Domain for authentication. Optional.

serviceUrl Endpoint URL for the web service that you want to access. The WSDL file specifies this URL in the
location element. This attribute is the Endpoint URL field in the user interface.
Optional.

timeout Secure Agent ID.


Number of seconds Informatica Cloud waits for a connection to the web service provider before it
closes the connection and fails the session. Also, the number of seconds the Informatica Cloud waits
for a SOAP response after sending a SOAP request before it fails the session.
Default is 60. Optional.

trustCertificatesFile File containing the bundle of trusted certificates that Informatica Cloud uses when authenticating the
SSL certificate of the web services provider. Default is ca-bundle.crt. Optional.

certificateFile Client certificate that a web service provider uses when authenticating a client. You specify the client
certificate file if the web service provider needs to authenticate Informatica Cloud. Optional.

certificateFilePassword Password for the client certificate. You specify the certificate file password if the web service provider
needs to authenticate Informatica Cloud. Optional.

certificateFileType File type of the client certificate. You specify the certificate file type if the web service provider needs
to authenticate the Integration Service. Use one of the following codes:
- PEM
- DER
Optional.

privateKeyFile Private key file for the client certificate. You specify the private key file if the web service provider
needs to authenticate Informatica Cloud. Optional.

privateKeyPassword Password for the private key of the client certificate. You specify the key password if the web service
provider needs to authenticate Informatica Cloud. Optional.

privateKeyFileType File type of the private key of the client certificate. You specify the key file type if the web service
provider needs to authenticate Informatica Cloud.
If necessary, use PEM. Optional.

86 Chapter 2: Informatica Cloud REST API


Attribute Description

authenticationType Authentication type to use when the web service provider does not return an authentication type to
Informatica Cloud. Use one of the following options:
- Auto. The Integration Service attempts to determine the authentication type of the web service
provider.
- Basic. Based on a non-encrypted user name and password.
- Digest. Based on an encrypted user name and password.
- NTLM. Based on encrypted user name, password, and domain.
Default is Auto. Optional.

agentId ID for the Secure Agent that Informatica Cloud uses to access the database in the local area network.

connector
Use this resource to request a list of connectors that are available to an organization along with connector
details. You can also use this resource to get attribute information for a specific connector type. You can use
the list of attributes that this resource provides when you create a connection for a specific connector type
since you need to provide these attributes when you create a connection of a certain type.

GET Request and Response for Available Connectors


To request a list of connectors available for an organization, submit a GET request using the following URI:
/api/v2/connector

For example, you might use the following request:


GET <serverUrl>/api/v2/connector HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

A successful response returns the following attributes in the connector object:

Attribute Description

name Name of the connector.

type Type of connector. Includes the following values:


- Salesforce
- Oracle
- SqlServer
- MySQL
- CSVFile
- ODBC
- MS_ACCESS
- FTP
- SAP
- WebServicesConsumer
- MSD

publisher Name of the entity that published the connector.

connector 87
Attribute Description

connectorVersion Connector version.

shortName Connector short name.

isPublic Whether the connector is a public or private connector. If you are interested in a connector that is private,
contact Informatica Global Customer Support.

GET Request and Response for Connector Metadata


To get metadata for a specific connector type, submit a GET request using the following URI:
/api/v2/connector/metadata?connectorName=<connectorName>

For example, you might use the following request:


GET <serverUrl>/api/v2/connectorName=SQLServer HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

A successful response returns the following attributes in the connectorMetadata object:

Attribute Description

type Type of connector, such as Salesforce or Oracle.

isStandardConnType Whether the connector is standard or custom. A "True" value indicates the connector is standard.

attributes Connector attributes for the specified connector type. Includes the following attributes for each
connector attribute:
- name. Name of the attribute, such as database or codePage.
- label.
- id.
- value. Value of the attribute.
- type. Data type. For values, see Connector Data Types on page 207 .
- isMandatory. Whether the attribute is mandatory.
- visible.
- list. A list of types for the selected connector type. For example, SQL Server includes the types
SqlServer2000, SqlServer2005, SqlServer2008, and so on.

customFunc
Use this resource to request the details of a mapplet or to request a list of all mapplets in the organization.
You can also use this resource to upload a PowerCenter mapplet, and to delete a mapplet.

GET Request
To request a list of all mapplets in the organization, use the following URI:
/api/v2/customFunc

88 Chapter 2: Informatica Cloud REST API


To request the details of a single mapplet, you can use the mapplet ID or mapplet name in the request. Use
one of the following URIs:
/api/v2/customFunc/<id>
/api/v2/customFunc/name/<name>

If you use the mapplet name and the mapplet name includes a space, replace the space with %20. For
example:
/api/v2/customFunc/name/my%20mapplet

GET Response
If the request for a list of mapplets is successful, returns the customFunc object for every mapplet in the
organization without the input, output, and connection details.

If the request for the details of a single mapplet is successful, returns the customFunc object.

Returns the error object if errors occur.

The customFunc object includes the following attributes:

id
Mapplet ID.

orgId
Organization ID.

name
Mapplet name.

description
Mapplet description.

createTime
Time the mapplet was created.

updateTime
Time the mapplet was last updated.

createdBy
User who created the mapplet.

updatedBy
User who last updated the mapplet.

mappletName
Name of the Mapplet transformation used in the mapplet.

active
Whether the mapplet is active:

true. The mapplet is active.


false. The mapplet is passive.

mappletXmlFile
The mapplet XML file.

customFunc 89
inputs
Input fields for the mapplet. Includes the following information for each field in the field object:

id
name
type
label
parentObject
precision
pcType
scale
columnIndex
isKey
isExternalId
isNullable
isUnique
isCreateable
isCalculated
isUpdateable
isFilterable
linkedFields
relatedInfos. Includes the following information in the fieldRelatedInfo object:
- id

- referenceObject

- relationshipName
javaType
showLabel
naturalOrder
customProperties

outputs
Output fields for the mapplet. Includes the following information in for each field in the field object:

id
name
type
label
parentObject
precision
pcType
scale
columnIndex

90 Chapter 2: Informatica Cloud REST API


isKey
isExternalId
isNullable
isUnique
isCreateable
isCalculated
isUpdateable
isFilterable
linkedFields
relatedInfos. Includes the following information in the fieldRelatedInfo object:
- id

- referenceObject

- relationshipName
javaType
showLabel
naturalOrder
customProperties

connections
Connection information for the mapplet. Includes the following attributes in the pcsConnection object for
each connection:

id
name
type
subtype
description
connectionId

POST Request
To update an existing mapplet, use the mapplet ID in the following URI. To upload a new PowerCenter
mapplet, omit the optional ID parameter:
/api/v2/customFunc/<id>

Note: Encode the request body as multipart/form-data.

With this URI, you can use the following attributes in the request body:

file
Required.

The Mapplet XML file exported from Informatica PowerCenter. File content should be in binary format,
UTF-8 encoding.

name
Required.

The Mapplet name.

customFunc 91
description
Optional

The Mapplet description.

In addition to the POST attributes, pass the following information in the request body:

Boundary value. Used to define different parts of the request body.


File name. Name of the mapplet XML file.
icSessionId. Informatica Cloud session ID returned by the login resource. You can pass this information in
the request body for clients that do not allow custom headers. If you can pass icSessionId as part of the
request header, you can omit this information in the request body.

Use the following template for the customFunc POST request:


URL: <serverUrl>/api/v2/customFunc/
HTTP method: POST

Content-Type:multipart/form-data;boundary=<boundary value>
--<boundary value>
Content-Disposition:form-data; name="file";filename="<filename.XML>";Content-Type:text/
<xml|json>

<content of the mapplet XML file encoded as UTF-8>

--<boundary value>
Content-Disposition: form-data; name="name"

<mapplet name>
--<boundary value>
Content-Disposition: form-data; name="desc"

<description of the mapplet>


--<boundary value>
Content-Disposition: form-data; name="icSessionId"

<icSessionID returned from login resource>


--<boundary value>--

POST Response
If successful, returns the customFunc response object for the mapplet that was created or updated.

Returns the error object if errors occur.

DELETE Request
To delete a mapplet, use the mapplet ID in the following URI:
/api/v2/customFunc/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To update a mapplet with an ID of 3 with an icSessionId of IV4wOrJmd6YUtmKa8t, you might use the
following request. The updated mapplet is named Lookup Mapplet and uses the lookup_mapplet.xml file.
XML data should be encoded in UTF-8.
URL: https://example.informatica.com/saas/api/v2/customFunc/3
HTTP method: POST

Content-Type:multipart/form-data;boundary=243553118520053
--243553118520053

92 Chapter 2: Informatica Cloud REST API


Content-Disposition:form-data; name="file";filename="<lookup_mapplet.xml>";Content-
Type:text/xml

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE POWERMART SYSTEM "powrmart.dtd">
<POWERMART CREATION_DATE="05/14/2012 12:17:26" REPOSITORY_VERSION="181.90">
<REPOSITORY NAME="pc91hf1" VERSION="181" CODEPAGE="UTF-8" DATABASETYPE="Oracle">
<FOLDER NAME="test" GROUP="" OWNER="Administrator" SHARED="SHARED" DESCRIPTION=""
PERMISSIONS="rwx---r--" UUID="96f9d03b-c2c5-4034-8e3a-838026bbf6e8">
<SOURCE BUSINESSNAME ="" DATABASETYPE ="Oracle" DBDNAME ="ddicst" DESCRIPTION =""
NAME ="CUSTOMERMASTER" OBJECTVERSION ="1" OWNERNAME ="C01" VERSIONNUMBER ="1">
<SOURCEFIELD BUSINESSNAME ="" DATATYPE ="nvarchar2" DESCRIPTION ="" FIELDNUMBER
="1" FIELDPROPERTY ="0" FIELDTYPE ="ELEMITEM" HIDDEN ="NO" KEYTYPE ="PRIMARY KEY"
LENGTH ="0" LEVEL ="0" NAME ="CUSTOMERID" NULLABLE ="NOTNULL" OCCURS ="0" OFFSET ="0"
PHYSICALLENGTH ="30" PHYSICALOFFSET ="0" PICTURETEXT ="" PRECISION ="30" SCALE ="0"
USAGE_FLAGS =""/>
.
.
.
<ATTRIBUTE NAME ="Parameter Filename" VALUE =""/>
<ATTRIBUTE NAME ="Write Backward Compatible Workflow Log File" VALUE ="NO"/>
<ATTRIBUTE NAME ="Workflow Log File Name" VALUE ="wf_plugin_lookup.log"/>
<ATTRIBUTE NAME ="Workflow Log File Directory" VALUE
="$PMWorkflowLogDir&#x5c;"/>
<ATTRIBUTE NAME ="Save Workflow log by" VALUE ="By runs"/>
<ATTRIBUTE NAME ="Save workflow log for these runs" VALUE ="0"/>
<ATTRIBUTE NAME ="Service Name" VALUE =""/>
<ATTRIBUTE NAME ="Service Timeout" VALUE ="0"/>
<ATTRIBUTE NAME ="Is Service Visible" VALUE ="NO"/>
<ATTRIBUTE NAME ="Is Service Protected" VALUE ="NO"/>
<ATTRIBUTE NAME ="Fail task after wait time" VALUE ="0"/>
<ATTRIBUTE NAME ="Enable HA recovery" VALUE ="NO"/>
<ATTRIBUTE NAME ="Automatically recover terminated tasks" VALUE ="NO"/>
<ATTRIBUTE NAME ="Service Level Name" VALUE ="Default"/>
<ATTRIBUTE NAME ="Allow concurrent run with unique run instance name" VALUE
="NO"/>
<ATTRIBUTE NAME ="Allow concurrent run with same run instance name" VALUE
="NO"/>
<ATTRIBUTE NAME ="Maximum number of concurrent runs" VALUE ="0"/>
<ATTRIBUTE NAME ="Assigned Web Services Hubs" VALUE =""/>
<ATTRIBUTE NAME ="Maximum number of concurrent runs per Hub" VALUE ="1000"/>
<ATTRIBUTE NAME ="Expected Service Time" VALUE ="1"/>
</WORKFLOW>
</FOLDER>
</REPOSITORY>
</POWERMART>

--243553118520053
Content-Disposition: form-data; name="name"

Lookup Mapplet
--243553118520053
Content-Disposition: form-data; name="icSessionId"

IV4wOrJmd6YUtmKa8t
--243553118520053--

A successful request returns the customFunc response object for the mapplet that you updated,

customFunc 93
dataPreview
Use this resource to preview data during mapping design. The response returns up to ten rows of source or
target data for the specified object.

GET Request
To request preview data, specify the connection ID or connection name and the object name in one of the
following URIs:

To request source data, use one of the following URIs:


/api/v2/connection/source/<id>/datapreview/<objectName>
/api/v2/connection/source/name/<name>/datapreview/<objectName>
To request target data, use one of the following URIs:
/api/v2/connection/target/<id>/datapreview/<objectName>
/api/v2/connection/target/name/<name>/datapreview/<objectName>
If you use the connection name in the URI and the connection name includes a space, replace the space with
%20. For example:
/api/v2/connection/target/name/my%20connection/datapreview/SF_ACCOUNT.csv

GET Response
Returns the dataPreview object for the requested connection ID or connection name and object name.

The dataPreview object includes the following attributes:


connId
Connection ID.

objectName
Name of the source or target object.

header
Column headers.

fieldName
Field name

fieldBusinessName
Business field name.

data
Includes the following attribute in the dataPreviewEntry object:
values
Field values from the source or target object.

GET Example
The following example shows a request to preview data from the SF_ACCOUNT.csv object.
GET <serverUrl>/api/v2/connection/target/0000010B000000000003/datapreview/
SF_ACCOUNT.csv HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

The following text is a sample response:


{

94 Chapter 2: Informatica Cloud REST API


"@type": "dataPreview",
"connId": "0000010B000000000003",
"objectName": "SF_ACCOUNT.csv",
"header": [
"ID",
"ISDELETED",
"MASTERRECORDID",
"NAME",
"TYPE",
"PARENTID",
"BILLINGSTREET",
"BILLINGCITY",
"BILLINGSTATE",
"BILLINGPOSTALCODE",
"BILLINGCOUNTRY",
"BILLINGLATITUDE",
"BILLINGLONGITUDE",
"SHIPPINGSTREET",
"SHIPPINGCITY",
"SHIPPINGSTATE",
"SHIPPINGPOSTALCODE",
"SHIPPINGCOUNTRY",
"SHIPPINGLATITUDE",
"SHIPPINGLONGITUDE",
"PHONE",
"FAX",
"ACCOUNTNUMBER",
"WEBSITE"
],

"fieldName": [
"ID",
"ISDELETED",
"MASTERRECORDID",
"NAME",
"TYPE",
"PARENTID",
"BILLINGSTREET",
"BILLINGCITY",
"BILLINGSTATE",
"BILLINGPOSTALCODE",
"BILLINGCOUNTRY",
"BILLINGLATITUDE",
"BILLINGLONGITUDE",
"SHIPPINGSTREET",
"SHIPPINGCITY",
"SHIPPINGSTATE",
"SHIPPINGPOSTALCODE",
"SHIPPINGCOUNTRY",
"SHIPPINGLATITUDE",
"SHIPPINGLONGITUDE",
"PHONE",
"FAX",
"ACCOUNTNUMBER",
"WEBSITE"
],

"fieldBusinessName": [
"ID",
"ISDELETED",
"MASTERRECORDID",
"NAME",
"TYPE",
"PARENTID",
"BILLINGSTREET",
"BILLINGCITY",
"BILLINGSTATE",
"BILLINGPOSTALCODE",
"BILLINGCOUNTRY",
"BILLINGLATITUDE",
"BILLINGLONGITUDE",

dataPreview 95
"SHIPPINGSTREET",
"SHIPPINGCITY",
"SHIPPINGSTATE",
"SHIPPINGPOSTALCODE",
"SHIPPINGCOUNTRY",
"SHIPPINGLATITUDE",
"SHIPPINGLONGITUDE",
"PHONE",
"FAX",
"ACCOUNTNUMBER",
"WEBSITE"
],

"rows": [
{
"@type": "dataPreviewEntry",
"values": [
"001i000000KIAQGAA5",
"0",
"",
"ABCPoint",
"Customer - Channel",
"",
"345 ABC Park",
"Mountain View",
"CA",
"94063",
"",
"",
"",
"345 ABC Park",
"Mountain View",
"CA",
"94063",
"",
"",
"",
"(650) 555-3450",
"(650) 555-9895",
"CC978213",
"www.ABCpoint.com"
]
},

{
"@type": "dataPreviewEntry",
"values": [
"001i000000KIAQHAA5",
"0",
"",
"123 United, UK",
"Customer - Direct",
"",
"123 Estate,\nGateshead, Tyne and Wear NE26 3HS\nUnited Kingdom",
"",
"UK",
"94063",
"",
"",
"",
"123 Estate,\nGateshead, Tyne and Wear NE26 3HS\nUnited Kingdom",
"",
"",
"94063",
"",
"",
"",
"+44 123 4567899",
"+44 123 4567899",
"CD355119-A",
"http://www.123United.com"

96 Chapter 2: Informatica Cloud REST API


]

expressionValidation
Use this resource to validate expressions.

POST Request
To validate an expression, use the following URI:
/saas/api/v2/expression/validate

Use the following attributes in the request body:


expr
The expression to validate.

connectionId
Connection ID.

objectName
Name of the source or target object.

isSourceType
Whether the expression is for a source object. Values are True or False.

If the expression is valid, the response returns a message that says the expression is valid. If the expression
is not valid, the response returns an error.

POST Example
To validate an expression, you might use the following request:
POST <serverURL>/api/v2/expression/validate HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type":"expressionValidation",
"expr":"REPVERSION",
"connectionId":"0000010B000000000004",
"objectName":"OPB_REPOSIT",
"isSourceType":true
}

expressionValidation 97
field
A field is a subset of a data structure that represents a single data item. For example, a database table
column is a field. Use this resource to request field details for a source or target object and to update the flat
file attributes for a source or target object.

GET Request
To request the field details of a source object, use the source connection ID or source connection name and
the source object name. Use one of the following URIs:
/api/v2/connection/source/<id>/field/<object name>
/api/v2/connection/source/name/<name>/field/<object name>

If you use the connection name in the URI and the connection name includes a space, replace the space with
%20. For example:
/api/v2/connection/source/name/my%20connection/field/customer

To request the field details of a target object, use the target connection ID or target connection name and the
target object name. Use one of the following URIs:
/api/v2/connection/target/<id>/field/<object name>
/api/v2/connection/target/name/<name>/field/<object name>

If you use the connection name in the URI and the connection name includes a space, replace the space with
%20. For example:
/api/v2/connection/target/name/my%20connection/field/customer

You can also use the following URI, which accommodates searching for an object that includes a forward
slash (/):
api/v2/connection/<source or target>/<id>/fields?objectName=<objectName>

Note: The object name is case-sensitive.

GET Response
Returns the field object for each field in the requested object.

Returns the error object if errors occur.

The field object includes different information based on the connection type. The following are the attributes
of a field object:

id
Field ID.

name
Field name.

type
Field type.

uniqueName
Deprecated.

label
Field label.

98 Chapter 2: Informatica Cloud REST API


parentObject
Parent object, if applicable.

precision
Length of the field in bytes.

pcType
PowerCenter data type.

scale
Number of digits after the decimal point for numeric values.

columnIndex
Column index.

isKey
Whether the field is a used as a key.

isExternalId
Whether the field is used as an external ID.

isSfIdLookup
Whether the field is used as a Salesforce ID lookup field.

isNullable
Whether the field can contain null values. Values are True or False.

isUnique
Whether the field requires unique values. Values are True or False.

isCreateable
Whether the field accepts new values. Values are True or False.

isCalculated
Whether the field is calculated. Values are True or False.

isUpdateable
Whether the field allows updates. Values are True or False.

isFilterable
Whether the field can be filtered. Values are True or False.

linkedFields
For a Data Masking task, the source field mapped to the input field of the mapplet.

relatedInfos
Information about related fields. The following attributes are included in a fieldRelatedInfo object for each
related field:

id
Field ID.

referenceObject
Object that includes the field.

field 99
relationshipName
Relationship to object.

references
Reference information. The following attributes are included in a fieldRelatedInfo object for each related
field:

id
Field ID.

referenceObject
Object that includes the field.

relationshipName
Relationship to object.

javaType
Java data type.

showLabel
Whether to show the field label. Values are True or False.

naturalOrder
Position number of the field in the source.

customProperties
Custom properties for the field.

GET Example
To use XML to get the field details for the Customer object available through the source connection (ID:
0002D420000000J), you might use the following request:
GET <serverUrl>/api/v2/connection/source/0002D420000000J/field/Customer HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

A successful request returns the fields object for each field in the Customer source object.

POST Request
To update the flat file attributes for a source or target object, use one of the following URI:
/api/v2/connection/source/<id>/field/<objectName>
/api/v2/connection/target/<id>/field/<objectName>

The flat file attributes provided in the request override the default attributes specified in the connection object.

You can use the following attributes in the flatFileAttrs object:


id
Field ID.

delimiter
Character used to separate fields.

textQualifier
Quote character that defines the boundaries of text strings.

100 Chapter 2: Informatica Cloud REST API


escapeChar
Character immediately preceding a field delimiter character embedded in an unquoted string, or
immediately preceding the quote character in a quoted string.

headerLineNo
Number of header lines

firstDataRow
The row number where the data begins in the file.

POST Request Example


To send a request for field information, you might use the following request:
POST <serverUrl>/api/v2/connection/source/0000010B000000000021/field/test_precision.csv
HTTP/1.0
1.0
Content-Type: application/xml
Accept: application/xml
icSessionId
{
"@type": "flatFileAttrs",
"delimiter": ",",
"textQualifier": "'",
"escapeChar": "\\"
}

POST Response
If successful, returns the connListItem object. Returns the error object if errors occur.

fileRecord
Use this resource to upload an integration template XML file or image file to your organization. You can also
use this resource to delete an integration template XML file or image file from the organization.

POST Request
To upload an integration template XML file or image file, use the following URI.
/api/v2/fileRecord

You can upload a file up to 5 MB in size.

Note: Encode the request body as multipart/form-data.

Use the following attributes in the request body.

file
Required.

Content of the file that you want to upload. File content should be in binary format, UTF-8 encoding.

type
Required.

Type of file that you want to upload. Use one of the following values:

MAPPING. Use to upload an integration template XML file. Use for XML files only.
IMAGE. Use to update an image file for an integration template. Use for JPEG or PNG files only.

fileRecord 101
In addition to the POST attributes, pass the following information in the request body:

Boundary value. Used to define different parts of the request body.


File name. The file name of the content you want to upload.
icSessionId. Informatica Cloud session ID returned by the login resource. You can pass this information in
the request body for clients that do not allow custom headers. If you can pass icSessionId as part of the
request header, you can omit this information in the request body.

Use the following template for the fileRecord POST request:


URL: <serverUrl>/api/v2/fileRecord/
HTTP method: POST

Content-Type:multipart/form-data;boundary=<boundary value>
--<boundary value>
Content-Disposition:form-data; name="file";filename="<filename.ext>";Content-Type:text/
<xml|json>

<content of the file you want to upload encoded as UTF-8>

--<boundary value>
Content-Disposition: form-data; name="type"

<MAPPING | IMAGE>
--<boundary value>
Content-Disposition: form-data; name="icSessionId"

<icSessionID returned from login resource>


--<boundary value>--

POST Response
Returns the fileRecord object if the upload is successful. Returns the error object if errors occur.

The fileRecord object includes the following attributes:

id
ID for the uploaded file. You can use this ID to identify the file when you create or update an integration
template with the masterTemplate resource.

orgId
Organization ID.

name
File name.

description
Description of the file.

createTime
Time the file was uploaded to the organization.

updateTime
Last time the file was updated.

createdBy
User who first uploaded the file.

updatedBy
User who last updated the file.

102 Chapter 2: Informatica Cloud REST API


type
File type.

size
File size.

attachTime
Time the file was associated with an integration template.

DELETE Request
You can delete an integration template XML or image file if the integration template is not used by an
integration template.

To delete a file, use the file ID in the following URI:


/api/v2/fileRecord/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To upload the IntegrationTemplate.xml file with an icSessionId of IV4wOrJmd6YUtmKa8t, you might use the
following request. XML data should be encoded in UTF-8.
URL: https://example.informatica.com/saas/api/v2/fileRecord/
HTTP method: POST

Content-Type:multipart/form-data;boundary=243553118520053
--243553118520053
Content-Disposition:form-data; name="file";filename="<IntegrationTemplate.xml>";Content-
Type:text/xml

<?xml version="1.0" encoding="utf-8"?>


<!DOCTYPE Graph SYSTEM "graph.dtd">
<Graph Name="" Description="" UItype="" DlgSize="">
<Groups />
<Parameters>
<Parameter Name="$EXTERNALID__C$" Label="" LabelWidth="" IsMandatory="True"
DefaultValue="" Control="" Data="" Description="" />
<Parameter Name="$TGT$" Label="" LabelWidth="" IsMandatory="True" DefaultValue=""
Control="Combo_Ctrl" Data="Targets" Description="" />
<Parameter Name="$GroupBy$" Label="" LabelWidth="" IsMandatory="True"
DefaultValue="" Control="" Data="" Description="" />
<Parameter Name="$o_PERCENT_FLD__C$" Label="" LabelWidth="" IsMandatory="True"
DefaultValue="" Control="" Data="" Description="" />
<Parameter Name="$SRC$" Label="" LabelWidth="" IsMandatory="True" DefaultValue=""
Control="Combo_Ctrl" Data="Sources" Description="" />
</Parameters>
<Node NameID="Source Definition" Name="$SRC$" Reusable="" Type="Source Definition"
InstanceName="$SRC$" Description="" isParameterized="True">
<CustomProperty Name="Source Table" Value="$SRC$" isParameterized="True" />
<CustomProperty Name="Database Name" Value="" isParameterized="False" />
<CustomProperty Name="Owner Name" Value="" isParameterized="False" />
<CustomProperty Name="Business Name" Value="" isParameterized="False" />
<CustomProperty Name="Database Type" Value="" isParameterized="False" />
<CustomProperty Name="Is ShortCut" Value="False" isParameterized="False" />
</Node>
.
.
.
<Link Name="Sheet.7" FromNameID="Aggregator" ToNameID="Target Definition"
MasterInputSet="False" isParameterized="False">
<Rule Text="Datatype:string" isParameterized="False" />

fileRecord 103
<Rule Text="EXCLUDE Named:AUTO__C (TO) AUTO__C" isParameterized="False" />
<Rule Text="Datatype:date/time" isParameterized="False" />
<Rule Text="Pattern:_o$" isParameterized="False" />
<Rule Text="Datatype:nstring" isParameterized="False" />
<Rule Text="Datatype:ntext" isParameterized="False" />
<Rule Text="Datatype:text" isParameterized="False" />
</Link>
</Graph>

--243553118520053
Content-Disposition: form-data; name="type"

MAPPING
--243553118520053
Content-Disposition: form-data; name="icSessionId"

IV4wOrJmd6YUtmKa8t
--243553118520053--

If the upload is successful, returns the fileRecord response object.

fwConfig
Use the fwConfig resource to configure column widths for flat file source, lookup, and target objects.

GET Request
To request all of the fixed-width formats, use the following URI:
/api/v2/fwConfig

To request the details of a particular fixed-width format, you can include the fixed-width format ID or fixed-
width format name in the URI. Use one of the following URIs:
/api/v2/fwConfig/<id>
/api/v2/fwConfig/name/<name>

If you use the fixed-width format name in the URI and the fixed-width format name includes a space, replace
the space with %20. For example:
/api/v2/fwConfig/name/my%20fixedwidth%20format

GET Response
The fwConfig object returns the following attributes:
id
Fixed-width format ID.

name
Fixed-width format name.

description

Description of the fixed-width format.

createTime
Time that the fixed-width format was created.

updateTime
Last time that the fixed-width format was updated.

104 Chapter 2: Informatica Cloud REST API


createdBy
User who created the fixed-width format.

updatedBy
User who updated the fixed-width format.

lineSequential
Whether each row ends with a newline character.

True. Line sequential is enabled.


False. Line sequential is not enabled.

padBytes
Number of bytes between the last column of one row and the first column of the next.

skipRows
Number of rows to skip. You can skip blank or header rows.

nullChar
The character to represent a null value.

dateFormat
Default date format to use when a date format is not specified in the flat file connection.

nullCharType
Determines if the null character is single-byte or multibyte.

repeatNullChar
Determines how to treat null characters in a single field.

True. Read repeat null characters as a single null value.


False. does not read repeat null characters as a single null value.

stripTrailingBlank
Determines how to treat trailing blanks in string values.

True. Removes trailing blanks from string values.


False. Does not remove trailing blanks in string values.

Columns
Includes the following attributes for each column:

name. Name of the column.


nativeType. Native data type.
precision. Length of the field in bytes.
scale. Number of digits after the decimal point for numeric values.

GET Example
The following example shows a request to get details for a fixed-width format using the fixed-width format ID:
GET <serverUrl>/api/v2/fwConfig/00001R29000000000002 HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

fwConfig 105
The following text is a sample response:
{
"@type": "fwConfig",
"id": "00001R29000000000002",
"orgId": "00001R",
"name": "item",
"description": "",
"createTime": "2016-10-06T17:08:09.000Z",
"updateTime": "2016-10-06T17:08:09.000Z",
"createdBy": "[email protected]",
"updatedBy": "[email protected]",
"lineSequential": true,
"padBytes": 0,
"skipRows": 0,
"nullChar": "*",
"nullCharType": "ASCII",
"repeatNullChar": false,
"stripTrailingBlank": false,
"dateFormat": "",
"columns": [
{
"@type": "fwColumn",
"name": "COLUMN_0",
"nativeType": "string",
"precision": 1,
"physicalLength": 0,
"scale": 0
},
{
"@type": "fwColumn",
"name": "COLUMN_1",
"nativeType": "string",
"precision": 9,
"physicalLength": 0,
"scale": 0
},
{
"@type": "fwColumn",
"name": "COLUMN_2",
"nativeType": "string",
"precision": 10,
"physicalLength": 0,
"scale": 0
}
]
}

POST Request
To update a fixed-width format, use the fixed-width format ID in the following URI. To create a fixed-width
format, omit the optional ID.
/api/v2/fwConfig/<id>

You can submit a partial update using partial mode. If you want to update a field in the fwColumn object using
partial mode, you must include the name. To submit a request using partial mode, use a JSON request and
include the following line in the header:
Update-Mode=PARTIAL

You can use the following attributes in a fwConfig POST request:


id
Fixed-width format ID.

name
Fixed-width format name.

106 Chapter 2: Informatica Cloud REST API


description

Description of the fixed-width format.

createTime
Time that the fixed-width format was created.

updateTime
Last time that the fixed-width format was updated.

createdBy
User who created the fixed-width format.

updatedBy
User who updated the fixed-width format.

lineSequential
Determines whether to end each row with a newline character.

True. Line sequential is enabled.


False. Line sequential is not enabled.

padBytes
Number of bytes between the last column of one row and the first column of the next.

skipRows
Number of rows to skip. You can skip blank or header rows.

nullChar
The character to represent a null value.

nullCharType
Whether the null character is single-byte or multibyte.

repeatNullChar
Whether repeat null characters in a single field read as a single null value.

True. Repeat null characters read as a single null value.


False. Repeat null characters do not read as a single null value.

stripTrailingBlank
Whether trailing blanks are removed from string values.

True. Trailing blanks are removed from string values.


False. Trailing blanks remain in string values.

Columns
Include the following attributes for each column in the fwColumn object:

name. Name of the column. Key field for the fwColumn collection.
nativeType. Native data type.
precision. Length of the field in bytes.
scale. Number of digits after the decimal point for numeric values.

POST Response
If successful, returns the fwConfig object that you created or updated. Returns the error object if errors occur.

fwConfig 107
POST Example
POST <serverURL>/api/v2/fwConfig/00000103000000000004 HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type": "fwConfig",
"name": "FW_FILE_CONFIG_1",
"description": "Test description",
"lineSequential": false,
"padBytes": 1,
"skipRows": 2,
"nullChar": "*",
"nullCharType": "ASCII",
"repeatNullChar": false,
"stripTrailingBlank": false,
"columns": [
{
"@type": "fwColumn",
"name": "ASCII",
"nativeType": "string",
"precision": 10
}
]
}

DELETE Request
To delete a fixed-width format, use the fixed-width format ID in the following URI:
/api/v2/fwConfig/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

job
Use this resource to start or stop an Informatica Cloud task or task flow based on ID or name. You can also
retrieve job completion status. Use the task resource to retrieve the ID and name of a task or task flow.

Start POST Request


To start a task or task flow, use the following URI:
/api/v2/job

With this URI, use the following attributes in a job object:

taskId
Task or task flow ID. Use taskId or taskName in the URI.

taskName
Task or task flow name. Use taskId or taskName in the URI.

taskType
Type of task or task flow. Use one of the following options:

AVS. Contact Validation task.

108 Chapter 2: Informatica Cloud REST API


DMASK. Data masking task.
DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.
Workflow. Task flow.
DNB_WORKFLOW. D&B360 workflow.

callbackURL
A valid, publicly available URL. The service posts the job status to the callbackURL.

Start POST Response


Returns the job object if the request is successful. Returns an error object if errors occur.

The job object includes the following attributes:

taskId
Task or task flow ID.

taskName
Task or task flow name.

taskType
Type of task or task flow. Returns one of the following codes:

AVS. Contact Validation task.


DMASK. Data masking task.
DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.
Workflow. Task flow.
DNB_WORKFLOW. D&B360 workflow.

runId
ID of the job.

callbackURL
Status of the job.

Stop POST Request


To stop a task or task flow, use the following URI:
/api/v2/job/stop

With this URI, use the following attributes in a job object:

taskId
Task or task flow ID. Use taskId or taskName in the URI.

job 109
taskName
Task or task flow name. Use taskId or taskName in the URI.

taskType
Type of task or task flow. Use one of the following options:

AVS. Contact Validation task.


DMASK. Data masking task.
DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.
Workflow. Task flow.
DNB_WORKFLOW. D&B360 workflow.

Stop POST Response


Returns the success object if the request is successful. Returns the error object if errors occur.

Stop POST Example


To stop a task flow with an ID of 0034J90000000M in JSON, you might use the following request:
POST <serverUrl>/api/v2/job/stop HTTP/1.0
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>

{
"@type": "job",
"taskId": "0034J90000000M",
"taskType": "Workflow"
}

Job Status Example


When you include the callbackURL in the job request, the service sends a request to the callback URL when
the job completes. The service always uses a JSON request for callbacks.

A callback might be called multiple times because of a system failure or incorrect server response. When the
service sends a request to the callback URL, the endpoint on your server must return a 200 HTTP code
within 30 seconds. Otherwise, the URL connection breaks and the service counts the break as a failed
attempt. The server will make a total of three attempts.

The service executes the POST request from the callback URL. The following text is a sample return:
{
@type:"callbackUrlResponse"
endTime: "2013-02-27T18:57:52.000Z",
objectId: "0034J90000000M",
objectName: "taskName",
runId: 5,
status: "COMPLETED" // or FAILED
}

110 Chapter 2: Informatica Cloud REST API


licenseInfo
Use this resource to get license information about organizations and assign licenses to sub-organizations. In
order to assign licenses to a sub-organization, you must log in to the parent organization as an administrator.

GET Request
To request license information for an organization or sub-organization, use the organization ID in the
following URI:
/api/v2/licenseInfo/org/<id>

GET Response
If successful, returns the license information for the specified organization ID in the orgLicenseInfo object.
The orgLicenseInfo object includes the following attributes:

Attribute Description

orgId Organization ID.

orgEdition The Informatica Cloud edition. Includes the following attributes:


- name
- expirationDate
- clearCustomLicenses
- extendCustomLicenses

licenseInfo 111
Attribute Description

licenseInfo License information for the specified organization. Includes the following attributes:
- licenses. Includes the following attributes in the license object:
- licenseName
- licenseType. Indicates whether the licence is trial, subscription, or free subscription.
- licenseCategory. The category of the license item, either service or feature.
- disabled. A value of "true" indicates that the license is disabled.
- childLicenses
- licenseParams
- expirationDate
- maxTotalJobs
- maxMonthlyJobs
- maxDailyJobs
- maxTotalRows
- maxMonthlyRows
- maxDailyRows
- connectorLicenses. Includes the following attributes:
- uuid. Unique identifier for the connector.
- connectorName
- licenseType. Indicates whether the connector license type is trial or subscription.
- expirationDate
- packageLicenses. Licensed connector packages. Includes the following attributes in the packageLicense
object for each package:
- packageName
- disabled. A value of "true" indicates that the package is disabled.
- bundleLicenses. Returns a bundleObjectLicense object for each bundle license. See
bundleObjectLicense on page 66 .

serviceUsage For service licenses, includes the following attributes:


- serviceName
- totalJobs
- monthlyJobs
- dailyJobs
- totalRows
- monthlyRows
- dailyRows

GET Example
To request license information for an organization, you might use the following request:
GET <serverURL>/api/v2/licenseInfo/org/00001R HTTP/1.0
Content-Type: application/json
Accept: application/json

The following text is a sample response:

{
"@type": "orgLicenseInfo",
"orgId": "00001R",
"orgEdition": {
"name": "Default ICS Edition",
"expirationDate": "2018-11-23",
"overwriteCustomLicenses": true
}

POST Request
To assign licenses to a sub-organization, use the organization ID in the following URI:
/api/v2/licenseInfo/org/<id>

Submit the orgLicenseInfo object that includes license changes for the sub-organization.

112 Chapter 2: Informatica Cloud REST API


POST Response
If successful, returns the orgLicenseInfo object for the sub-organization.

POST Example
To assign a license, you might use the following request:
POST <serverURL>/api/v2/licenseInfo/org/00001R HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type": "orgLicenseInfo",

"licenseInfo": {
"@type": "licenseInfo",
"licenses": [
{
"@type": "license",
"licenseName": "PCS",
"licenseCategory": "SERVICE",
"licenseType": "TRIAL",
"expirationDate": "2018-11-23",
"maxTotalJobs": 0,
"maxMonthlyJobs": 250,
"maxDailyJobs": 24,
"maxTotalRows": 0,
"maxMonthlyRows": 300000,
"maxDailyRows": 10000,
"childLicenses": [],
"licenseParams": []
}
]
}
}

login
Use this resource to log in to an Informatica Cloud organization with Informatica Cloud or Salesforce
credentials. Returns a two hour REST API session ID that you can use for subsequent REST API requests.
After the session ID expires, log in again to continue working with the REST API. Use the logout resource to
end the session. For SAML single sign-on, use the loginSaml resource.

For information on retrieving session status details, see Session IDs on page 33.

POST Request
You can log in to an organization with your Informatica Cloud user name and password. Or, you can log in
with a Salesforce session ID and Salesforce server URL.

To log in with your Informatica Cloud user name and password, use the following URL:
https://app.informaticaondemand.com/ma/api/v2/user/login

With this URL, use the following attributes in a login object:

username
Required.

Informatica Cloud user name.

login 113
password
Required.

Informatica Cloud password.

To log in using a Salesforce session ID and Salesforce server URL, use the following URL:
https://app.informaticaondemand.com/ma/api/v2/user/loginSf

You can use Salesforce information to log in to Informatica Cloud if you have included your Salesforce user
name in your Informatica Cloud user account.

You can use the Salesforce Web Services API to generate a Salesforce session ID and to retrieve the
Salesforce server URL. For more information, see the login resource in the Salesforce Web Services API
Developer's Guide.

With this URL, use the following attributes in a login object:


sfSessionId
Required.

Salesforce session ID. For information about generating the Salesforce session ID, see the login
resource in the Salesforce Web Services API Developer's Guide.

sfServerUrl
Required.

Salesforce server URL. You can retrieve the Salesforce server URL from the Salesforce Web Services
API login resource response.

POST Response
Returns the user object if the request is successful. Returns the error object if errors occur.

The user object includes the following attributes:


id
User ID.

orgId
ID of the organization the user belongs to.

name
Informatica Cloud user name.

description
Description of the user.

createTime
When the user account was created.

updateTime
When the user account was last updated.

createdBy
Informatica Cloud user who created the user account.

updatedBy
Informatica Cloud user who last updated the user account.

114 Chapter 2: Informatica Cloud REST API


sfUsername
Salesforce user name.

password
Password. If using sfUsername, this is the Salesforce password.

firstName
First name for the user account.

lastName
Last name for the user account.

title
Title of the user.

phone
Phone number for the user.

securityQuestion
Security question. Returns one of the following codes:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

securityAnswer
Answer to the security question.

roles
Roles assigned to the user. The following attributes are included in a role object for each role:
name
Role name. Returns one of the following codes:

SERVICE_CONSUMER
DESIGNER
ADMIN

description
Description.

usergroups
User group assigned to the user. The following attributes are included in a usergroup object for each
user group:
id
User group ID.

orgId
Organization ID.

login 115
name
User group name.

description
Description.

createTime
Time the user group was created.

updateTime
Last time the user group was updated.

createdBy
User who created the user group.

updatedBy
User who last updated the user group.

aclEntry
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for
each object type. For more information about the aclEntry object, see the usergroup on page 188
resource.

emails
Email address to be notified when the user changes the account password.

If you pass multiple email addresses in this field, Informatica Cloud uses the first email address in the
list.

timezone

Time zone of the user. Time zone honors Daylight Saving Time.

For more information, see Appendix A , Time Zone Codes on page 205.

serverUrl
Informatica Cloud URL for the organization the user belongs to. Use the serverUrl as a base for most
REST API resource URIs.

spiUrl
Informatica Cloud Application Integration URL for the organization the user belongs to.

uuId
Unique identifier for the user.

icSessionId
Informatica Cloud REST API session ID. Use in most REST API request headers.

forceChangePassword
Determines if the user must reset the password after the user logs in for the first time. Includes the
following values:

True. The user must reset the password.


False. The user is not forced to reset the password.

116 Chapter 2: Informatica Cloud REST API


POST Example
To log in to your Informatica Cloud organization using Informatica Cloud credentials, you might use the
following request:
POST https://app.informaticaondemand.com/ma/api/v2/user/login HTTP/1.0
Content-Type: application/json
Accept: application/json

{
"@type": "login",
"username": "[email protected]",
"password": "mypassword"
}

If successful, returns the user object.

logout
Use this resource to log out of an organization and end the REST API session specified in the request.

POST Request
To log out an organization and end the REST API session, include the Informatica Cloud session ID in the
request header with the following URI.
/api/v2/user/logout

POST Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To log out of your Informatica Cloud organization using Informatica Cloud credentials, you might use the
following request:
POST <serverURL>/api/v2/user/logout HTTP/1.0
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>

logoutall
Use this resource to log out of an organization and end all REST API sessions for the organization.

POST Request
To log out of an organization and end all REST API sessions for the organization, use the following URL:
https://app.informaticaondemand.com/ma/api/v2/user/logoutall

With this URL, use the following attributes in a logout object:

logout 117
username
Informatica Cloud user name.

password
Informatica Cloud password.

POST Response
Returns the success object if the request is successful.

Returns the error object if errors occur.

POST Example
To log out of an organization and all REST API sessions, you might use the following request:
POST https://app.informaticaondemand.com/ma/api/v2/user/logoutall HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type": "logout",
"username": "[email protected]",
"password": "mypassword"
}

loginSaml
Use this resource to log in to an Informatica Cloud organization using SAML single sign-on and to log out of a
SAML single sign-on session. Log in request returns a two hour REST API session ID that you can use for
subsequent REST API requests. After the session ID expires, log in again to continue working with the REST
API. Use the logout resource to end the session.

For information on retrieving session status details, see Session IDs on page 33.

POST Request
You can log in to an organization using SAML single sign-on credentials.

Use the following URL:


https://app.informaticaondemand.com/ma/api/v2/user/loginSaml

With this URL, use the following attributes in a loginSaml object:

samlToken
Required.

SAML login token.

orgId
Required.

Informatica Cloud organization ID.

POST Response
Returns the user object if the request is successful. Returns the error object if errors occur.

The user object includes the following attributes:

118 Chapter 2: Informatica Cloud REST API


id
User ID.

orgId
ID of the organization the user belongs to.

name
Informatica Cloud user name.

description
Description of the user.

createTime
When the user account was last updated.

updateTime
When the user account was last updated.

createdBy
Informatica Cloud user who created the user account.

updatedBy
Informatica Cloud user who last updated the user account.

firstName
First name for the user account.

lastName
Last name for the user account.

title
Title of the user.

phone
Phone number for the user.

roles
Roles assigned to the user. The following attributes are included in a role object for each role:
name
Role. name. Returns one of the following codes:

SERVICE_CONSUMER
DESIGNER
ADMIN

description
Description.

usergroups
User group assigned to the user. The following attributes are included in a usergroup object for each
user group:
id
User group ID.

loginSaml 119
orgId
Organization ID.

name
User group name.

description
Description.

createTime
When the user group was last updated.

updateTime
When the user group was last updated.

createdBy
Informatica Cloud user who created the user group.

updatedBy
Informatica Cloud user who last updated the user group.

aclEntry
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for
each object type. For more information about the aclEntry object, see the usergroup resource.

emails
Email addresses to be notified when the user changes the account password.

timezone
Time zone of the user. Time zone honors Daylight Saving Time.

For more information, see Appendix A, Time Zone Codes.

type
Connection type returns one of the following responses:

CSVFile. CSV flat file.


FTP.
MS_ACCESS.
MSD. Microsoft Dynamics CRM.
MySQL.
ODBC.
Oracle.
OCOD. Oracle CRM On Demand.
Salesforce.
SFTP. Secure FTP.
SAP_ALE_IDoc_Reader. SAP IDoc Reader.
SAP_ALE_IDoc_Writer. SAP IDoc Writer.
SqlServer. Microsoft SQL Server 2000.
SqlServer2005. Microsoft SQL Server 2005.

120 Chapter 2: Informatica Cloud REST API


SqlServer2008. Microsoft SQL Server 2008.
SqlServer2012. Microsoft SQL Server 2012.
TOOLKIT. Informatica Cloud Connector.
WebServicesConsumer. Web Service.

serverUrl
Informatica Cloud URL for the organization the user belongs to. Use the serverUrl as a base for most
REST API resource URIs.

spiUrl
Informatica Cloud Application Integration URL for the organization the user belongs to.

uuId
Unique identifier for the user.

icSessionId
Informatica Cloud REST API session ID. Use in most REST API request headers.

POST Example
To log in to your Informatica Cloud organization using SAML single sign-on, you might use the following
request:
POST https://app.informaticaondemand.com/ma/api/v2/user/loginSaml HTTP/1.0
Content-Type: application/json
Accept: application/json

{
"@type": "loginSaml",
"samlToken": "<token>",
"orgId": "00342000"
}

If successful, returns the user object.

mapping
Use this resource to request the details for a mapping or the details of all mappings in the organization.

GET Request
To request the details of all mappings in the organization, use the following URI:
/api/v2/mapping

To request the details of a particular mapping, include the mapping ID or mapping name in the URI. Use one
of the following URIs:
/api/v2/mapping/<id>
/api/v2/mapping/name/<name>

If you use the mapping name in the URI and the mapping name value includes a space, replace the space
with %20. For example:
/api/v2/mapping/name/my%20mapping

mapping 121
You can also request a specific mapping by name with the following URI:
/api/v2/mapping/search?name=<name>

GET Response
If successful, returns the mapping object for the requested mapping.

If you request the details for all mappings, returns the mapping object for every mapping in the organization
without parameter details.

Returns the error object if errors occur.

The mapping object includes the following attributes:

id
Mapping ID.

orgId
Organization ID.

name
Mapping name.

description
Description of the mapping.

createTime
Time the mapping was created.

updateTime
Last time the mapping was updated.

createdBy
User who created the mapping.

updatedBy
User who last updated the mapping.

bundleObjectId
ID of the bundle that includes the mapping, if applicable.

bundleVersion
Version of the bundle that includes the mapping, if applicable.

templateId
ID of the template created internally to represent the mapping.

deployTime
Time the mapping was deployed.

hasParameters
Indicates if the mapping includes parameters. Returns the following values:

TRUE. The mapping includes parameters.


FALSE. The mapping does not include parameters.

122 Chapter 2: Informatica Cloud REST API


valid
Indicates if the mapping is valid. Returns the following values:

TRUE. The mapping is valid.


FALSE. The mapping is not valid.

fixedConnection
Indicates if the mapping has fixed connections. Returns the following values:

TRUE. The mapping includes fixed connections.


FALSE. The mapping does not include fixed connections.

hasParametersDeployed
Indicates if the mapping has parameters deployed. Returns the following values:

TRUE. The mapping has parameters deployed.


FALSE. The mapping does not have parameters deployed.

fixedConnectionDeployed
Indicates if the mapping has fixed connections deployed. Returns the following values:

TRUE. The mapping has fixed connections deployed.


FALSE. The mapping does not have fixed connections deployed.

deployedTemplateId
ID of the template created internally to represent the deployed mapping.

tasks
Number of tasks that use the mapping.

parameters

Parameters used in the mapping.

Includes the following attributes in the mtTaskParameter object for each parameter:

id
Parameter ID.

name
Parameter name.

label
Parameter label.

type
Parameter type.

description
Parameter description.

customFuncId
Mapplet ID for mapplet type parameters.

mapping 123
uiProperties
Display property for the parameter. Includes the following information:

cnxtype. Connection type for the parameter.


logcnx. Logical connection.
order. Display order.
wizstep. Wizard step to display the parameter.
default. Default value.
visible. Whether the parameter is visible.
editable. Whether the parameter is editable.
required. Whether the parameter is required.
paramtype. UI control type for string parameters. Returns one of the following responses:
- Condition. Filter condition input control.

- Expression. Expression editor input control.

- Field. Field selection input control.

- Fieldmap. Field mapping input control. Includes the following attributes:

- lefttitle. Left title for the field mapping display.

- righttitle. Right title for the field mapping display.

- leftfs. Set of fields to display in the left table of the field mapping display.

- rightfs. Set of fields to display in the right table of the field mapping display.

- leftfilter. Regular expression to limit the fields that display in the left table of the field mapping
display.
- rightfilter. Regular expression to limit the fields that display in the right table of the field
mapping display.
- staticlist. List of fields to display on the right side of the field mapping display.

inOutParameters
In-out parameters used in the mapping.

Includes the following attributes in the mtTaskInOutParameter object for each in-out parameter:

id
name
description
initialValue
datatype
precision
scale
retentionPolicy
aggregationType
currentValue

mappingPreviewFileRecordId
ID of the image file that is used when previewing a mapping.

124 Chapter 2: Informatica Cloud REST API


deployedMappingPreviewFileRecordId
ID of the image file that is used when previewing a deployed mapping.

references
Reference information. Returns the reference object, which includes the following attributes:

refObjectId
refType

GET Example
To request mapping details for all mappings in the organization, you might use the following request:
GET <serverUrl>/api/v2/mapping HTTP/1.0
Accept: application/xml
icSessionId: <icSessionId>

masterTemplate
Use this resource to request the details for an integration template or the details of all integration templates in
the organization. You can create or update an integration template, and request a list of mapping
configuration tasks that use the template. You can also delete an integration template.

GET Request
To request the details of all integration templates in the organization, use the following URI:
/api/v2/masterTemplate

To request the details of a particular integration template, include the integration template ID or integration
template name in the URI. Use one of the following URIs:
/api/v2/masterTemplate/<id>
/api/v2/masterTemplate/name/<name>

If you use the integration template name in the URI and the integration template name includes a space,
replace the space with %20. For example:
/api/v2/masterTemplate/name/my%20integration%20template

To request a list of mapping configuration tasks that use an integration template, use the integration template
ID in the following URI:
/api/v2/masterTemplate/<id>/tasks

GET Response
If successful, returns the masterTemplate object for the requested integration template. If you request the
details for all integration templates, returns the masterTemplate object without parameter details for every
integration template in the organization.

Returns the error object if errors occur.

The masterTemplate object includes the following attributes:

id
Integration template ID.

masterTemplate 125
orgId
Organization ID.

name
Integration template name.

description
Description of the integration template.

createTime
Time the integration template was created.

updateTime
Last time the integration template was updated.

createdBy
User who created the integration template.

updatedBy
User who last updated the integration template.

diFileRecordId
ID of the integration template XML file.

templateImageId
ID of the integration template image file.

parameters
Parameters used in the integration template. The following attributes are included in the mtParameter
object for each parameter:

id
Parameter ID.

name
Parameter name.

label
Parameter label.

type
Parameter type.

description
Parameter description.

customFuncId
Mapplet ID for mapplet type parameters.

uiProperties
Display property for the parameter. Includes the following information:

cnxtype. Connection type for the parameter.


logcnx. Logical connection.

126 Chapter 2: Informatica Cloud REST API


order. Display order.
wizstep. Wizard step to display the parameter.
default. Default value.
visible. Whether the parameter is visible.
editable. Whether the parameter is editable.
required. Whether the parameter is required.
paramtype. UI control type for string parameters. Returns one of the following responses:
- Condition. Filter condition input control.

- Expression. Expression editor input control.

- Field. Field selection input control.

- Fieldmap. Field mapping input control. Includes the following attributes:

- lefttitle. Left title for the field mapping display.

- righttitle. Right title for the field mapping display.

- leftfs. Set of fields to display in the left table of the field mapping display.

- rightfs. Set of fields to display in the right table of the field mapping display.

- leftfilter. Regular expression to limit the fields that display in the left table of the field mapping
display.
- rightfilter. Regular expression to limit the fields that display in the right table of the field
mapping display.
- staticlist. List of fields to display on the right side of the field mapping display.

sessionAttrs
General and performance session properties for the task. Can include the following attributes:

Write Backward Compatible Session Log File


Writes the session log to a file.

Session Log File Name


Name for the session log.

Session Log File Directory


Directory where the session log is saved.

$Source Connection Value


Source connection name.

$Target Connection Value


Target connection name.

Treat Source Rows as


When the Mapping Configuration application reads source data, it marks each row with an
indicator to specify the operation to perform when the row reaches the target:

Insert. All rows are marked for insert into the target.
Update. All rows are marked for update in the target.
Delete. All rows are marked for delete from the target.

masterTemplate 127
Data Driven. The application uses the Update Strategyobject in the data flow to mark the
operation for each source row.

Commit Type

Commit type to use:

Source. Performs commits based on the number of source rows.


Target. Performs commits based on the number of target rows.
User Defined. Performs commits based on the commit logic defined in the integration template.

If you do not configure a commit type, the application performs a target commit.

Commit Interval

Interval in rows between commits.

If you do not configure a commit interval, the application commits every 10,000 rows.

Commit on End of File


Commits data at the end of the file:

true.
false.

Rollback Transactions on Errors

If the application encounters a non-fatal error, you can choose to roll back the transaction at the
next commit point.

When the application encounters a transformation error, it rolls back the transaction if the error
occurs after the effective transaction generator for the target.

Java Classpath
Java classpath to use.

DTM Buffer Size


Amount of memory allocated to the task from the DTM process.

Incremental Aggregation
Performs incremental aggregation.

true.
false.

Reinitialize Aggregate Cache


Overwrites existing aggregate files for an incremental aggregation task.

true.
false.

Enable High Precision


rocesses the Decimal datatype to a precision of 28.

true.
false.

128 Chapter 2: Informatica Cloud REST API


Session Retry on Deadlock
The Mapping Configuration application retries a write on the target when a deadlock occurs.

true.
false.

POST Request
To update an integration template, use the integration template ID in the following URI. To create a new
integration template, omit the optional integration template ID.
/api/v2/masterTemplate/<id>

You can submit a partial update using partial mode. If you want to update a field in the mtParameter object
using partial mode, you must include the name or type fields. To submit a request using partial mode, use a
JSON request and include the following line in the header:
Update-Mode=PARTIAL

You can use the following attributes in a masterTemplate object:

name
Required.

Name of the integration template.

description
Optional.

Description of the integration template.

diFileRecordId
Required.

Integration template XML file ID.

Use the ID returned when you upload the file to the organization with the fileRecord resource.

templateImageId
Optional.

Integration template image file ID.

This ID is returned when you upload the file to the organization with the fileRecord resource.

parameters

Object that defines parameters associated with the template.

Use an mtParameter object to define the following attributes for each parameter:

name
Required. Key field for the mtParameter collection.

Parameter name.

label
Optional.

Parameter label.

type
Required. Key field for the mtParameter collection.

masterTemplate 129
Parameter type. Use one of the following values:

STRING
SOURCE
TARGET
MAPPLET
LOOKUP

description
Optional.

Parameter description.

customFuncId
Optional.

Mapplet ID for mapplet type parameters.

uiProperties
Optional.

Display properties for the parameter.

Use a UIPropertyType object to define the following display properties:

cnxtype. Connection type for the parameter. Use a valid connection type. For more information,
see the connection resource.
logcnx. Logical connection.
order. Display order.
wizstep. Wizard step to display parameter.
default. Default value.
visible. Whether the parameter is visible. Use True or False.
editable. Whether the parameter is editable. Use True or False.
required. Whether the parameter is required. Use True or False.
paramtype. UI control type for string parameters. Use one of the following values:
- Condition. Filter condition control.

- Expression. Expression editor control.

- Field. Field selection control.

- Fieldmap. Field mapping input control. Includes the following attributes:

- lefttitle. Left title for the field mapping display.

- righttitle. Right title for the field mapping display.

- leftfs. Set of fields to display in the left table of the field mapping display.

- rightfs. Set of fields to display in the right table of the field mapping display.

- leftfilter. Regular expression to limit the fields that display in the left table of the field mapping
display.

130 Chapter 2: Informatica Cloud REST API


- rightfilter. Regular expression to limit the fields that display in the right table of the field
mapping display.
- staticlist. List of fields to display on the right side of the field mapping display. Use instead of
rightfs.
List field names and associated datatypes separated by a line break or semicolon.

sessionAttrs
Optional.

Object that defines the general and performace session properties for the task.

Use a SessionAttrsType object to define any of the following properties that you want to use:

Write Backward Compatible Session Log File


Optional.

Writes the session log to a file.

true.
false.

Session Log File Name


Optional.

Name for the session log.

Use any valid file name. You can use the following variables as part of the session log name:

$CurrentTaskName. Replaced with the task name.


$CurrentTime. Replaced with the current time.

Session Log File Directory


Optional.

Directory where the session log is saved.

By default, the session log is saved to the following directory: <SecureAgent_InstallDir>/main/


rdtmDir/logs.

$Source Connection Value


Optional.

Source connection name.

$Target Connection Value


Optional.

Target connection name.

Treat Source Rows as


Optional.

When the Mapping Configuration application reads source data, it marks each row with an indicator
to specify the operation to perform when the row reaches the target.

Use one of the following values:

Insert. All rows are marked for insert into the target.

masterTemplate 131
Update. All rows are marked for update in the target.
Delete. All rows are marked for delete from the target.
Data Driven. The application uses the Update Strategyobject in the data flow to mark the
operation for each source row.

Commit Type
Optional.

Commit type to use. Use one of the following values:

Source. Performs commits based on the number of source rows.


Target. Performs commits based on the number of target rows.
User Defined. Performs commits based on the commit logic defined in the integration template.

If you do not configure a commit type, the application performs a target commit.

Commit Interval
Optional.

Interval in rows between commits.

If you do not configure a commit interval, the application commits every 10,000 rows.

Commit on End of File


Optional.

Commits data at the end of the file.

true.
false.

Rollback Transactions on Errors


Optional.

If the application encounters a non-fatal error, you can choose to roll back the transaction at the
next commit point.

When the application encounters a transformation error, it rolls back the transaction if the error
occurs after the effective transaction generator for the target.

true.
false.

Java Classpath
Optional.

Java classpath to use.

The Java Classpath that you enter is added to the beginning of the system classpath when the task
runs.

Use this option if you use third-party Java packages, builtin Java packages, or custom Java
packages in a Java transformation.

DTM Buffer Size


Optional.

Amount of memory allocated to the task from the DTM process.

132 Chapter 2: Informatica Cloud REST API


By default, a minimum of 12 MB is allocated to the buffer at run time.

You can specify auto or a numeric value. If you enter 2000, the Mapping Configuration application
interprets the number as 2000 bytes. Append KB, MB, or GB to the value to specify other units.

Increase the DTM buffer size in the following circumstances:

A task contains large amounts of character data.


Increase the DTM buffer size to 24 MB.
A session contains n partitions. Increase the DTM buffer size to at least n times the value for the
task with one partition.
A source contains a large binary object with a precision larger than the allocated DTM buffer
size.
Increase the DTM buffer size so that the task does not fail.

Incremental Aggregation
Optional.

Performs incremental aggregation.

true.
false.

Reinitialize Aggregate Cache


Optional.

Overwrites existing aggregate files for an incremental aggregation task.

true.
false.

Enable High Precision


Optional.

Processes the Decimal datatype to a precision of 28.

true.
false.

Session Retry on Deadlock


Optional.

The Mapping Configuration application retries a write on the target when a deadlock occurs.

true.
false.

POST Response
If the request to create or update an integration template is successful, returns the master template object for
the integration template that you created or updated.

Returns the error code if errors occur.

DELETE Request
To delete an integration template, use the integration template ID in the following URI:
/api/v2/masterTemplate/<id>

masterTemplate 133
DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

GET Example

To request a list of tasks that use an integration template with an ID of 000043T1000003G, you might use the
following request:
GET <serverUrl>/api/v2/masterTemplate/000043T1000003G/tasks HTTP/1.0
Accept: application/xml
icSessionId: <icSessionId>

If successful, returns the mtTask object with id, orgId, name, and masterTemplateId for each task that uses
the integration template.

mttask
Use this resource to request the details of a Mapping Configuration task. You can also create, update, or
delete a Mapping Configuration task.

Note: You cannot use the REST API to create a Mapping Configuration task based on a mapping that
includes a mapplet.

GET Request
To request the details of a Mapping Configuration task, you can use the task ID or task name. Use one of the
following URIs:
/api/v2/mttask/<id>
/api/v2/mttask/name/<name>

If you use the task name in the URI and the task name includes a space, replace the space with %20. For
example:
/api/v2/mttask/name/task%20name

GET Response
Returns the mtTask object for the requested task ID or task name.

Returns the error object if errors occurred.

The following table describes attributes in an mtTask object:

Attribute Description

id Task ID.

orgId Organization ID.

name Task name.

description Description.

134 Chapter 2: Informatica Cloud REST API


Attribute Description

createTime Time the task was created.

updateTime Last time the task was updated.

createdBy User who created the task.

updatedBy User who last updated the task.

errorTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task
fails to complete.

successTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task
completes successfully.

warningTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task
completes with errors.

mttask 135
Attribute Description

parameters Parameters associated with the task.


Includes the following attributes in the mtTaskParameter object for each parameter:
id

Parameter ID.

name

Parameter name.

type

Parameter type.

indx

Sort index. Not used.

text

Parameter value.

label

Parameter label.

description
Parameter description.

sourceConnectionId

Source connection ID.

targetConnectionId

Target connection ID.

lookupConnectionId

Lookup connection ID.

transfConnectionId

Connection ID of mapplet. Reserved for future use.

midstreamConnectionId

Connection ID of midstream transformation.

sourceObject

Source object name.

sourceObjectLabel

Source object label.


targetObject

Target object name.

targetObjectLabel

Target object label.

136 Chapter 2: Informatica Cloud REST API


Attribute Description

lookupObject

Lookup object name.

lookupObjectLabel

Lookup object label.

midstreamObject

Midstream object name.

midstreamObjectLabel

Midstream object label.

newFlatFile

Deprecated. Use newObject instead.

Whether the application creates a new flat file target. Returns True when it creates a
target.

flatFileName

Deprecated. Use newObjectName instead.

Name of the flat file target.


newObject

Whether the application creates a new flat file target. Returns True when it creates a
target.

newObjectName

Name of the flat file target.

operationType

The task operation for the target.

truncateTarget

Whether the application truncates a database target before writing to it. Returns True
when it truncates the target.

srcFFAttrs

Object for the source file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.
- firstDataRow.
tgtFFAttrs

Object for the target file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.

mttask 137
Attribute Description

lkpFFAttrs

Object for the target file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.
- firstDataRow.
customFuncCfg

Attribute that defines configuration for mapplets used in the task. Includes the following
attributes in the customFuncConfig object for each mapplet:
- id. Mapplet ID.
- connections. Object to define connections used in a mapplet. Includes the following
attributes in the pcsConnection object for each connection:
- id.
- name. Connection name.
- type. Connection type.
- subtype. Connection subtype.
- description
- connectionId. Connection ID.

showBusinessNames
Whether the task displays business names. Returns True when it shows business
names.

naturalOrder

The order that the task uses to display fields. Returns True for the order returned by the
connection. Returns False for alphabetic order.

isRESTModernSource

Always set to True to enable extended objects.

customQuery

The custom query specified in Mapping Designer or Mapping Configuration task query
options.

overriddenFields

Changes to field metadata in the Mapping Configuration task. Includes the following
attributes in the mtTaskOverriddenField object:
- name
- type
- precision
- scale

tgtFieldRefs
Optional.

Salesforce field reference IDs.

extendedObject

The source or target with more than one object joined.

138 Chapter 2: Informatica Cloud REST API


Attribute Description

targetUpdateColumns

List of column names used to update records in the target object.

runtimeAttrs

Optional.

Advanced connection properties for connections used in a task.

Use a runtimeAttrs object to define key-value pairs of advanced connection properties.


Use an entry object for each key-value pair.

For the attribute name, use the advanced connection property name as displayed in the
Informatica Cloud application.

For more information about advanced connection properties, see the Informatica Cloud
Help.

sequences Defines values for the Sequence Generator transformation. Includes the following attributes
in the sequenceDefinition object:
- txName. Name of the Sequence Generator transformation.
- initialValue. The initial value of the sequence.
- currentValue. The value used for the last row added to the transformation.

inOutParameters In-out parameter used in the task. Includes the following attributes in the
mtTaskInOutParameter object for each in-out parameter:
- id
- name
- description
- initialValue
- datatype
- precision
- scale
- retentionPolicy
- aggregationType
- currentValue

agentId Agent that runs the task.

lastRunTime Time the task last run.

masterTemplateId Integration template ID. Returned when an integration template is the basis of the task.

mappingId Mapping ID. Returned when a mapping is the basis for the task.

scheduleId Schedule associated with the task flow, if any.

shortDescription The first 50 characters of the description.

sessionProperties Advanced session properties associated with the task.


Includes advanced session properties in a sessionProperties object

outboundMessageUrlToken Outbound message URL token for the task, if it exists.

outboundMessageUrlQueueTime Outbound message URL queue time for the task, if it exists.

mttask 139
Attribute Description

runtimeEnvironmentId Runtime environment used for the task.

preProcessingCmd Command to run before the task.

postProcessingCmd Command to run after the task completes.

parameterFileName The name of the parameter file used in the task.

POST Request
To update a Mapping Configuration task, use a Mapping Configuration task ID in the following URI. To create
a Mapping Configuration task, omit the optional task ID.
/api/v2/mttask/<id>

You can submit a partial update using partial mode. If you want to update a field that is within a collection
using partial mode, you must include the key field for the collection. The following table lists the collections in
the mttask resource and the corresponding key fields:

Collection Key Fields

mtTaskInOutParameter name

sequenceDefinition txName

mtTaskOverriddenField name

mtTaskParameter name
type

To submit a request using partial mode, use a JSON request and include the following line in the header:
Update-Mode=PARTIAL

140 Chapter 2: Informatica Cloud REST API


The following table describes the attributes you can use with the URI in an mtTask object:

Attribute Description

errorTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task fails to
complete.

successTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task
completes successfully.

warningTaskEmail Optional. Includes the following attributes in the taskEmail object:


id

ID.

emails

List of comma-separated email addresses that receive email notification when a task
completes with errors.

mttask 141
Attribute Description

parameters Attribute that defines parameters associated with the task.


Use an mtTaskParameter object to define the following attributes for each parameter:
id

System generated parameter ID. You cannot update this value.

name

Parameter name. Key field for the mtTaskParameter collection.

type

Parameter type. Key field for the mtTaskParameter collection. Use one of the following
values:
- STRING
- SOURCE
- TARGET
- MAPPLET
- LOOKUP

indx

Sort index. No longer used.

text

Parameter value.
label

Parameter label.

description

Parameter description.

sourceConnectionId

Source connection ID.

targetConnectionId

Target connection ID.

lookupConnectionId

Lookup connection ID.

newFlatFile

Whether Informatica Cloud creates a new flat file target. Use one of the following values:
- True. Creates a new target file.
- False. Does not create a target file.

flatFileName

Name of the flat file target.


newObject

Whether the application creates a new flat file target. Returns True when it creates a target.

newObjectName

Name of the flat file target.

142 Chapter 2: Informatica Cloud REST API


Attribute Description

operationType

The task operation for the target. Use one of the following values:
- Insert
- Upsert
- Update
- Delete
- Data driven

truncateTarget

Whether Informatica Cloud truncates a database target before writing to it. Use one of the
following values:
- True. Truncates the target.
- False. Does not truncate the target.

srcFFAttrs

Object for the source file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.
- firstDataRow.
tgtFFAttrs

Object for the target file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.
lkpFFAttrs

Object for the target file attributes. Includes the following attributes:
- id.
- delimiter.
- textQualifier.
- escapeChar.
- headerLineNo.
- firstDataRow.
customFuncCfg

Attribute to define configuration for mapplets used in the task. Use a customFuncConfig
object to define the following attributes for each mapplet:
- id.
- connections. Attribute to define connections used in a mapplet. Use a pcsConnection
object to define the following attributes for each connection:
- id.
- name. Connection name.
- type. Connection type.
- subtype. Connection subtype.
- description
- connection Id. Connection ID.
For more information about connections, see the connection resource.

mttask 143
Attribute Description

overriddenFields

Changes to field metadata. Includes the following attributes in the mtTaskOverriddenField


object:
- name. Key field for the mtTaskOverriddenField collection.
- type
- precision
- scale

tgtFieldRefs

Optional.

Salesforce field reference IDs.

runtimeAttrs

Optional.

Advanced connection properties for connections used in a task.

Use a runtimeAttrs object to define key-value pairs of advanced connection properties. Use
an entry object for each key-value pair.

For the attribute name, use the advanced connection property name as displayed in the
Informatica Cloud application.
For more information about advanced connection properties, see the Informatica Cloud
Help.

parameterFileName

Name of the parameter file used in the task.

masterTemplateId ID of the integration template used in the task.


Required when the task uses an integration template.

mappingId ID of the mapping used in the task.


Required when the task uses a mapping.

scheduleId Schedule associated with the task flow, if any.

sessionProperties Advanced session properties. Use a sessionProperties object to define key-value pairs of
advanced session properties. Use an entry object for each key-value pair.
For the attribute name, use the advanced session property name as displayed in the
Informatica Cloud application.

outboundMessageUrlToken Outbound message URL token for the task, if it exists.

outputMessageUrlQueueTime Outbound message URL queue time for the task, if it exists.

runtimeEnvironmentId ID of the runtime environment used for the task.

agentId Agent that runs the task.

144 Chapter 2: Informatica Cloud REST API


Attribute Description

sequences Defines values for the Sequence Generator transformation. The following attributes are
included in the sequenceDefinition object:
- txName. Name of the Sequence Generator transformation. Key field in the
sequenceDefinition collection.
- initialValue. The initial value of the sequence.
- currentValue.

inOutParameters In-out parameter used in the task. Includes the following attributes in the
mtTaskInOutParameter object for each in-out parameter:
- id
- name. Key field in the mtTaskInOutParameter collection.
- description
- initialValue
- datatype
- precision
- scale
- retentionPolicy
- aggregationType
- currentValue

POST Response
If successful, returns the mtTask object that you created or updated. Returns the error object if errors occur.

DELETE Request
To delete a Mapping Configuration task, use the task ID in the following URI:
/api/v2/mttask/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To create a new Mapping Configuration task with XML, you might use the following request:
POST <serverUrl>/api/v2/mttask HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

<mtTask>
<errorTaskEmail>
<taskEmail>
<emails>[email protected], [email protected]</emails>
</taskEmail>
</errorTaskEmail>
<successTaskEmail>
<taskEmail>
<emails>[email protected]</emails>
</taskEmail>
</successTaskEmail>
<warningTaskEmail>
<taskEmail>
<emails>[email protected], [email protected]</emails>
</taskEmail>
</warningTaskEmail>
<parameters>
<mtTaskParameter>

mttask 145
<name>sort convert plugin</name>
<type>MAPPLET</type>
</mtTaskParameter>
</parameters>
<parameters>
<mtTaskParameter>
<name>DB lookup</name>
<type>LOOKUP</type>
</mtTaskParameter>
</parameters>
<sessionProperties>
<entry>
<key>Java Classpath</key>
<value>C:/test/classpathnew</value>
</entry>
<entry>
<key>Pushdown Optimization</key>
<value>To Source</value>
</entry>
<entry>
<key>Write Backward Compatible Session Log File</key>
<value>no</value>
</entry>
</sessionProperties>
<runtimeEnvironmentId>00000398D00000004</runtimeEnvironmentId>
<sequences>
<sequenceDefinition>
<txName>SeqGen1</txName>
<initialValue>1</initialValue>
<currentValue>62</currentValue>
</sequenceDefinition>
</sequences>
<preProcessingCmd>echo CurrentDate is 'date'</preProcessingCmd>
<postProcessingCmd>echo PR-PostProcess</postProcessingCmd>
<masterTemplateId>00034234M00000R</masterTemplateId>
</mtTask>

A successful request returns the mtTask object.

Mask Rule Parameter Attributes for Masking Techniques


Define the parameter attribute values of a mask rule parameter when you run the Mapping Configuration
task. The attributes that you define depend on the masking technique that you apply.

For example, to mask a billing city field with the Substitution City masking technique, define the following
attributes:
[
{
"referenceField": "BillingCity",
"pcType": "string",
"precision": 40,
"paramMap": {
"isSeeded": "TRUE",
"seedValue": "190",
"dicName": "informatica_mask_us_towns.dic",
"outputPort": "TOWNNAMES",
},
"maskingType": "Substitution City"
}
]

146 Chapter 2: Informatica Cloud REST API


The following table lists the attributes that you define for each masking technique:

Masking Technique Attributes

Credit Card - isSeeded


- seedValue
- keepCardIssuer
- targetIssuer

Custom Substitution - DicConn


- DicName
- outputPort
- isSeeded
- seedValue

Email address - isSeeded


- seedValue

IP address - isSeeded
- seedValue

Key Date - isSeeded


- seedValue

Key Numeric - override


- isSeeded
- seedValue

Key String - isSeeded


- seedValue
- useMaskFormat
- maskFormat
- useSrcFilter
- srcFilterOption
- srcFilterStr
- useTargetFilter
- targetFilterOption
- targetFilterStr

Phone - isSeeded
- seedValue

Random Date - useRange


- minWidth
- maxWidth
- useBlurring
- blurringUnit
- blurLow
- blurHigh

Random Numeric - useRange


- minWidth
- maxWidth
- useBlurring
- blurringOption
- blurLow
- blurHigh

mttask 147
Masking Technique Attributes

Random String - useRange


- minWidth
- maxWidth
- useMaskFormat
- useSrcFilter
- srcFilterStr
- useTargetFilter
- targetFilterOption
- targetFilterStr

SIN - isSeeded
- seedValue
- startDigit
- startDigitValue

SSN - isSeeded
- seedValue

Substitution City - isSeeded


- seedValue
- DicName
- outputPort

Substitution Country - isSeeded


- seedValue
- DicName
- outputPort

Substitution Female Name - isSeeded


- seedValue
- DicName
- outputPort

Substitution Last Name - isSeeded


- seedValue
- DicName
- outputPort

Substitution Male Name - isSeeded


- seedValue
- DicName
- outputPort

Substitution Name - isSeeded


- seedValue
- DicName
- outputPort

Substitution Position - isSeeded


- seedValue
- DicName
- outputPort

Substitution State - isSeeded


- seedValue
- DicName
- outputPort

148 Chapter 2: Informatica Cloud REST API


Masking Technique Attributes

Substitution Street - isSeeded


- seedValue
- DicName
- outputPort

Substitution U.S. ZIP code - isSeeded


- seedValue
- DicName
- outputPort

URL - isSeeded
- seedValue

Mask Rule Parameter Attribute Values


Define the required parameter attribute values when you run the Mapping Configuration task.

The following table describes the attributes and values that you define for the mask rule parameter:

Attribute Description

blurHigh Required. The higher bound for blurring. You can specify the value in digits.
Default is 0.

blurLow Required. The lower bound for blurring. You can specify the value in digits.
Default is 0.

blurringOption Required. The unit of blurring for a numeric port. You can specify the following
values:
- Percent. Blurs the data based on a percent value.
- Fixed. Blurs the data based on a fixed value.

blurringUnit Required. The unit of blurring for a date port. You can specify the following values:
- Year. Blurs the year value.
- Month. Blurs the month value.
- Day. Blurs the day value.
- Hour. Blurs the hour value.
- Minute. Blurs the minute value.
- Second. Blurs the second value.
Default is Year.

delimiter Delimiter to separate the first name and last name in a masked email address. You
can specify the value as:
- .
- -
- _

DicConn The connection that contains the dictionary files. Create a flat file connection that
points to the directory with the dictionary files. Specify the flat file connection name.

dicName The name of the flat file dictionary file. The dictionary file must be present in the
rdtmDir directory of the Secure Agent.

mttask 149
Attribute Description

domainConstantValue Domain name to use in masked email addresses.


Default is company.com.

expText An attribute to configure an expression.

firstNameColumn The first name column to use in masked email addresses. Specify the name of the
port.

firstNameLength The length of the first name in a masked email address. You can specify the value
in digits.
Default is 5.

isSeeded An attribute to configure repeatable output. You can specify the following values:
- TRUE. Masks the data with repeatable output. When true, specify a seed value.
- FALSE. Masks the data with random output.
Default is TRUE.

keepCardIssuer Masks a credit card field with a credit card number from the same issuer. You can
specify the following values:
- TRUE. Retains the same card issuer in the masked data.
- FALSE. Uses a specified card issuer in the masked data.
When false, define the targetIssuer attribute.
Default is TRUE.

lastNameColumn The last name column to use in masked email addresses. Specify the name of the
port.

lastNameLength The maximum length of the last name in masked email addresses. You can enter
the value in digits.
Default is 5.

maskFormat Defines the type of character to substitute for each character in the input data. You
can limit each character to an alphabetic, numeric, or alphanumeric character type.
Use the following characters to define a mask format:
- A. Alphabetic
- D. Digits 0-9
- N. Alphanumeric
- X. Any character
- R. Rest of the characters.
Specify the value as ADNX+R. R must appear as the last character. For example,
to ensure the masked output begins with an alphabet, enter the value as A+R.
Default is R.

maxWidth Required. The minimum value for the range. Enter the value in digits.
Default is 0.

maxWidth Required. The maximum value for the range. Enter the datetime value.
Default is 01/19/2038 03:13:59.

minWidth Required. The minimum value for the range. Enter the datetime value.
Default is 01/01/1970 00:00:00.

150 Chapter 2: Informatica Cloud REST API


Attribute Description

minWdth Required. The minimum value for the range. Enter the value in digits.
Default is 0.

outputPort The output port column from the dictionary.

seedValue The seed value. Specify a value between 1 and 999.


Default is 190.

srcFilterOption Required. The type of filter to apply to source filter characters. You can specify the
following values:
- Mask Only. Masks only the specified characters in the source.
- Mask all except. Masks all characters in the source except the characters
specified.

srcFilterStr Required. Defines the characters in the source string that you want to mask.

startDigit Required. Defines the first digit of the masked SIN. You can specify the following
values:
- TRUE. Uses the digit that you specify as the first digit of the masked SIN.
- FALSE. Uses a random digit as the first digit of the masked SIN.
Default is FALSE. When true, define the startDigitValue attribute.

startDigitValue Required. Defines the first digit of the masked SIN. Specify a value between 0 and
9.
Default is 0.

targetFilterOption Required. The type of filter to apply on target filter characters. You can specify the
following values:
- Use Only. Uses only the target characters that you specify.
- Use All Except. Uses all characters in the target except what you specify.

targetFilterStr Required. Substitutes the characters in a target string with the characters that you
define in target filter characters. For example, enter the following characters to
configure the masked output to contain all uppercase alphabetic characters:
ABCDEFGHIJKLMNOPQRSTUVWXYZ.

targetIssuer Required. Masked values contain credit card numbers from the issuer that you
select. You can specify the following values:
- ANY
- JCB
- VISA
- AMEX
- DISCOVER
- MASTERCARD

useBlurring Required. Masks dates based on a variance that you apply to a unit of the date.
The masked date is within the variance. You can specify the following values:
- TRUE. Applies a variance that you specify on a unit of the date.
- FALSE. Does not apply a variance.
Default is FALSE.

useMaskFormat Specifies a mask format. You can specify the following values:
- TRUE. Masks the data based on a format that you specify.
- FALSE. Masks the data in a random format.
Default is TRUE. If true, define the maskFormat attribute.

mttask 151
Attribute Description

useRange Required. Specifies a return value between the minimum and maximum values of
the range based on field precision. You can specify the following values:
- TRUE. Masks the data within a range that you specify.
- FALSE. Does not use a specified range to mask the data.
To define the range, configure the minimum and maximum ranges or configure a
blurring range based on a variance from the original source value.
Default is FALSE.

useSrcFilter Specifies the characters in the source string that you want to mask. You can
specify the following values:
- TRUE. Masks the characters in the source string that you specify.
- FALSE. Masks random characters in the source string.
Default is FALSE.

useTargetFilter Specifies the characters to use in the masked string. You can specify the following
values:
- TRUE. Uses characters that you specify in the masked string.
- FALSE. Uses random characters in the masked string.
Default is FALSE.

org
Use this resource to request the details of your Informatica Cloud organization or a related sub-organization.
You can use this resource to update an organization or related sub-organization. You can also delete a sub-
organization.

GET Request
To request the details of your organization, use the following URI:
/api/v2/org

To request the details of a sub-organization related to your organization, you can include the sub-
organization ID or sub-organization name in the URI. Use one of the following URIs:
/api/v2/org/<sub-organization ID>
/api/v2/org/name/<sub-organization name>

If you use the task name in the URI and the task name includes a space, replace the space with %20. For
example:
/api/v2/org/name/my%20suborg

GET Response
When you request the details of an organization, Informatica Cloud returns the org object in list format.

If the organization is a parent organization in an organization hierarchy, the org object includes the IDs and
names of all sub-organizations.

Returns the error object if errors occurred.

The org object includes the following attributes.

152 Chapter 2: Informatica Cloud REST API


id
Organization ID.

orgId
Organization ID.

name
Organization name.

description
Description of the organization.

createTime
Time the organization was created.

updateTime
Last time the organization was updated.

createdBy
User who created the organization.

updatedBy
Last user who updated the organization.

parentOrgId

Organization ID for the parent organization.

Returns 0 if the organization is a stand-alone or parent organization.

address1
Address for the organization.

address2
Additional address information for the organization.

address3
Additional address information for the organization.

city
City where the organization is based.

state

State where the organization is based. Returns a state code.

For more information, see Appendix A , State Codes on page 197.

zipcode
Postal code of the area where the organization is based.

country

Country where the organization is based. Returns a country code.

For more information, see Appendix A , Country Codes on page 199.

employees
Range of employees in the organization.

org 153
offerCode
Offer code assigned to Informatica Cloud partners.

successEmails
Email addresses to receive notification of tasks that complete successfully.

warningEmails
Email addresses to receive notification of tasks that complete with errors.

errorEmails
Email addresses to receive notification of tasks that fail to complete.

offerCode
Offer code assigned to Informatica Cloud partners.

campaignCode
Campaign code.

atlasProjectId
Atlas project ID.

zuoraAccountId
Zuora account ID.

spiUrl
Informatica Cloud Application Integration URL for the organization.

devOrg

Indicates the organization is a development organization.

Returns 1 for a development organization. Returns 0 for a production organization.

timezone
Time zone of the organization.

maxLogRows
Maximum number of rows to keep in the activity log.

minPasswordLength
Minimum number of characters for a user account password.

minPasswordCharMix

Mix of characters each password must contain.

Passwords can contain a mix of the following character sets: lowercase letters, capital letters, numbers,
and special characters.

Returns one of the following values:

1. Contains at least one of the character sets.


2. Contains at least two of the character sets.
3. Contains at least three of the character sets.
4. Contains all four character sets.

passwordReuseInDays

Number of days until a previous password can be used again.

154 Chapter 2: Informatica Cloud REST API


0 = Always.

passwordExpirationInDays

Number of days until the password expires.

0 = Never.

subOrgLimit
Number of sub-organizations allowed. If the limit has been customized, the REST API returns the custom
limit. Otherwise, the REST API returns the limit associated with the edition.

restApiSessionLimit
Number of concurrent REST API sessions allowed. If the limit has been customized, the REST API
returns the custom limit. Otherwise, the REST API returns the limit associated with the edition.

parentOrgId

Organization ID of the parent organization.

0 indicates the organization is a stand-alone or parent organization.

jobExecUserProfile
Informatica Cloud user account configured to run contact validation tasks.

twoFactorAuthentication

A security option that allows the configuration of trusted IP address ranges as an addition to account
password authentication:

False. Informatica Cloud requires account passwords for access to the organization.
True. Informatica Cloud requires account passwords for access to the organization, and the user
must login from within configured IP address ranges.

ipAddressRanges

For Two-Factor Authentication. One or more trusted IP address rangesthat use IP format version 4
(IPv4) or version 6 (IPv6).

subOrg
Object that contains the following information for each sub-organization:

id
ID of the sub-organization.

name
Name of the sub-organization.

POST Request
You can update an Informatica Cloud organization if the user that started the REST API session has the
Admin role and belongs to either the organization that you want to update or the parent organization.

When you update an Informatica Cloud organization, you cannot update the organization ID, offer code, or
organization administrator user account created with the organization.

You can use this resource to update a sub-organization if your organization has the Org Hierarchy license
and if the user that started the REST API session has the Admin role in the parent organization.

org 155
To update the details of a sub-organization related to your parent organization, use the organization ID in the
following URI. To update the details of your organization, omit the optional ID.
/api/v2/org/<id>

With this URI, you can use the following attributes in the org object:

name
Organization name.

address1
Address of organization.

address2
Optional.

Additional address information for the organization.

address3
Optional.

Additional address information for the organization.

city
City where the organization is based.

state

State where the organization is based. Use the appropriate state code.

Required when Country is set to US.

For more information, see Appendix A , State Codes on page 197.

zipcode

Postal code of the area where the organization is based.

Required when Country is set to US

country

Country where the organization is based. Use the appropriate country code.

For more information, see Appendix A , Country Codes on page 199.

description
Optional.

Description of the organization. Maximum length is 255 characters.

successEmails
Optional.

Default email addresses for notification of successful job completion.

warningEmails
Optional.

Default email addresses for warnings about job completion.

errorEmails
Optional.

156 Chapter 2: Informatica Cloud REST API


Default email addresses for notification about job failure.

employees
Range of employees in the organization. Use one of the following ranges:

"0_10"
"11_25"
"26_50"
"51_100"
"101_500"
"501_1000"
"1001_5000"
"5001_"

offerCode
Optional.

Offer code assigned to Informatica Cloud partners.

POST Response
If successful, returns the org request object for the organization that you created or updated.

Returns the error object if errors occur.

DELETE Request
You can delete an Informatica Cloud sub-organization if the user that started the Informatica Cloud REST API
session has the Admin role and belongs the parent organization.

To delete an Informatica Cloud organization, use the organization ID with the following URI:
/api/v2/org/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To update a sub-organization with an ID of 02340000, you might use the following request:
GET <serverUrl>/api/v2/org/02340000 HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

<org>
<name>Dev Org</name>
<address1>333 Main Street</address1>
<city>City</city>
<state>MD</state>
<zipcode>90001</zipcode>
<country>US</country>
</org>

A successful request returns the org request object for the sub-organization that you updated.

org 157
permission
Use the permission resource to view and update user group permissions for specific entities.

You can set permission levels for specific user groups and associate the permissions to objects such as
mappings, mapplets, mapping configuration tasks, task flows, and integration templates. The permissions
you specify through the REST API overwrite the permissions set in the user interface.

To request user group permissions for a specified object, use the object ID in the following URI:
/api/v2/permission/<objectId>

GET Response
Returns an objectAcl object with the following attributes:

objectType
Permissions object. Returns one of the following codes:

Agent. Secure Agent.


Connection.
Schedule. Task schedule.
CustomFunc. Mapplet
CustomSource. Saved query.
WORKFLOW. Task flow.
DSS. Data synchronization task.
DRS. Data replication task.
DQA. Data assessment task.
PCS. PowerCenter task.
DNB_TASK. D&B360 task.
AVS. Contact validation task.
MTT. Mapping configuration task.
TEMPLATE. Integration template.
DMASK. Data masking task.
BUNDLE. Bundle.
DTEMPLATE. Mapping.
SERVICE_PROCESS. Service and process.
RETIREMENT. Application retirement.
AgentGroup. Runtime environment.
BSERVICE. Business service definition.
FWCONFIG. Fixed width file format.
StructureDiscovery. Intelligent Structure Discovery.

objectId
ID of the object.

158 Chapter 2: Informatica Cloud REST API


useDefaultPermissions
No longer used. Use the updatetype request parameter instead. Whether to use the default permissions
for the specified user group.

Whether to use the default permissions for the specified user group.

aclEntries
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for each
object type. For more information about the aclEntry object, see the usergroup resource.

GET Example
The following example shows a request to get user group permissions information for a specific mapping:
GET <serverUrl>/api/v2/permission/00001R17000000000002 HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

The following text is a sample response:


{
"@type": "objectAclApi",
"objectType": "DTEMPLATE",
"objectId": "00001R17000000000002",
"aclEntries": [
{
"@type": "aclEntry",
"objectType": "DTEMPLATE",
"createPermission": true,
"readPermission": true,
"updatePermission": true,
"deletePermission": true,
"executePermission": true,
"adminPermission": true,
"userGroupId": "00001R05000000000002",
"userGroupName": "abc"
},
{
"@type": "aclEntry",
"objectType": "DTEMPLATE",
"createPermission": true,
"readPermission": true,
"updatePermission": true,
"deletePermission": true,
"executePermission": true,
"adminPermission": true,
"userGroupId": "00001R05000000000003",
"userGroupName": "def"
}
]
}

POST Request
Include the updatetype request parameter for the objectAcl object in the URI. The updatetype request
parameter determines how the update applies to user groups specified in the request and user groups that
are not specified. Use one of the following values for the updatetype request parameter:

set. The permissions of the user groups provided in the request are updated. The permissions for the
remaining user groups are revoked.
To use the set update type, use the following URI:
/api/v2/permission/<objectId>?updatetype=set
setdefault. The permissions of all user groups are set to default. For the setdefault value, the request
body is optional.

permission 159
To use the setdefault update type, use the following URI:
/api/v2/permission/<objectId>?updatetype=setdefault
update. The permissions of the user groups provided in the request are updated. The permissions of user
groups that are not mentioned in request remain unaffected.
To use the update update type, use the following URI:
/api/v2/permission/<objectId>?updatetype=update

You can use the following attributes in an objectAcl object:

objectType
Permissions object. Use one of the following codes:

Agent. Secure Agent.


Connection.
Schedule. Task schedule.
CustomFunc. Mapplet
CustomSource. Saved query.
WORKFLOW. Task flow.
DSS. Data synchronization task.
DRS. Data replication task.
DQA. Data assessment task.
PCS. PowerCenter task.
DNB_TASK. D&B360 task.
AVS. Contact validation task.
MTT. Mapping configuration task.
TEMPLATE. Integration template.
DMASK. Data masking task.
BUNDLE. Bundle.
DTEMPLATE. Mapping.
SERVICE_PROCESS. Service and process.
RETIREMENT. Application retirement.
AgentGroup. Runtime environment.
BSERVICE. Business service definition.
FWCONFIG. Fixed width file format.
StructureDiscovery. Intelligent Structure Discovery.

objectId
ID of the object. Read only.

useDefaultPermissions
No longer used. Use the updatetype request parameter instead.

Whether to use the default permissions for the specified user group.

aclEntries
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for each
object type. For more information about the aclEntry object, see the usergroup resource.

160 Chapter 2: Informatica Cloud REST API


POST Response
Returns an objectAcl object with the following attributes:

objectType
Permissions object. Use one of the following codes:

Agent. Secure Agent.


Connection.
Schedule. Task schedule.
CustomFunc. Mapplet
CustomSource. Saved query.
WORKFLOW. Task flow.
DSS. Data synchronization task.
DRS. Data replication task.
DQA. Data assessment task.
PCS. PowerCenter task.
DNB_TASK. D&B360 task.
AVS. Contact validation task.
MTT. Mapping configuration task.
TEMPLATE. Integration template.
DMASK. Data masking task.
BUNDLE. Bundle.
DTEMPLATE. Mapping.
SERVICE_PROCESS. Service and process.
RETIREMENT. Application retirement.
AgentGroup. Runtime environment.
BSERVICE. Business service definition.
FWCONFIG. Fixed width file format.
StructureDiscovery. Intelligent Structure Discovery.

objectId
ID of the object.

aclEntries
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for each
object type. For more information about the aclEntry object, see the usergroup resource.

POST Examples
The following example uses the set update type for the request. The request sets permissions for a
connection object, which is specified by the objectId. The request includes two user groups, specified by the
userGroupId. The user groups for which permissions are provided in the request body are saved.
Permissions for the remaining user groups are revoked for the object ID provided in the request URI.
POST <serverURL>/api/v2/permission/0000010B00000000000W?updatetype=set HTTP/1.0
Content-Type: application/json
Accept: application/json
{

permission 161
"@type":"objectAclApi",
"objectType":"Connection",
"objectId":"0000010B00000000000W",
"useDefaultPermissions":true,
"aclEntries":[
{
"@type":"aclEntry",
"objectType":"Connection",
"createPermission":true,
"readPermission":true,
"updatePermission":false,
"deletePermission":false,
"executePermission":false,
"adminPermission":false,
"id":"0000010400000000001A",
"orgId":"000001",
"userGroupId":"00000105000000000002",
"userGroupName":"temp",
"objectId":"-1"
}, {
"@type":"aclEntry",
"objectType":"Connection",
"createPermission":true,
"readPermission":true,
"updatePermission":true,
"deletePermission":true,
"executePermission":false,
"adminPermission":true,
"id":"0000010400000000001B",
"orgId":"000001",
"userGroupId":"00000105000000000003",
"userGroupName":"temp2",
"objectId":"-1"
}
]
}

The following example uses the setdefault update type for the request. Permissions for all of the user groups
are set to default for the specified connection object.
POST <serverURL>/api/v2/permission/0000010B00000000000W?updatetype=setdefault HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type":"objectAclApi"
}

The following example uses the update update type for the request. The user groups for which the
permissions are provided in the request body are saved for the specified object. The remaining user group
permissions are not affected.
POST <serverURL>/api/v2/permission/0000010B00000000000W?updatetype=update HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type":"objectAclApi",
"objectType":"Connection",
"objectId":"0000010B00000000000W",
"useDefaultPermissions":true,
"aclEntries":[
{
"@type":"aclEntry",
"objectType":"Connection",
"createPermission":true,
"readPermission":true,
"updatePermission":false,
"deletePermission":false,
"executePermission":false,
"adminPermission":false,
"id":"0000010400000000001A",
"orgId":"000001",

162 Chapter 2: Informatica Cloud REST API


"userGroupId":"00000105000000000002",
"userGroupName":"temp",
"objectId":"-1"
},{
"@type":"aclEntry",
"objectType":"Connection",
"createPermission":true,
"readPermission":true,
"updatePermission":true,
"deletePermission":true,
"executePermission":false,
"adminPermission":true,
"id":"0000010400000000001B",
"orgId":"000001",
"userGroupId":"00000105000000000003",
"userGroupName":"temp2",
"objectId":"-1"
}
]
}

register
Use this resource to create an Informatica Cloud organization or sub-organization. For Informatica Cloud
partners only.

When you create an Informatica Cloud organization, you also create an organization administrator user
account. Use one of the following credentials to create the organization administrator user account:

Email address and other account details.


The information that you pass becomes the organization administrator user account. If you do not pass
the emails attribute and the user name is a valid email address, the user name is used to populate the
emails attribute. You can create a sub-organization if the user that started the Informatica Cloud REST
API session has the Admin role and belongs to an organization with the Org Hierarchy license.
Salesforce login.
The Salesforce login becomes the organization administrator user account. Use the Salesforce login to
create a Salesforce session ID and pass the session ID in the register syntax. When you use a Salesforce
login, you cannot create a sub-organization.

You need an Informatica Cloud partner offer code to create an Informatica Cloud organization.

register POST Request


To create an Informatica Cloud organization with an email address and user account details, use the
following URL.
https://app.informaticaondemand.com/ma/api/v2/user/register

To create an Informatica Cloud sub-organization, use the following URI.


/api/v2/user/register

You can create an Informatica Cloud sub-organization if your organization has the Org Hierarchy license and
if the user that started the REST API session has the Admin role in the parent organization.

Use the icSessionId from the login response in the request header. Use the serverUrl from the login response
as the base URL.

With both the register URL and URI, you can use the following attributes in a registration object:

register 163
org

Attribute that defines an Informatica Cloud organization.

Include the following attributes in an org object:

offerCode
Optional.

Offer code assigned to Informatica Cloud partners.

name
Name for the new Informatica Cloud organization.

address1
Address where the organization is located.

address2
Optional.

Additional address information for the organization.

address3
Optional.
Additional address information for the organization.

city
City where the organization is located.

state

State where the organization is located. Use the appropriate state code.

Required for the United States.

For more information, see Appendix A, State Codes on page 197.

zipcode
Zip code where the organization is located.

country

Country where the organization is located. Use the appropriate country code.

For more information, see Appendix A, Country Codes on page 199.

timezone
Time zone of the user. Time zone honors Daylight Saving Time.

For more information, see Appendix A , Time Zone Codes on page 205.

employees
Number of employees in the organization. Use one of the following ranges:

"0_10"
"11_25"
"26_50"
"51_100"

164 Chapter 2: Informatica Cloud REST API


"101_500"
"501_1000"
"1001_5000"
"5001_"

user

Attribute that defines the organization administrator user account.

Include the following attributes in a user object:

name
Email address for the organization administrator account.

password
Password for the organization administrator account.

firstName
First name of the organization administrator.

lastName
Last name of the organization administrator.

title
Title of the organization administrator.

phone
Phone number for the organization administrator.

emails
Email address that receives notification from Informatica Cloud.

timezone

Optional.

Time zone of the organization administrator. Time zone honors Daylight Saving Time.

Use the appropriate time zone code.

For more information, see Appendix A, Time Zone Codes on page 205.

If no valid time zone is passed, Informatica Cloud uses America/Los_Angeles by default.

securityQuestion

Optional.

Security question. Use one of the following codes to select the security question:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

register 165
securityAnswer

Optional.

Answer to the security question.

forceChangePassword

Optional.

Determines if the user must reset the password after the user logs in for the first time. Includes the
following values:

True. The user must reset the password.


False. The user is not forced to reset the password.

optOutOfEmails
Optional.

Whether the user opts in or out of receiving marketing communication from Informatica. TRUE
indicates that the user does not want to receive marketing communication.

registrationCode
Registration code.

sendEmail
Optional.

When registration completes, sends an email to the user email address with temporary login information.
Use TRUE to send an email.

registerSf POST Request


To create an Informatica Cloud organization with a Salesforce login for the user account, use the following
URL:
https://app.informaticaondemand.com/ma/api/v2/user/registerSf

With this URL, use the following attributes in the registrationSf object:

sfSessionId

Salesforce session ID.

The Salesforce login used to create the session ID becomes the Informatica Cloud user account for the
organization.

For information about generating the Salesforce session ID, see the login resource in the Salesforce
Web Services API Developer's Guide.

sfServerUrl
Salesforce URL.

offerCode

Optional.

Offer code assigned to Informatica Cloud partners.

registrationCode
Registration code.

166 Chapter 2: Informatica Cloud REST API


icsPassword

Optional.

Password for the Informatica Cloud account.

securityQuestion

Optional.

Security question. Use one of the following codes to select the security question:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

securityAnswer

Optional.

Answer to the security question.

sendEmail
Optional.

When registration completes, sends an email to the user email address with temporary login information.
Use TRUE to send an email.

timezone

Optional.

Time zone of the organization administrator. Time zone honors Daylight Saving Time.

Use the appropriate time zone code.

For more information, see Appendix A, Time Zone Codes on page 205.

If no valid time zone is passed, Informatica Cloud uses America/Los_Angeles by default.

POST Response
Returns the user object if the request is successful. Returns the error object if errors occur.

The user object includes the following attributes.


id
User ID.

orgId
ID of the organization the user belongs to.

name
Informatica Cloud user name.

description
Description of the user.

register 167
createTime
When the user account was created.

updateTime
When the user account was last updated.

createdBy
Informatica Cloud user who created the user account.

updatedBy
Informatica Cloud user who last updated the user account.

sfUsername
Salesforce user name.

password
Password. If using sfUsername, this is the Salesforce password.

firstName
First name for the user account.

lastName
Last name for the user account.

title
Title of the user.

phone
Phone number for the user.

securityQuestion
Security question. Returns one of the following codes:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

securityAnswer
Answer to the security question.

roles
Roles assigned to the user. The following attributes are included in a role object for each role:
name
Role name. Returns one of the following codes:

SERVICE_CONSUMER
DESIGNER
ADMIN

168 Chapter 2: Informatica Cloud REST API


description
Description.

usergroups
User group assigned to the user. The following attributes are included in a usergroup object for each
user group:
id
User group ID.

orgId
Organization ID.

name
User group name.

description
Description.

createTime
Time the user group was created.

updateTime
Last time the user group was updated.

createdBy
User who created the user group.

updatedBy
User who last updated the user group.

aclEntry
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for
each object type. For more information about the aclEntry object, see the usergroup on page 188
resource.

emails
Email address to be notified when the user changes the account password.

If you pass multiple email addresses in this field, Informatica Cloud uses the first email address in the
list.

timezone

Time zone of the user. Time zone honors Daylight Saving Time.

For more information, see Appendix A , Time Zone Codes on page 205.

serverUrl
Informatica Cloud URL for the organization the user belongs to. Use the serverUrl as a base for most
REST API resource URIs.

spiUrl
Informatica Cloud Application Integration URL for the organization the user belongs to.

uuId
Unique identifier for the user.

register 169
icSessionId
Informatica Cloud REST API session ID. Use in most REST API request headers.

forceChangePassword
Determines if the user must reset the password after the user logs in for the first time. Includes the
following values:

True. The user must reset the password.


False. The user is not forced to reset the password.

POST Examples
To register an organization in JSON, you might use the following request:
POST https://app.informaticaondemand.com/ma/api/v2/user/register HTTP/1.0
Content-Type: application/json
Accept: application/json
{
"@type" : "registration",
"user" : {
"@type" : "user",
"name" : "[email protected]",
"emails" : "[email protected]",
"firstName" : "firstName",
"lastName" : "lastName",
"title" : "jobTitle",
"phone" : "(0)1234 567 890",
"timezone" : null,
"forceChangePassword" : "true"
"optOutOfEmails" : "true"
},
"org" : {
"@type" : "org",
"offerCode" : "PPC30daytrial",
"campaignCode" : "PPC",
"name" : "myOrg",
"address1" : "1 Main St",
"city" : "Mycity",
"state" : "CA",
"zipcode" : "90210",
"country" : "US",
"employees" : "5001_"
},
"registrationCode" : "ics-standard",
"sendEmail" : true
}

A successful request returns the user object that was created, which includes the organization ID for the
organization that was created.

To register a new organization using Salesforce credentials in JSON, you might use the following request:
POST https://app.informaticaondemand.com/ma/api/v2/user/registerSf HTTP/1.0
Content-Type: application/json
Accept: application/json

{
"@type": "registrationSf",
"sfSessionId": "salesforceID00003",
"sfServerUrl": "http://www.salesforceURL.com",
"offerCode": "OFFERCODE"
}

A successful request returns the user object that was created, which includes the organization ID for the
organization that was created.

170 Chapter 2: Informatica Cloud REST API


runtimeEnvironment
Use the runtimeEnvironment resource to get information about runtime environments for an organization.

To request runtime environment information, use the following URI:


/api/v2/runtimeEnvironment

To request the details of a particular runtime environment, you can include the runtime environment ID or
name in the URI. Use one of the following URIs:
/api/v2/runtimeEnvironment/<id>
/api/v2/runtimeEnvironment/name/<name>

If you use the runtime environment name in the URI and the runtime environment name includes a space,
replace the space with %20. For example:
/api/v2/runtimeEnvironment/name/my%20runtime%20environment

GET Response
Returns runtime environment information for the requested runtime environment. The runtimeEnvironment
object includes the following attributes:

id
Runtime environment ID.

orgId
Organization ID.

name
Runtime environment name.

description
Runtime environment description.

createTime
Date and time that the runtime environment was created.

updateTime
Date and time that the runtime environment was last updated.

createdBy
User who created the runtime environment.

updatedBy
User who last updated the runtime environment.

agents
Agents assigned to the runtime environment. For more information, see the agent resource.

Get Example
To request the details of a particular runtime environment, you might use the following request:
GET <serverUrl>/api/v2/runtimeEnvironment/0000092500000000000C HTTP/1.0
Accept:application/json
icSessionId: <icSessionId>

runtimeEnvironment 171
The following text is a sample return in XML:
[
{
"@type": "runtimeEnvironment",
"id": "0000092500000000000C",
"orgId": "000009",
"name": "CAW185346",
"createTime": "2016-09-14T13:59:28.000Z",
"updateTime": "2016-09-29T12:59:29.000Z",
"createdBy": "admin",
"updatedBy": "admin",
"agents": [
{
"@type": "agent",
"id": "00000908000000000007",
"orgId": "000009",
"name": "CAW185346",
"createTime": "2016-09-29T12:59:29.000Z",
"updateTime": "2016-09-30T14:47:03.000Z",
"createdBy": "admin",
"updatedBy": "admin",
"active": false,
"readyToRun": false,
"platform": "win64",
"agentHost": "CAW185346",
"serverUrl": "https://aws-qa5.infaqa.com/saas",
"proxyPort": 0,
"agentVersion": "26.1.0.0.0.0.0",
"upgradeStatus": "NotUpgrading",
"spiUrl": "https://ts1w2a.rt.informaticacloud.com",
"lastUpgraded": "2016-09-29T12:59:30.000Z",
"lastUpgradeCheck": "2016-09-30T14:37:58.000Z",
"lastStatusChange": "2016-09-30T14:47:03.000Z",
"packages": [
"WorkdayV2.126",
"saas-xmetadataread.5",
"runAJobCli.2",
"UDTforHierarchy.5",
"JDBCv2.22",
"DataTransformation.6"
],
"agentConfigs": [],
"configUpdateTime": "2016-09-29T17:25:16.000Z"
}
]
}
]

salesforceVersion
Deprecated. This resource is no longer used.

GET Request
Use the following URI to request the version of Salesforce used by default by Informatica Cloud:
/api/v2/server/salesforceVersion

GET Response
Returns the salesforceVersion object if the request is successful. Returns the error object if errors occur.

The salesforceVersion object includes the following attribute:

172 Chapter 2: Informatica Cloud REST API


versionNo
Salesforce version number.

GET Example
To check the Salesforce version, you might use the following request:
GET <serverUrl>/api/v2/server/salesforceVersion HTTP/1.0
Accept: application/json
icSessionId: <icSessionId>

schedule
Use this resource to request the details of a schedule or the details of all schedules in the organization. You
can create or update a schedule. You can also delete a schedule.

GET Request
To view the details of all schedules in the organization, use the following URI:
/api/v2/schedule

To request the details of a particular schedule, you can include the schedule ID or schedule name in the URI.
Use one of the following URIs:
/api/v2/schedule/<id>
/api/v2/schedule/name/<name>

If you use the schedule name in the URI and the schedule name includes a space, replace the space with
%20. For example:
/api/v2/schedule/name/my%20schedule

GET Response
If successful, returns the schedule object for the requested schedule. Or, if you request the details for all
schedules, returns the schedule object for each schedule in the organization.

Returns the error object if errors occur.

The schedule object includes the following attributes:

id
Schedule ID.

orgId
Organization ID.

name
Schedule name.

description
Description of the schedule.

createTime
Time the schedule was created.

schedule 173
updateTime
The last time the schedule was updated.

createdBy
User who created the schedule.

updatedBy
User who last updated the schedule.

startTime
Start time of the schedule.

endTime
End time of the schedule.

interval
Repeat interval for the schedule. Returns one of the following codes:

None. The schedule does not repeat.


Minutely. Tasks run on an interval based on a specified number of minutes.
Hourly. Tasks run on an hourly interval based on the specified number of hours, days, and time
range.
Daily. Tasks run daily at the configured start time.
Weekly. Tasks run at the configured start time on the configured days.
Monthly. Tasks run at the configured start time on the configured day of the month.

frequency

Frequency that the schedule runs. Returns a numeric value that represents one of the following:

For Minutely intervals: tasks run every n minutes.


For Hourly intervals: tasks run every n hours.

Minutely and Hourly intervals only.

rangeStartTime
The start of the time range within a day that tasks run. Minutely and Hourly intervals only.

rangeEndTime
The end of the time range within a day that tasks run. Minutely and Hourly intervals only.

sun

Tasks run on Sunday. Returns one of the following codes:

true. The tasks run on Sunday.


false. The tasks do not run on Sunday.

Minutely, Hourly, and Weekly intervals only.

mon

Tasks run on Monday. Returns one of the following codes:

true. The tasks run on Monday.


false. The tasks do not run on Monday.

Minutely, Hourly, and Weekly intervals only.

174 Chapter 2: Informatica Cloud REST API


tue

Tasks run on Tuesday. Returns one of the following codes:

true. The tasks run on Tuesday.


false. The tasks do not run on Tuesday.

Minutely, Hourly, and Weekly intervals only.

wed

Tasks run on Wednesday. Returns one of the following codes:

true. The tasks run on Wednesday.


false. The tasks do not run on Wednesday.

Minutely, Hourly, and Weekly intervals only.

thu

Tasks run on Thursday. Returns one of the following codes:

true. The tasks run on Thursday.


false. The tasks do not run on Thursday.

Minutely, Hourly, and Weekly intervals only.

fri

Tasks run on Friday. Returns one of the following codes:

true. The tasks run on Friday.


false. The tasks do not run on Friday.

Minutely, Hourly, and Weekly intervals only.

sat

Tasks run on Saturday. Returns one of the following codes:

true. The tasks run on Saturday.


false. The tasks do not run on Saturday.

Minutely, Hourly, and Weekly intervals only.

weekDay

Tasks run on weekdays only. Returns one of the following codes:

true. The tasks run on weekdays.


false. The tasks run every day.

Daily interval only.

dayOfMonth

Date of the month that tasks run. Returns a date between 1-28.

Monthly interval only.

weekOfMonth

Week of the month that tasks run. Returns one of the following codes:

First. The tasks run in the first week of the month.

schedule 175
Second. The tasks run in the second week of the month.
Third. The tasks run in the third week of the month.
Fourth. The tasks run in the fourth week of the month.
Last. The tasks run in the last week of the month.

Monthly interval only.

dayOfWeek

Day of the week that tasks run. Returns one of the following codes:

Day. Tasks run on the first day or last day of the month, based on the selected weekOfMonth option.
Sunday. The tasks run on Sunday.
Monday. The tasks run on Monday.
Tuesday. The tasks run on Tuesday.
Wednesday. The tasks run on Wednesday.
Thursday. The tasks run on Thursday.
Friday. The tasks run on Friday.
Saturday. The tasks run on Saturday.

Monthly interval only.

timeZone
Time zone of the user who last updated the schedule. Time zone honors Daylight Saving Time.

POST Request
To update a schedule, use the schedule ID with the following URI. To create a schedule, omit the optional
schedule ID.
/api/v2/schedule/<id>

You can submit a partial update using partial mode. To submit a request using partial mode, use a JSON
request and include the following line in the header:
Update-Mode=PARTIAL

You can use the following attributes in a schedule object:

id
Required.

Schedule ID.

orgId
Required.

Organization ID.

name
Required.

Schedule name.

description
Optional.

Description of the schedule.

176 Chapter 2: Informatica Cloud REST API


startTime
Required.

Date and time when the schedule starts running. Use the following format:

YYYY-MM-DDTHH24:MI:SSZ

endTime
Optional.

Date and time when the schedule stops running. If you do not use this parameter, the schedule runs
indefinitely.

Use the following format:

YYYY-MM-DDTHH24:MI:SSZ

interval
Required.

Interval or repeat frequency at which the schedule runs. Use one of the following options:

None. Tasks run at the schedule start time. The schedule does not repeat.
Minutely. Tasks run on an interval based on the specified number of minutes, days, and time range.
You can use the following parameters:
- frequency. Frequency in minutes that tasks run.

- sun, mon, tue, wed, thu, fri, sat. The days of the week that tasks run.

- startTimeRange and endTimeRange. The time range within a day tasks should run. Do not use if
you want tasks to run all day.
- endTime. When the schedule should stop running. Do not use if you want the schedule to run
indefinitely.
Hourly. Tasks run on an hourly interval based on the start time of the schedule. You can use the
following parameters:
- frequency. Frequency in hours that tasks run.

- sun, mon, tue, wed, thu, fri, sat. The days of the week that tasks run.

- startTimeRange and endTimeRange. The time range within a day tasks should run. Do not use if
you want tasks to run all day.
- endTime. When the schedule should stop running. Do not use if you want the schedule to run
indefinitely.
Daily. Tasks run daily at the start time configured for the schedule. You can use the following
parameters:
- weekDay. Runs the tasks every weekday. Do not use if you want the tasks to run every day.

- endTime. When the schedule should stop running. Do not use if you want the schedule to run
indefinitely.
Weekly. Tasks run on a weekly interval based on the start time of the schedule. You can use the
following parameters:
- sun, mon, tue, wed, thu, fri, sat. The days of the week that tasks run.

- endTime. When the schedule should stop running. Do not use if you want the schedule to run
indefinitely.

schedule 177
Monthly. Tasks run on a monthly interval based on the start time of the schedule. You can use the
following parameters:
- dayOfMonth. Day of the month when you want tasks to run, between 1-28.

- dayOfWeek. Day of the week when you want tasks to run.

- weekOfMonth. Week of the month when you want tasks to run.

- endTime. When the schedule should stop running. Do not use if you want the schedule to run
indefinitely.
To indicate when tasks should run, use dayOfWeek with weekOfMonth, such as the First Monday. Or
use dayOfMonth, such as 1.
Tip: To run tasks on the last day of the month, use the Last weekOfMonth parameter with the Day
dayOfWeek parameter.

frequency
Optional.

Repeat frequency for tasks. Use one of the following values:

For the Minutely interval, use one of the following options: 5, 10, 15, 20, 30, 45.
For the Hourly interval, use one of the following options: 1, 2, 3, 4, 6, 8, 12.

Use with Minutely and Hourly intervals only.

rangeStartTime
Optional.

The start of the time range within a day that you want tasks to run. Enter a date and time using the
following format. Only the time portion is used:

YYYY-MM-DDTHH24:MI:SSZ

Use with Minutely and Hourly intervals only.

rangeEndTime
Optional.

The end of the time range within a day that you want tasks to run. Enter a date and time using the
following format. Only the time portion is used:

YYYY-MM-DDTHH24:MI:SSZ

Use with Minutely and Hourly intervals only.

sun
Optional.

Runs tasks on Sunday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Sunday.


False. Does not run tasks on Sunday.

Use with Minutely, Hourly, and Weekly intervals only.

mon
Optional.

178 Chapter 2: Informatica Cloud REST API


Runs tasks on Monday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Monday


False. Does not run tasks on Monday.

Use with Minutely, Hourly, and Weekly intervals only.

tue
Optional.

Runs tasks on Tuesday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Tuesday.


False. Does not run tasks on Tuesday.

Use with Minutely, Hourly, and Weekly intervals only.

wed
Optional.

Runs tasks on Wednesday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Wednesday.


False. Does not run tasks on Wednesday.

Use with Minutely, Hourly, and Weekly intervals only.

thu
Optional.

Runs tasks on Thursday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Thursday.


False. Does not run tasks on Thursday.

Use with Minutely, Hourly, and Weekly intervals only.

fri
Optional.

Runs tasks on Friday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Friday.


False. Does not run tasks on Friday.

Use with Minutely, Hourly, and Weekly intervals only.

schedule 179
sat
Optional.

Runs tasks on Saturday at the configured time. You can use the sun - sat parameters to run tasks on
several days of the week.

Use one of the following options:

True. Runs tasks on Saturday.


False. Does not run tasks on Saturday.

Use with Minutely, Hourly, and Weekly intervals only.

weekDay
Optional.

Runs tasks on weekdays. Use one of the following options:

True. Run tasks on Monday through Friday. Does not run tasks on the weekend.
False. Run tasks every day.

Use with the Daily interval only.

dayOfMonth
Optional.

Date of the month that tasks should run. Use a date between 1-28.

Use with the Monthly interval only.

Tip: To run tasks on the last day of the month, use the Last weekOfMonth parameter with the Day
dayOfWeek parameter.

weekOfMonth
Optional.

Week of the month that tasks should run. Use with dayOfWeek to specify the day and week of the month
that tasks should run. For example, the First Day or the Last Wednesday of the month.

Use one of the following options:

First
Second
Third
Fourth
Last

Use with the Monthly interval only.

dayOfWeek
Optional.

Day of the week that tasks should run. Use with weekOfMonth to specify the day and week of the month
that tasks should run. For example, the First Day or the Last Wednesday of the month.

Use one of the following options:

Day

180 Chapter 2: Informatica Cloud REST API


Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday

Use with the Monthly interval only.

timeZone
Optional.

Time zone to use for the schedule. If no valid time zone is passed, Informatica Cloud uses the user's
time zone.

For more information, see Appendix A, Time Zone Codes on page 205.

POST Response
Returns the schedule response object for the schedule that you created or updated.

Returns an error object if errors occur.

DELETE Request
To delete a schedule, use the schedule ID with the following URI:
/api/v2/schedule/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns an error object if errors occur.

GET Example
To request information about all schedules in the organization, you might use the following request:
GET <serverUrl>/api/v2/schedule HTTP/1.0
Accept: application/json
icSessionId: <icSessionId>

A successful request returns a schedule object for each schedule in the organization.

serverTime
Use this resource to return the local time for the Informatica Cloud server.

GET Request
To request the local time of the Informatica Cloud server, use the following URI.
/api/v2/server/serverTime

GET Response
Returns the serverTime object if the request is sucessful. Returns an error object if errors occur.

serverTime 181
The serverTime object includes the following attribute:
time
Local time of the Informatica Cloud server.

GET Example
To check the local time of the Informatica Cloud server, you might use the following request:
GET <serverUrl>/api/v2/server/serverTime HTTP/1.0
Accept: application/xml
icSessionId: <icSessionId>

task
Use this resource to request a list of tasks of a specified type. You can use this resource to retrieve the name
and ID for a task.

GET Request
To request a list of tasks of a specified type, use the task type code in the following URI.
/api/v2/task?type=<type>

Use the following attribute in the URI:

type
Required.

Task type. Use one of the following codes:

AVS. Contact Validation task.


DMASK. Data Masking task.
DNB_TASK. D&B360 task.
DNB_WORKFLOW. D&B360 workflow.
DQA. Data Assessment task.
DRS. Data Replication task.
DSS. Data Synchronization task.
MTT. Mapping Configuration task.
PCS. PowerCenter task.

GET Response
If the request is successful, returns the task object for every task of the requested type. Returns the error
object if errors occur.

The task object includes the following attributes.

id
Task ID.

orgId
Organization ID.

182 Chapter 2: Informatica Cloud REST API


name
Task name.

description
Description.

createTime
Time the task was created.

updateTime
Last time the task was updated.

createdBy
User who created the task.

updatedBy
User who last updated the task.

GET Example
To view a list of all data synchronization tasks, use the following request.
/api/v2/task?type=DSS

user
Use this resource to request the details of an Informatica Cloud user account or the details of all user
accounts in the organization. If you have administrator privileges, you can also use this resource to create or
update a user account and to delete a user account. To ensure organization security, this resource does not
display or update the password for a user account.

GET Request
To request the details of all Informatica Cloud user accounts, use the following URI:
/api/v2/user

To request the details of a particular Informatica Cloud user account, you can include the user account ID or
user name in the URI. Use one of the following URIs:
/api/v2/user/<id>
/api/v2/user/name/<name>

If you use the user name in the URI and the user name includes a space, replace the space with %20. For
example:
/api/v2/user/name/Fred%20Smith

GET Response
When you request the details for a user account, Informatica Cloud returns the user object for the requested
user account. When you request the details of all user accounts, Informatica Cloud returns the user object for
each user account in the organization.

The user object includes the following attributes:

user 183
id
User ID.

orgId
ID of the organization the user belongs to.

name
Informatica Cloud user name.

description
Description of the user.

createTime
When the user account was created.

updateTime
When the user account was last updated.

createdBy
Informatica Cloud user who created the user account.

updatedBy
Informatica Cloud user who last updated the user account.

sfUsername
Salesforce user name.

password
Password. If using sfUsername, this is the Salesforce password.

firstName
First name for the user account.

lastName
Last name for the user account.

title
Title of the user.

phone
Phone number for the user.

securityQuestion
Security question. Returns one of the following codes:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

184 Chapter 2: Informatica Cloud REST API


securityAnswer
Answer to the security question.

roles
Roles assigned to the user. The following attributes are included in a role object for each role:
name
Role name. Returns one of the following codes:

SERVICE_CONSUMER
DESIGNER
ADMIN

description
Description.

usergroups
User group assigned to the user. The following attributes are included in a usergroup object for each
user group:
id
User group ID.

orgId
Organization ID.

name
User group name.

description
Description.

createTime
Time the user group was created.

updateTime
Last time the user group was updated.

createdBy
User who created the user group.

updatedBy
User who last updated the user group.

aclEntry
Permissions assigned to the user group. Includes permissions attributes in an aclEntry object for
each object type. For more information about the aclEntry object, see the usergroup on page 188
resource.

emails
Email address to be notified when the user changes the account password.

If you pass multiple email addresses in this field, Informatica Cloud uses the first email address in the
list.

user 185
timezone

Time zone of the user. Time zone honors Daylight Saving Time.

For more information, see Appendix A , Time Zone Codes on page 205.

serverUrl
Informatica Cloud URL for the organization the user belongs to. Use the serverUrl as a base for most
REST API resource URIs.

spiUrl
Informatica Cloud Application Integration URL for the organization the user belongs to.

uuId
Unique identifier for the user.

icSessionId
Informatica Cloud REST API session ID. Use in most REST API request headers.

forceChangePassword
Determines if the user must reset the password after the user logs in for the first time. Includes the
following values:

True. The user must reset the password.


False. The user is not forced to reset the password.

POST Request
You must be logged in as an administrator in order to create users or update user details. To update the
details of an existing user account, use the user account ID in the following URI. To create a new Informatica
Cloud user account, omit the optional user account ID.
/api/v2/user/<id>

With this URI, you can use the following attributes in a user object:

name
Required unless the user is a SAML single sign-on user.

Informatica Cloud user name.

sfUsername
Optional.

Salesforce user name.

password
Password. If using sfUsername, this is the Salesforce password. Not required for a SAML single sign-on
user.

firstName
Required.

First name for the user account.

lastName
Required.

Last name for the user account.

186 Chapter 2: Informatica Cloud REST API


title
Required.

Title of the user.

phone
Required.

Phone number for the user.

emails
Optional.

Email address to be notified when the user changes the account password. If you pass multiple email
addresses in this field, Informatica Cloud uses the first email address in the list.

description
Optional.

Description of the user.

timezone
Optional.
Time zone of the user. Time zone honors Daylight Saving Time. Use the appropriate time zone code.

If no valid time zone is passed, Informatica Cloud uses America/Los_Angeles by default.

For more information, see Appendix A , Time Zone Codes on page 205

securityQuestion
Optional.

Security question. Use one of the following codes to select the security question:

SPOUSE_MEETING_CITY
FIRST_JOB_CITY
CHILDHOOD_FRIEND
MOTHER_MAIDEN_NAME
PET_NAME
CHILDHOOD_NICKNAME
CUSTOM_QUESTION:"<question>"

securityAnswer
Optional.

Answer to the security question.

roles
Required.

Role for the user. Use one of the following codes:

SERVICE_CONSUMER
DESIGNER
ADMIN

user 187
usergroups
Optional.

User group for the user.

forceChangePassword
Determines if the user must reset the password after the user logs in for the first time. Includes the
following values:

True. The user must reset the password.


False. The user is not forced to reset the password.

POST Response
Returns the user response object for the requested user account. Or, if you requested information for all user
accounts, returns the user response object for each user account in the organization.

Returns an error object if errors occur.

DELETE Request
To delete a user, use the user account ID in the following URI.
/api/v2/user/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns an error object if errors occur.

POST Example
To create a new user, you might use the following request:
POST <serverUrl>/api/v2/user/ HTTP/1.0
Content-Type: application/xml
Accept: application/xml
icSessionId: <icSessionId>

<user>
<name>[email protected]</name>
<firstName>User</firstName>
<lastName>Name</lastName>
<title>developer</title>
<timeZone>America/Chicago</timeZone>
</user>

usergroup
Use this resource to request the details of a user group or the details of all user groups in the organization.

GET Resource
To request the details of all user groups in the organization, use the following URI:
/api/v2/usergroup

188 Chapter 2: Informatica Cloud REST API


To request the details of a particular user group, include the user group ID or the user group name in the
URI. Use one of the following URIs:
/api/v2/usergroup/<id>
/api/v2/usergroup/name/<name>

If you use the user group name in the URI and the user group name includes a space, replace the space with
%20. For example:
/api/v2/usergroup/name/my%20user%20group

GET Response
Returns the usergroup object for the requested user group. When you request information for all user groups
in the organization, returns a usergroup object for each user group in the organization.

Returns the error object if errors occur.

The usergroup object includes the following attributes:

id
User group ID.

orgId
Organization ID.

name
User group name.

description
Description.

createTime
Time the user group was created.

updateTime
Time the user group was last updated.

createdBy
User who created the user group.

updatedBy
User who last updated the user group.

aclEntry
Permissions assigned to the user group. Each aclEntry (Access Control List) represents the permissions
associated with a given object type. Includes the following attributes in an aclEntry object for each object
type:

adminPermission
Allows you to configure permissions for individual objects of the selected type.

createPermission
Allows you to create objects. Also allows you to download and install the Secure Agent.

deletePermission
Allows you to delete objects.

usergroup 189
executePermission

Allows you to run tasks and task flows. Allows you to restart tasks from the activity log. Allows you
to monitor jobs and stop jobs in the activity monitor.

Also allows you to add tasks to a task flow if you have update permission on the task flow.

objectType
Permissions object. Returns one of the following codes:

Agent. Secure Agent.


Connection.
Schedule.
CustomFunc. Mapplet
CustomSource. Saved query.
WORKFLOW. Task flow.
DSS. Data synchronization task.
DRS. Data replication task.
DQA. Data assessment task.
PCS. PowerCenter task.
DNB_TASK. D&B360 task.
AVS. Contact validation task.
MTT. Mapping configuration task.
TEMPLATE. Integration template.
DMASK. Data masking task.
BUNDLE. Bundle.
DTEMPLATE. Mapping.
SERVICE_PROCESS. Service and process.
RETIREMENT. Application retirement.
AgentGroup. Runtime environment.
BSERVICE. Business service definition.
FWCONFIG. Fixed width file format.
StructureDiscovery. Intelligent Structure Discovery.

readPermission
Allows you to view objects and view the details about each object. Also allows you to use a
connection or schedule in a task.

updatePermission
Allows you to edit objects.

id
User group ID.

orgId
Organization ID.

190 Chapter 2: Informatica Cloud REST API


userId
User ID.

objectId
ID of the permissions object.

objectDeleted
Whether the object was deleted. Returns one of the following values:

True
False

addedByAppId

GET Example
To request the details for all user groups in the organization, use the following URI:
/api/v2/usergroup

workflow
Use this resource to request the details of task flow or the details of all task flows in the organization. You
can also create or update a task flow, and you can delete a task flow.

GET Request
To request the details of a particular task flow, include the task flow ID or task flow name in the URI. Use one
of the following URIs:
/api/v2/workflow/<id>
/api/v2/workflow/name/<name>

If you use the task flow name in the URI and the task flow name includes a space, replace the space with
%20. For example:
/api/v2/workflow/name/my%20workflow

To request the details of all task flows in the organization, use the following URI:
/api/v2/workflow

Optionally, you can receive the response in simple mode which significantly improves performance. When
you enable simple mode, the response does not include the ScheduleId attribute and the email attributes. To
receive the response in simple mode, include simpleMode=true in the request. Use the following URI to
receive details of all task flows using simple mode:
/api/v2/workflow/?simpleMode=true

GET Response
If successful, returns the workflow object for the requested task flow. Or, if you request the details for all task
flows in the organization, returns a workflow object for each task flow in the organization.

Returns an error object if errors occurred.

The workflow object includes the following attributes:

workflow 191
id
Task flow ID.

orgId
Organization ID.

name
Task flow name.

description
Description.

createTime
Time the task flow was created.

updateTime
Last time the task flow was updated.

createdBy
User who created the task flow.

updatedBy
User who last updated the task flow.

errorTaskEmail
Attribute that includes the following attributes in the taskEmail object:

id
ID.

emails
Email addresses to receive notification if the task flow fails to complete.

successTaskEmail
Attribute that includes the following attributes in the taskEmail object.

id
ID.

emails
Email addresses to receive notification if the task flow completes successfully.

warningTaskEmail
Attribute that includes the following attributes in the taskEmail object:
id
ID.

emails
Email addresses to receive notification if the task flow completes with errors.

agentId
Agent that runs the tasks.

runtimeEnvironmentId
Runtime environment where the tasks run.

192 Chapter 2: Informatica Cloud REST API


scheduleId
Schedule associated with the task flow, if any.

preProcessingCmd
Command to run before the task.

postProcessngCmd
Command to run after the task.

tasks

Attribute that defines each task associated with the workflow.

Includes the following information for each task in a workflowTask object:

taskId
Task ID.

type
Workflow task type. Returns one of the following codes:

AVS. Contact validation task.


DMASK. Data masking task.
DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.

name
Task name.

stopOnError
Stops the task flow if a task fails to complete.

stopOnWarning
Stops the task flow if a task completes with warnings.

POST Request
To update a task flow, use the following URI:
/api/v2/workflow/<id>

To create a task flow, omit the optional task flow ID.

When you update a task flow, Informatica Cloud replaces the existing task flow with the update.

You can submit a partial update using partial mode. If you want to update a field in the workflowTask object
using partial mode, you must include the taskId field. To submit a request using partial mode, use a JSON
request and include the following line in the header:
Update-Mode=PARTIAL

With this URI, you can use the following attributes in the workflow object:

errorTaskEmail

Optional.

workflow 193
Attribute that includes the following attributes in the taskEmail object:

emails
List of comma-separated email addresses that receive email notification when a task flow fails to
complete.

successTaskEmail

Optional.

Attribute that includes the following attributes in the taskEmail object:

emails
List of comma-separated email addresses that receive email notification when a task flow completes
successfully.

warningTaskEmail

Optional.

Attribute that includes the following attributes in the taskEmail object:

emails
List of comma-separated email addresses that receive email notification when a task flow completes
with errors.

name
Name of the task flow.

description

Optional.

Description of the task flow.

tasks

Attribute that defines the tasks used in the workflow.

Use a workflowTask object to define the following attributes for each task you want to use:

taskId
Task ID.

type
Task type. Use one of the following codes:

AVS. Contact validation task.


DQA. Data assessment task.
DRS. Data replication task.
DSS. Data synchronization task.
MTT. Mapping configuration task.
PCS. PowerCenter task.

name
Task name.

194 Chapter 2: Informatica Cloud REST API


stopOnError

Optional.

Stops the task flow if the task fails to complete. Use one of the following options:

1. True. Stop on error.


2. False. Do not stop on error.

stopOnWarning

Optional.

Stops the task flow if a task completes with warnings. Use one of the following options:

1. True. Stop on error.


2. False. Do not stop on error.

scheduleId

Optional.

Schedule for the task flow.

POST Response
If successful, returns the workflow response object for the task flow that you created or updated.

Returns the error object if errors occur.

DELETE Request
To delete a task flow, use the task flow ID in the following URI:
/api/v2/workflow/<id>

DELETE Response
Returns the 200 response code if the request is successful.

Returns the error object if errors occur.

POST Example
To update an existing task flow with an ID of 0000342J0000K, you might use the following request:
POST <serverUrl>/api/v2/workflow/0000342J0000K HTTP/1.0
Content-Type: application/json
Accept: application/json
icSessionId: <icSessionId>

{
"@type": "workflow",
"name": "task flow",
"tasks":[{
"@type":"workflowTask",
"taskId":"0000100I00000000001G",
"type":"DSS",
"name":"DSS_DQ5",
"stopOnError":"false"
},{
"@type":"workflowTask",
"taskId":"0000100Z0000000000B8",
"type":"MTT",
"name":"CIT_SimpleTemplate2",
"stopOnError":"false"
},{
"@type":"workflowTask",
"taskId":"0000100G000000000002",
"type":"DRS",

workflow 195
"name":"SF2File",
"stopOnError":"false"
}]
}

A successful request returns the workflow object that you updated.

196 Chapter 2: Informatica Cloud REST API


APPENDIX A

REST API Codes and


Supplemental Information
This section includes values used for state, country, and time zone attributes. This section also includes
supplemental information such as connector data types and a mapping of connection REST API attributes to
user interface fields.

REST API Codes

REST API Codes Overview


The Informatica Cloud REST API uses codes to represent data such as country names. Use the codes to
pass information to the REST API and to interpret the data returned by the REST API.

The Informatica Cloud REST API uses codes for the following information:

Country codes. Represent country names.


State codes. Represent the names of the United States.
Time zone codes. Represent time zones.

State Codes
The Informatica Cloud REST API uses the following codes to represent the names of the United States.

AL. Alabama.
AK. Alaska.
AZ. Arizona.
AR. Arkansas.
CA. California.
CO. Colorado.
CT. Connecticut.
DE. Delaware.
FL. Florida.

197
GA. Georgia.
HI. Hawaii.
ID. Idaho.
IL. Illinois.
IN. Indiana.
IA. Iowa.
KS. Kansas.
KY. Kentucky.
LA. Louisiana.
ME. Maine.
MD. Maryland.
MA. Massachusetts.
MI. Michigan.
MN. Minnesota.
MS. Mississippi.
MO. Missouri.
MT. Montana.
NE. Nebraska.
NV. Nevada.
NH. New Hampshire.
NJ. New Jersey.
NM. New Mexico.
NY. New York.
NC. North Carolina.
ND. North Dakota.
OH. Ohio.
OK. Oklahoma.
OR. Oregon.
PA. Pennsylvania.
RI. Rhode Island.
SC. South Carolina.
SD. South Dakota.
TN. Tennessee.
TX. Texas.
UT. Utah.
VT. Vermont.
VA. Virginia.
WA. Washington.
WV. West Virginia.

198 Appendix A: REST API Codes and Supplemental Information


WI. Wisconsin.
WY. Wyoming.

Country Codes
The Informatica Cloud REST API uses the following codes to represent country names.

AF. Afghanistan.
AX. Aland Islands.
AL. Albania.
DZ. Algeria.
AS. American Samoa.
AD. Andorra.
AO. Angola.
AI. Anguilla.
AQ. Antarctica.
AG. Antigua and Barbuda.
AR. Argentina.
AM. Armenia.
AW. Aruba.
AU. Australia.
AT. Austria.
AZ. Azerbaijan.
BS. Bahamas.
BH. Bahrain.
BD. Bangladesh.
BB. Barbados.
BY. Belarus.
BZ. Belize.
BE. Belgium.
BJ. Benin.
BM. Bermuda.
BT. Bhutan.
BO. Bolivia.
BA. Bosnia and Herzegovina.
BW. Botswana.
BV. Bouvet Island.
BR. Brazil.
IO. British Indian Ocean Territory.
BN. Brunei Darussalam.
BG. Bulgaria.

REST API Codes 199


BF. Burkina Faso.
BI. Burundi.
KH. Cambodia.
CM. Cameroon.
CA. Canada.
CV. Cape Verde.
KY. Cayman Islands.
CF. Central African Republic.
TD. Chad.
CL. Chile.
CN. China.
CX. Christmas Island.
CC. Cocos (Keeling) Islands.
CO. Colombia.
KM. Comoros.
CG. Congo.
CD. Congo, the Democratic Republic of the.
CK. Cook Islands.
CR. Costa Rica.
CI. Cote d'Ivoire.
HR. Croatia.
CU. Cuba.
CY. Cyprus.
CZ. Czech Republic.
DK. Denmark.
DM. Dominica.
DO. Dominican Republic.
DJ. Djibouti.
EC. Ecuador.
EG. Egypt.
SV. El Salvador.
GQ. Equatorial Guinea.
ER. Eritrea.
EE. Estonia.
ET. Ethiopia.
FK. Falkland Islands (Malvinas).
FO. Faroe Islands.
FJ. Fiji.
FI. Finland.

200 Appendix A: REST API Codes and Supplemental Information


FR. France.
GF. French Guiana.
PF. French Polynesia.
TF. French Southern Territories.
GA. Gabon.
GM. Gambia.
GE. Georgia.
DE. Germany.
GH. Ghana.
GI. Gibraltar.
GR. Greece.
GL. Greenland.
GD. Grenada.
GP. Guadeloupe.
GU. Guam.
GT. Guatemala.
GG. Guernsey.
GN. Guinea.
GW. Guinea-Bissau.
GY. Guyana.
HT. Haiti.
HM. Heard Island and McDonald Islands.
HN. Honduras.
HK. Hong Kong.
HU. Hungary.
IS. Iceland.
IN. India.
ID. Indonesia.
IR. Iran, Islamic Republic of.
IQ. Iraq.
IE. Ireland.
IL. Israel.
IM. Isle of Man.
IT. Italy.
JM. Jamaica.
JP. Japan.
JE. Jersey.
JO. Jordan.
KZ. Kazakhstan.

REST API Codes 201


KE. Kenya.
KI. Kiribati.
KP. Korea, Democratic People's Republic of.
KR. Korea, Republic of.
KW. Kuwait.
KG. Kyrgyzstan.
LA. Lao People's Democratic Republic.
LV. Latvia.
LB. Lebanon.
LS. Lesotho.
LR. Liberia.
LY. Libyan Arab Jamahiriya.
LI. Liechtenstein.
LT. Lithuania.
LU. Luxembourg.
MO. Macao.
MK. Macedonia, the former Yugoslav Republic of.
MG. Madagascar.
MW. Malawi.
MY. Malaysia.
MV. Maldives.
ML. Mali.
MT. Malta.
MH. Marshall Islands.
MR. Mauritania.
MU. Mauritius.
MQ. Martinique.
YT. Mayotte.
MX. Mexico.
FM. Micronesia, Federated States of.
MD. Moldova, Republic of.
MC. Monaco.
MN. Mongolia.
ME. Montenegro.
MS. Montserrat.
MA. Morocco.
MZ. Mozambique.
MM. Myanmar.
NA. Namibia.

202 Appendix A: REST API Codes and Supplemental Information


NR. Nauru.
NP. Nepal.
NL. Netherlands.
NC. New Caledonia.
NZ. New Zealand.
NI. Nicaragua.
NE. Niger.
NG. Nigeria.
NU. Niue.
NF. Norfolk Island.
MP. Northern Mariana Islands.
OM. Oman.
PK. Pakistan.
PW. Palau.
PS. Palestinian Territory, Occupied.
PA. Panama.
PG. Papua New Guinea.
PY. Paraguay.
PE. Peru.
PH. Philippines.
PN. Pitcairn.
PL. Poland.
PT. Portugal.
PR. Puerto Rico.
QA. Qatar.
RE. Reunion.
RO. Romania.
RU. Russian Federation.
RW. Rwanda.
BL. Saint Barthelemy.
SH. Saint Helena.
KN. Saint Kitts and Nevis.
LC. Saint Lucia.
MF. Saint Martin (French part).
PM. Saint Pierre and Miquelon.
VC. Saint Vincent and the Grenadines.
WS. Samoa.
SM. San Marino.
ST. Sao Tome and Principe.

REST API Codes 203


SA. Saudi Arabia.
SN. Senegal.
RS. Serbia.
SC. Seychelles.
SL. Sierra Leone.
SG. Singapore.
SK. Slovakia.
SI. Slovenia.
SB. Solomon Islands.
SO. Somalia.
ZA. South Africa.
GS. South Georgia and the South Sandwich Islands.
ES. Spain.
LK. Sri Lanka.
SD. Sudan.
SR. Suriname.
SJ. Svalbard and Jan Mayen.
SZ. Swaziland.
SY. Syrian Arab Republic.
SE. Sweden.
CH. Switzerland.
TW. Taiwan.
TJ. Tajikistan.
TZ. Tanzania, United Republic of.
TH. Thailand.
TL. Timor-Leste.
TG. Togo.
TK. Tokelau.
TO. Tonga.
TT. Trinidad and Tobago.
TN. Tunisia.
TR. Turkey.
TC. Turks and Caicos Islands.
TM. Turkmenistan.
TV. Tuvalu.
UG. Uganda.
UA. Ukraine.
AE. United Arab Emirates.
GB. United Kingdom.

204 Appendix A: REST API Codes and Supplemental Information


US. United States.
UM. United States Minor Outlying Islands.
UY. Uruguay.
UZ. Uzbekistan.
VU. Vanuatu.
VA. Holy See (Vatican City State).
VE. Venezuela.
VN. Viet Nam.
VG. Virgin Islands, British.
VI. Virgin Islands, U.S.
WF. Wallis and Futuna.
EH. Western Sahara.
YE. Yemen.
ZM. Zambia.
ZW. Zimbabwe.

Time Zone Codes


The Informatica Cloud REST API uses the following time zone codes:

Pacific/Apia
Pacific/Tahiti
HST
Pacific/Gambier
AST
America/Vancouver
America/Tijuana
America/Los_Angeles
America/Phoenix
America/Dawson_Creek
America/Denver
America/El_Salvador
America/Costa_Rica
America/Mexico_City
America/Chicago
America/Jamaica
America/Panama
America/Montreal
America/Havana
America/New_York
America/Barbados

REST API Codes 205


America/Dominica
America/Guadeloupe
America/Puerto_Rico
America/Halifax
CNT
America/Buenos_Aires
Atlantic/South_Georgia
Atlantic/Cape_Verde
Africa/Casablanca
GMT
Europe/London
Europe/Vienna
Europe/Brussels
Europe/Zurich
Europe/Prague
Europe/Berlin
Europe/Copenhagen
Europe/Madrid
Europe/Budapest
Europe/Rome
Europe/Luxembourg
Europe/Amsterdam
Europe/Warsaw
Europe/Stockholm
Europe/Belgrade
Europe/Paris
Africa/Johannesburg
Africa/Cairo
Europe/Athens
Asia/Jerusalem
Europe/Bucharest
Europe/Istanbul
Asia/Bahrain
Africa/Nairobi
Asia/Kuwait
Asia/Qatar
Asia/Riyadh
Asia/Baghdad
Europe/Moscow

206 Appendix A: REST API Codes and Supplemental Information


Asia/Dubai
Indian/Mauritius
Asia/Muscat
Asia/Karachi
IST
Asia/Katmandu
BST
Asia/Rangoon
VST
Australia/Perth
Asia/Hong_Kong
Asia/Kuala_Lumpur
Asia/Singapore
CTT
Asia/Seoul
JST
ACT
AET
Australia/Lord_Howe
Asia/Magadan
Pacific/Auckland
Pacific/Norfolk
Pacific/Fiji
Pacific/Chatham
Pacific/Enderbury
Pacific/Kiritimati

Connector Data Types


When you submit a request for connector metadata, data type is included in the response. Data types for
connector attributes are returned in REST API responses using a numeric value.

The following example shows a response with the type value of 2:


{
"name": "database",
"label": "",
"id": "",
"value": "",
"type": 2,
"isMandatory": true,
"visible": false,
"list": []
},

Connector Data Types 207


The type value of 2 means the database attribute can only contain alphabetic characters.

The following table lists the numeric values that might be included in the response and the corresponding
data type:

Value Data Type Description

1 NUMERIC_TYPE Attribute value can only contain numbers.

2 ALPHABET_TYPE Attribute value can only contain alphabetic characters.

3 NUMERIC_TYPE/ Attribute value can only contain numbers or alphabetic characters.


ALPHABET_TYPE

4 SYMBOLS_TYPE Attribute value can only contain symbols.

5 NUMERIC_TYPE/ Attribute value can only contain numbers and symbols.


SYMBOLS_TYPE

6 ALPHABET_TYPE/ Attribute value can only contain alphabetic characters and symbols.
SYMBOLS_TYPE

7 NUMERIC_TYPE/ Attribute value can only contain alphabetic characters, numbers, and symbols.
ALPHABET_TYPE/
SYMBOLS_TYPE

8 LIST_TYPE Attribute value can only contain values from a predefined list.

9 NUMERIC_TYPE/ Attribute value can only contain values from a predefined list and the value contains
LIST_TYPE only numbers.

10 ALPHABET_TYPE/ Attribute value can only contain values from a predefined list and the value contains
LIST_TYPE only numbers.

11 NUMERIC_TYPE/ Attribute value can only contain values from a predefined list and the value contains
ALPHABET_TYPE/ only alphabetic characters and numbers.
LIST_TYPE

12 SYMBOLS_TYPE/ Attribute value can only contain values from a predefined list and the value contains
LIST_TYPE only symbols.

13 NUMERIC_TYPE/ Attribute value can only contain values from a predefined list and the value contains
SYMBOLS_TYPE/ only numbers and symbols.
LIST_TYPE

14 ALPHABET_TYPE/ Attribute value can only contain values from a predefined list and the value contains
SYMBOLS_TYPE/ only alphabetic characters and symbols.
LIST_TYPE

15 NUMERIC_TYPE/ Attribute value can only contain values from a predefined list and the value contains
ALPHABET_TYPE/ only alphabetic characters, numbers, and symbols.
SYMBOLS_TYPE/
LIST_TYPE

16 BOOLEAN Attribute value is a boolean.

32 PASSWORD Attribute value is a password.

For more information about requesting connector metadata, see connector on page 87.

208 Appendix A: REST API Codes and Supplemental Information


Connection User Interface Fields to REST API
Attributes Mapping
Some connection field names in the Informatica Cloud user interface do not intuitively map to corresponding
REST API attribute names in the connection resource. Additionally, some attribute names used for REST API
GET and POST methods for the connection resource do not match the attribute names used in the REST API
response that populates the values shown in the user interface.

The following tables map user interface fields with attributes used for REST API GET and POST calls and the
REST API response to the user interface, where the correlation between these fields might be confusing.

Connection UI Field Name REST API GET and POST Response to UI


Attribute Name Attribute Name

All connections Runtime Environment runtimeEnvironmentId agentGroupId

CSV Flat File Directory database dirName

FTP and SFTP Directory database dirName

Microsoft Access Data Source Name database database

Microsoft SQL Server SQL Server Version type subType

Oracle Service Name database database

SAP IDoc Reader Destination Entry database database

SAP IDoc Writer and SAP RFC/ Connection String database database
BAPI

Web Service Consumer Endpoint URL serviceUrl serviceUrl

Connection User Interface Fields to REST API Attributes Mapping 209


Index

A error messages
REST API 35
activityLog error object
REST API resource 46 REST API 34
activityMonitor expressionValidation
REST API resource 55 REST API resource 97
agent
REST API resource 58
API 25
auditlog
F
REST API resource 61 field
REST API resource 98
fileRecord

B REST API resource 101


fwConfig
best practices REST API resource 104
Informatica Cloud Connector Toolkit 10
body configuration
REST API 28
bundleObject
G
REST API resource 64 guidelines
bundleObjectLicense REST API 36
REST API resource 66

H
C header configuration
Cloud Application Integration community REST API 27
URL 7
Cloud Developer community
URL 7
connection
I
REST API resource 68 IConnection
connection attributes and user interface fields 209 toolkit connection interface 19
connections IDataOperation
available connectors for an organization 87 toolkit data operation interface 19
connector 87 IDefinetMetadata
connector type data types 207 toolkit target object creation interface 22
connectors IExplicitMultiObjectMetadata
available for an organization 68 toolkit multiple source object interface 18
customFunc IExtWrtMetadata
REST API resource 88 toolkit extended write metadata interface 17
IExtWrtPlugin
toolkit extended write plugin interface 16

D IMetadata
toolkit metadata interface 17
dataPreview Informatica Cloud
REST API resource 94 REST API 25
date/time values Informatica Cloud Community
REST API 32 URL 7
Informatica Cloud Connector Toolkit
best practices 10

E IConnection interface 19
IDataOperation interface 19
error logs 46 IDefineMetadata interface 22
IExplicitMultiObjectMetadata interface 18

210
Informatica Cloud Connector Toolkit (continued)
IExtWrtMetadata interface 17 M
IExtWrtPlugin interface 16 mapping
IMetadata interface 17 REST API resource 121
IMultiObjectRead interface 20 masterTemplate
interface architecture 13 REST API resource 125
IPlugin interface 15 midstream writes
IRead interface 19 configuring an Informatica Cloud Connector 14
IRegistrationInfo 16 mttask
ITypeSystem interface 18 REST API resource 134
IValidateRead interface 22
IWrite interface 21
IWrite2 interface 20
midstream writes 14 O
overview 9 object configuration
read validation 15 REST API, in XML and JSON 28
related source objects 14 object IDs
sample project 10 retrieving for the REST API 33
target creation 14 org
tasks and related interfaces and methods 13 REST API resource 152
Informatica Cloud Connectors
development process 10
rules and guidelines for development 11
Informatica Cloud web site P
URL 7 partial updates 31
Informatica Global Customer Support process
contact information 8 for developing Informatica Cloud Connectors 10
IPlugin
toolkit top-level interface 15
IRead
toolkit multiple object read interface 20 Q
toolkit read interface 19 quick reference
IRegistrationInfo REST API resources 37
toolkit registration interface 16
ITypeSystem
toolkit datatype interface 18
IValidateRead R
toolkit multiple source read validation interface 22 register
IWrite REST API resource 163
toolkit write interface 21 related sources
IWrite2 configuring an Informatica Cloud Connector 14
toolkit write and extended write interface 20 responses
REST API 34
REST API
J activityLog resource 46
activityMonitor resource 55
job agent resource 58
REST API resource 108 auditlog resource to view audit entries 61
body configuration 28
bundleObject resource to view bundle details 64
L bundleObjectLicense resource 66
codes 197
licenseInfo connection resource 68
REST API resource 111 customFunc resource to work with mapplets 88
logging dataPreview resource 94
configuring for Informatica Cloud Connectors 10 date/time values 32
login documentation conventions 37
REST API resource 113 error messages 35
loginSaml error object 34
REST API resource 118 expressionValidation 97
logout field resource 98
REST API resource 117 fileRecord resource 101
logoutall fwConfig 104
REST API resource 117 guidelines 36
header configuration 27
job resource 108
JSON example 30
licenseInfo resource 111

Index 211
REST API (continued) sub-organization licenses 111
login resource 113
loginSaml 118
logout resource to end a REST API session 117
logoutall resource to end all REST API sessions 117 T
mapping resource for working with mappings 121 target creation
masterTemplate resource for working with integration templates 125 configuring an Informatica Cloud Connector 14
mttask resource to work with mapping configuration tasks 134 task
org resource 152 REST API resource 182
overview 25 time zone codes
register resource 163 REST API 205
resource quick reference 37 trust site
responses 34 description 8
retrieving and using object IDs 33 @type
return lists 29 use with JSON (REST API) 28
serverTime resource 181
session status 33
state codes 197, 199
task resource to view task details 182 U
time zone codes 205 update modes 31
user resource 183 user
usergroup resource to view user group details 188 REST API resource 183
workflow resource to work with task flows 191 usergroup
XML example 31 REST API resource 188
XML schema definition (XSD) 27
return list configuration
REST API in XML and JSON 29
rules and guidelines V
for developing Informatica Cloud Connectors 11 validation
for Informatica Cloud Connectors 15

S
sample project W
Informatica Cloud Connector Toolkit 10 workflow
schedule REST API resource 191
REST API resource 173
serverTime
REST API resource 181
session IDs 33 X
session logs 46 XML schema definition (XSD)
state codes REST API 27
REST API 197, 199

212 Index

You might also like