Table of Contents

Search

  1. Preface
  2. Introduction to REST V2 Connector
  3. Connections for REST V2
  4. REST V2 operations
  5. Mappings and mapping tasks with REST V2 Connector
  6. Swagger File Generation
  7. Appendix A: Swagger objects
  8. OpenAPI objects

REST V2 Connector

REST V2 Connector

Rules and guidelines for REST V2 operations

Rules and guidelines for REST V2 operations

Consider the following rules and guidelines for REST V2 Operations:
  • You cannot validate a request message.
  • Elements related to header fields, path parameters, and query parameters appears as input fields in Source, Target, and Midstream transformations.
  • You cannot configure a proxy server on which authentication is enabled.
  • To parse xml elements in request and response structures, ensure that the element is enclosed within a parent element. For example:
    <parentElement><childElement>xyz</childElement></parentElement>
  • You can only use Integer, Decimal, and Long data types. Set type as normal and format as int64 for fields that contain values of Long data type in the swagger specification file.
  • You can use packed field only in a Source transformation.
  • You cannot use extended ASCII characters and I18N characters in a field name for JSON payload.
  • You cannot use special characters in the field name for query parameters and operation names.
  • You must specify operationId for all operations in the OpenAPI specification file.
  • You cannot use special characters in the array type fields.
  • When you use application/xml or application/x-www-form-urlencoded media type to process data, do not use special characters, such as &, >, and < in data for headers, body, query parameters, and input fields. These characters are transformed in the target API to an encoded format. For example, & is encoded as &amp.
  • If you use invalid XML tags or special characters, such as &, >, and < in body and input fields in the application/xml media type, the task throws an exception during XML validation. For example, if input data is
    <BODID>infor-nid:infor:15101113565:?Employee
    &
    verb=Sync</BODID>
    , the following error message appears based on the input data:
    [ERROR][Fatal Error] :1:516: The reference to entity "verb" must end with the ';' delimiter
    You can ignore the error message.
  • You must not create in-out parameters for advanced properties, such as Page Parameter, Start Page, End Page, and Override URL.
  • REST V2 Connector overrides the Content-Type and Accept headers.
  • If an endpoint API path contains spaces, you must define the path as path parameter.
  • If the swagger URL you specify is not accessible or the proxy server is not accessible, mappings fail and one of the following errors is logged in the session log. The behavior is same for the source, midstream, and target mappings.
    • [ERROR] com.informatica.sdk.helper.common.ApiException: java.net.UnknownHostException: inv28pers108Communication exception, Proxy settings might be incorrect.
    • [ERROR] com.informatica.sdk.helper.common.ApiException: java.net.ConnectException: Connection refused: connectCommunication exception, Proxy settings might be incorrect.
  • You can define a page parameter on the request input field if the payload is of type JSON. The page parameter gets resolved only when the JSON request payload is an unnamed object. For example:
    "body" : {
    "a" : "ty",
    "b" : 0
    }
    The page parameter does not get resolved in the following scenarios:
    • When the JSON request payload is a named object.
    • The parameter defined is a nested input element.
    • The parameter defined is an array element.
    • When the payload is of type XML.
  • You can define default values for request input parameters except for the
    body
    and
    securityDefinitions
    parameters. For example:
    "parameters": {
    "keyReference": {
    "name": "keyReference",
    "in": "header",
    "required": false,
    "type": "integer",
    "default": 123
    }
    }
    Default values are applicable to integer, string, boolean, and array of primitive types fields.
  • When you use the REST V2 Connector as source, the default values defined in the swagger file are not honored if you pass empty values for input parameters in the request message editor. If you do not provide values in request message fields and want the fields to pick up default values defined in the swagger definition, you must remove the fields from the request message editor.
  • If the default value for an input parameter is defined as blank, the blank value is treated as NULL unless you set the value explicitly in a mapping.
  • You cannot define XML attributes using inline elements in the swagger file. Define XML attributes as separate elements in the swagger file and refer the XML attributes to extract data.
  • When you use a REST V2 connection to configure a source or target operation and try to modify the object by manually typing a valid name in the
    Operation
    field, the task fails with the following validation error:
    Error occurred validating object: Selected connection does not support this operation.
    Workaround: Select the same operation from the
    Select...
    dialog box and run the task again.
  • When you read JSON data with an array of response, the session log contains only the first instance of the array.
  • When you define parameters in the request body, ensure that the name under parameters and definitions is the same. In the following example, if the parameter name is
    getAccounts
    , the definition name in $ref must also be
    getAccounts
    :
    "parameters": { "name": "
    getAccounts
    ", "in": "body", "required": true, "schema":{ "$ref":"#/definitions/
    getAccounts
    " }
  • You can either define an attribute or a value in a single XML element. The following example where a single XML element contains both an attribute and a value is not applicable:
    <wd:ID wd:type="Organization_Role">Manager</wd:ID>

0 COMMENTS

We’d like to hear from you!