Using the Connections REST API

The Connections REST API has a few different shapes of data to consider, given that a connection can be one of:
  • MetadataOnly

  • WebService

  • ServiceCloud

  • EngagementCloud

  • IntegrationCloud

  • GenericProvider

  • InterviewExtensionData

There are both read-only and write-only properties in each of these shapes. The swagger documentation indicates which fields are read-only or write-only.

Example GET response to metadata-only connection

{
    "serviceName": "Test 129",
    "serviceType": "MetadataOnly",
    "workspaces": ["Default Collection"],
    "lastStatus": {
        "timestamp": "2024-10-16T05:23:03Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "metadata": {
        "staticMetadata":"<typ:get-metadata-response xmlns:typ=\"<xref format=\"html\" href=\"http://xmlns.oracle.com/policyautomation/hub/12.2.2/metadata/types/\" scope=\"external\"><b>http://xmlns.oracle.com/policyautomation/hub/12.2.2/metadata/types\"</b></xref>supports-checkpoints=\"true\"><!--Optional:--><!--Zero or more repetitions:--><typ:Table accepts-attachments=\"false\" can-be-input=\"true\" can-be-output=\"true\" description=\"INFO\" name=\"Info\"> <!--Zero or more repetitions:--> <typ:Field can-be-input=\"false\" can-be-output=\"true\" description=\"CHILD_NUMBER\" name=\"child_number\" type=\"DECIMAL\"/> <!--Zero or more repetitions:--> <typ:Link cardinality=\"C_1M\" description=\"ALL_CHILDREN\" name=\"all_children\" target=\"Child\"/><\/typ:Table><typ:Table accepts-attachments=\"false\" can-be-input=\"true\" can-be-output=\"true\" description=\"CHILD\" name=\"Child\"> <!--Zero or more repetitions:--> <typ:Field can-be-input=\"true\" can-be-output=\"false\" description=\"CHILD_NAME\" name=\"child_name\" type=\"STRING\"/> <typ:Field can-be-input=\"true\" can-be-output=\"false\" description=\"CHILD_AGE\" name=\"child_age\" type=\"DECIMAL\"/> <typ:Field can-be-input=\"false\" can-be-output=\"true\" description=\"BIGGEST_CHILD\" name=\"biggest_child\" type=\"BOOLEAN\"/> <!--Zero or more repetitions:--> <typ:Link cardinality=\"C_1M\" description=\"CHILD_TOYS\" name=\"child_toys\" target=\"Toy\"/><\/typ:Table><typ:Table accepts-attachments=\"false\" can-be-input=\"true\" can-be-output=\"false\" description=\"TOY\" name=\"Toy\"> <!--Zero or more repetitions:--> <typ:Field can-be-input=\"true\" can-be-output=\"false\" description=\"TOY_NAME\" name=\"toy_name\" type=\"STRING\"/> <typ:Field can-be-input=\"true\" can-be-output=\"false\" description=\"TOY_PRICE\" name=\"toy_price\" type=\"DECIMAL\"/><\/typ:Table><\/typ:get-metadata-response>",
        "schemaVersion":"12.2.2",
        "usesObsoleteVersion": true
    }
}

Example GET response to web service connection

{
    "serviceName": "Test 128",
    "serviceType": "WebService",
    "workspaces": ["Default Collection"],
    "lastStatus": {
        "timestamp": "2024-10-16T05:23:03Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "webService": {
        "url": "https://mysite.example.com/my-webservice",
        "useCustomRootCertificatesFlag": false,
        "username": "service user",
        "useWSS": "MetadataOnly",
        "useWSSTimestampFlag": true,
        "bearerTokenName": "jwt",
        "usesObsoleteVersion": false
    }
}

Example GET response to Service Cloud connection

{
    "serviceName": "opa_dev",
    "serviceType": "ServiceCloud",
    "lastStatus": {
        "timestamp": "2024-10-16T05:23:03Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "workspaces": [
        "Default Collection",
        "RN_Workspace"
    ],
    "serviceCloud": {
        "url": "https://mysite.example.com/services/soap/connect/soap",
        "useCustomRootCertificatesFlag": false,
        "username": "OPA_Internal",
        "cxSiteName": "opa_dev",
        "sharedSecret": "ab123456-0a1b-9876-a123-123456ab123a"
    }
}

Example GET response to Sales and Fusion Service connection

{
    "serviceName": "connect",
    "serviceType": "EngagementCloud",
    "workspaces": ["Default Collection"],
    "lastStatus": {
        "timestamp": "2024-10-14T23:55:01Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "webService": {
        "url": "https://myfusionsite.example.com",
        "useCustomRootCertificatesFlag": false,
        "username": "sales_admin",
        "schemaVersion": "12.2.18",
        "useWSS": "MetadataOnly",
        "useWSSTimestampFlag": true,
        "bearerTokenName": "jwt",
        "linkedApiClient": "connect_api_client",
        "usesObsoleteVersion": false
    }
}

Example GET response to Integration Cloud connection

{
    "serviceName": "Integration Cloud Connection",
    "serviceType": "IntegrationCloud",
    "workspaces": [
        "Default Collection"
    ],
    "lastStatus": {
        "timestamp": "2024-10-15T00:03:21Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "integrationCloud": {
        "url": "http://mysite.example.com:7003/ic",
        "username": "icsdeveloper"
    }
}

Example GET response to Generic Provider connection

{
    "serviceName": "GIPDynamicQuery",
    "serviceType": "GenericProvider",
    "workspaces": [
        "Default Collection"
    ],
    "lastStatus": {
        "timestamp": "2024-10-15T00:06:44Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "genericProvider": {
        "url": "http://wsc-nodejs:3086/gipdynamicquery",
        "username": "test"
    }
}

Example GET response to interview extension connection

{
    "serviceName": "LACity",
    "serviceType": "InterviewExtensionData",
    "workspaces": [
        "Default Collection",
        "RN_Workspace"
    ],
    "lastStatus": {
        "timestamp": "2024-10-16T05:24:37Z",
        "okFlag": true,
        "summary": "Access test passed"
    },
    "interviewExtensionData": {
        "url": "https://data.lacity.org/resource/6rrh-rzua.json",
        "useCustomRootCertificatesFlag": false,
        "healthCheckUrl": "https://data.lacity.org/resource/6rrh-rzua.json?location_account=0",
        "authenticationMethod": "None"
    }
}