{
    "swagger":"2.0",
    "info":{
        "version":"2025.02.19",
        "title":"REST API for Multi Data Center in Oracle Access Manager",
        "description":"The Oracle Access Manager Multi Data Center(MDC) REST API is categorized into Administration APIs and Diagnostics APIs. Administration APIs help to couple two or more OAM data centers to work in a Multi Data Center topology. Diagnostics APIs help the administrator with the MDC configuration in the Data Centers, and review and analyze diagnostic information.",
        "x-summary":"The Oracle Access Manager Multi Data Center(MDC) REST API is categorized into Administration APIs and Diagnostics APIs."
    },
    "schemes":[
        "https"
    ],
    "consumes":[
        "application/json"
    ],
    "produces":[
        "application/json"
    ],
    "paths":{
        "/oam/services/rest/mdc/master":{
            "post":{
                "description":"To be executed only on the master data center. Creates the MDC configurations in the master and generates the required cloning artifacts that will need to be applied on the clone",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"mdc master configurations",
                        "in":"body",
                        "description":"These input parameters direct the MDC topology, the Data Center that needs to be configured as a MDC clone, and the various credentials/certificates needed for the coupling the two data centers",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/configureMasterParameters"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"The required MDC configurations were setup on the master DC, and the required clong artifatcs were generated successfully",
                        "schema":{
                            "$ref":"#/definitions/responseConfigureMaster"
                        }
                    },
                    "400":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "401":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "504":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "Setting up Multi data center"
                ],
                "summary":"1-Configure the Master Data Center for MDC",
                "x-internal-id":"oam-services-rest-mdc-master-post",
                "x-filename-id":"oam-services-rest-mdc-master-post"
            }
        },
        "/oam/services/rest/mdc/clone":{
            "post":{
                "description":"To be executed only on the clone data center. It contacts the master DC to download the generated cloning artifatcs and then applies the configurations on the clone, thereby making this DC as a MDC clone",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"mdc clone configurations",
                        "in":"body",
                        "description":"These input parameters enable the clone DC to reach out to the master to download the cloning artifacts",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/configureCloneParameters"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"The cloning articacts were downloaded and applied on the clone successfully",
                        "schema":{
                            "$ref":"#/definitions/responseConfigureClone"
                        }
                    },
                    "400":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "401":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "504":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "Setting up Multi data center"
                ],
                "summary":"2-Configure the Clone Data Center for MDC",
                "x-internal-id":"oam-services-rest-mdc-clone-post",
                "x-filename-id":"oam-services-rest-mdc-clone-post"
            }
        },
        "/oam/services/rest/mdc/clone/configuration":{
            "post":{
                "description":"To be executed only on the clone data center",
                "produces":[
                    "application/json"
                ],
                "responses":{
                    "200":{
                        "description":"Success",
                        "schema":{
                            "$ref":"#/definitions/responseReConfigureClone"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "Setting up Multi data center"
                ],
                "summary":"3-Applies Clone DC specific configuration",
                "x-internal-id":"oam-services-rest-mdc-clone-configuration-post",
                "x-filename-id":"oam-services-rest-mdc-clone-configuration-post"
            }
        },
        "/oam/services/rest/mdc/master/clone":{
            "post":{
                "description":"To be executed on the master data center. Creates the new clone DCs MDC configurations in the master and generates the required cloning artifacts that will need to be applied on the new clone",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"mdc master configurations",
                        "in":"body",
                        "description":"These input parameters direct the MDC topology, the Data Center that needs to be added and configured as the new MDC clone, and the various credentials/certificates needed for the coupling the data centers",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/configureMasterWithNewClone"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"The required MDC configurations were setup on the master DC, and the required clong artifatcs were generated successfully",
                        "schema":{
                            "$ref":"#/definitions/responseConfigureMaster"
                        }
                    },
                    "400":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "401":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "504":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "Setting up Multi data center"
                ],
                "summary":"4-Extending a MDC cluster with a new clone DC",
                "x-internal-id":"oam-services-rest-mdc-master-clone-post",
                "x-filename-id":"oam-services-rest-mdc-master-clone-post"
            }
        },
        "/oam/services/rest/mdc/configuration":{
            "get":{
                "description":"Returns the OAM MDC session control parameters and MDC agent details in the given Data Center, which helps in diagnostics. Can be executedon the master or the clone DC",
                "produces":[
                    "application/json"
                ],
                "responses":{
                    "200":{
                        "description":"Diagnostics Response contains the MDC config and diagnostics in json format"
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "MDC Diagnostics and Troubleshooting"
                ],
                "summary":"Diagnostic API",
                "x-internal-id":"oam-services-rest-mdc-configuration-get",
                "x-filename-id":"oam-services-rest-mdc-configuration-get"
            }
        },
        "/oam/services/rest/mdc/dc/configuration":{
            "get":{
                "description":"Returns the DC specific configurations like the Cluster Name, Primary and Secondary Server List exposed on this DC for agent communication, OAM server security mode and so on",
                "produces":[
                    "application/json"
                ],
                "responses":{
                    "200":{
                        "description":"Response contains the DC specific configuration details in json format"
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "MDC Diagnostics and Troubleshooting"
                ],
                "summary":"Get DC specific details",
                "x-internal-id":"oam-services-rest-mdc-dc-configuration-get",
                "x-filename-id":"oam-services-rest-mdc-dc-configuration-get"
            }
        },
        "/oam/services/rest/mdc/dc/mode":{
            "post":{
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"mdc session control parameters",
                        "in":"body",
                        "description":"MDC session control paramters in JSON format",
                        "schema":{
                            "$ref":"#/definitions/mdcSessionControlParameters"
                        }
                    }
                ],
                "responses":{
                    "400":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "401":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "504":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "MDC Diagnostics and Troubleshooting"
                ],
                "summary":"Modify MDC Session control parameters",
                "x-internal-id":"oam-services-rest-mdc-dc-mode-post",
                "x-filename-id":"oam-services-rest-mdc-dc-mode-post"
            }
        },
        "/oam/services/rest/mdc/dc/compatibility":{
            "post":{
                "description":"During the interim phase of a MDC upgrade, where some DC would be in R2PS3 and some in 12cPS3, the 12cPS3 DCs would be in a backward compatible state so as to ensure MDC SSO between the DCs in R2PS3 and 12cPS3. Once all the DCs are upgraded to 12cPS3 the backward compatibility of the 12cPS3 DCs need to be turned off using this command",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"backward compatibility flag",
                        "in":"body",
                        "schema":{
                            "$ref":"#/definitions/mdcbackwardCompatibility"
                        }
                    }
                ],
                "responses":{
                    "400":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "401":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "500":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    },
                    "504":{
                        "description":"Error",
                        "schema":{
                            "$ref":"#/definitions/errorresponse"
                        }
                    }
                },
                "tags":[
                    "MDC Diagnostics and Troubleshooting"
                ],
                "summary":"Upgrade Backward Compatibility",
                "x-internal-id":"oam-services-rest-mdc-dc-compatibility-post",
                "x-filename-id":"oam-services-rest-mdc-dc-compatibility-post"
            }
        },
        "/oam/services/rest/_replication/setup":{
            "post":{
                "tags":[
                    "Admin",
                    "PolicyManager"
                ],
                "description":"To be executed only on the Master Data Center / Master Policy Manager (for OAuth Consent Management only). It validates the MDC Partners based on the input and creates the replication agreement in Master and Clone Data Center.",
                "produces":[
                    "application/json"
                ],
                "consumes":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"replication agreement configurations",
                        "in":"body",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/replAgreementParameters"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Response body shall indicate the status",
                        "schema":{
                            "$ref":"#/definitions/replAgreementResponse"
                        }
                    },
                    "500":{
                        "description":"Error"
                    }
                },
                "summary":"Setup replication agreement between DCs",
                "x-internal-id":"oam-services-rest-_replication-setup-post",
                "x-filename-id":"oam-services-rest-_replication-setup-post"
            }
        },
        "/oam/services/rest/_replication/agreements":{
            "get":{
                "tags":[
                    "Admin"
                ],
                "description":"Returns the replication agreements in the Data Center and its Status.",
                "produces":[
                    "application/json"
                ],
                "responses":{
                    "200":{
                        "description":"Response body shall indicate the status",
                        "schema":{
                            "$ref":"#/definitions/queryAgreementsResponse"
                        }
                    },
                    "500":{
                        "description":"Error"
                    }
                },
                "summary":"List the existing replication agreements",
                "x-internal-id":"oam-services-rest-_replication-agreements-get",
                "x-filename-id":"oam-services-rest-_replication-agreements-get"
            }
        },
        "/oam/services/rest/_replication/{replId}":{
            "put":{
                "tags":[
                    "Admin"
                ],
                "description":"To be executed only on the Master Data Center. Updates the Specified parameters in the Replication Agreement based on the replicaType.",
                "produces":[
                    "application/json"
                ],
                "consumes":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"replId",
                        "in":"path",
                        "type":"string",
                        "required":true,
                        "description":"Replication Identifier for which Agreement should be updated."
                    },
                    {
                        "name":"Replication agreement configurations",
                        "in":"body",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/updateReplicationAgreementParams"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Response body shall indicate the status",
                        "schema":{
                            "$ref":"#/definitions/replAgreementResponse"
                        }
                    },
                    "500":{
                        "description":"Error"
                    }
                },
                "summary":"Update Replication Agreement",
                "x-internal-id":"oam-services-rest-_replication-{replId}-put",
                "x-filename-id":"oam-services-rest-_replication-replid-put"
            },
            "delete":{
                "tags":[
                    "Admin"
                ],
                "description":"To be executed only on the Master Data Center. Deletes the Replication Agreement for the identifier specified in Master and Clone DC. This should be executed only after disabling the Replication Agreement (Updating the Replication Agreement).",
                "produces":[
                    "application/json"
                ],
                "consumes":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"replId",
                        "in":"path",
                        "type":"string",
                        "required":true,
                        "description":"Replication Identifier for which Agreement should be deleted."
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Response body shall indicate the status",
                        "schema":{
                            "$ref":"#/definitions/replAgreementResponse"
                        }
                    },
                    "500":{
                        "description":"Error"
                    }
                },
                "summary":"Delete Replication Agreement",
                "x-internal-id":"oam-services-rest-_replication-{replId}-delete",
                "x-filename-id":"oam-services-rest-_replication-replid-delete"
            },
            "get":{
                "tags":[
                    "Admin"
                ],
                "description":"Returns the status of the replication agreement in the Data Center for the identifier specified like current state, identifier, poll interval, sequence number and so on",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"replId",
                        "in":"path",
                        "type":"string",
                        "required":true,
                        "description":"Replication Identifier for which Agreement should be deleted."
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Response body shall indicate the status",
                        "schema":{
                            "$ref":"#/definitions/replAgreementResponse"
                        }
                    },
                    "500":{
                        "description":"Error"
                    }
                },
                "summary":"Display the status of replication agreement",
                "x-internal-id":"oam-services-rest-_replication-{replId}-get",
                "x-filename-id":"oam-services-rest-_replication-replid-get"
            }
        }
    },
    "definitions":{
        "configureMasterParameters":{
            "type":"object",
            "required":[
                "mdcTopologyType",
                "masterMDCAgentID",
                "cloneMDCAgentID",
                "accessClientPassword",
                "artifactPassword",
                "cloneServerURL",
                "cloneServerPolicyManagerURL",
                "masterServerPolicyManagerURL"
            ],
            "properties":{
                "mdcTopologyType":{
                    "type":"string",
                    "description":"ACTIVE_ACTIVE|DISASTER_RECOVERY"
                },
                "masterMDCAgentID":{
                    "type":"string",
                    "description":"Mdc Nap Agent Name for Master"
                },
                "cloneMDCAgentID":{
                    "type":"string",
                    "description":"Mdc Nap Agent Name for Clone"
                },
                "accessClientPassword":{
                    "type":"string",
                    "description":"Password to be used for the MDC NAP agents in Master and Clone"
                },
                "artifactPassword":{
                    "type":"string",
                    "description":"Password used for protecting the cloning artifacts"
                },
                "cloneServerURL":{
                    "type":"string",
                    "description":"URL of the clone admin server or the URL of the reverse proxy front-ending the clone admin server"
                },
                "cloneServerPolicyManagerURL":{
                    "type":"string",
                    "description":"URL of the clone policy manager endpoint or the URL of the reverse proxy front-ending the clone policy manager."
                },
                "agentKeyPassword":{
                    "type":"string",
                    "description":"Agent Key Password used to register partners in CERT mode. when the Managed Servers are in CERT Mode"
                },
                "certModeKeystorePassword":{
                    "type":"string",
                    "description":"KeyStore Password used to protect clientTrustStore.jks and clientKeyStore.jks. when the Managed Servers are in CERT Mode"
                },
                "masterServerURL":{
                    "type":"string",
                    "description":"URL of the master admin server. OPTIONAL - to be specified only when master admin server is front-ended by reverse proxy"
                },
                "masterServerPolicyManagerURL":{
                    "type":"string",
                    "description":"URL of the master policy manager endpoint or the URL of the reserse proxy front-ending the master policy manager."
                },
                "cloneAdminUserNamePassword":{
                    "type":"string",
                    "description":"UserName:Password of Clone DC Administrator. OPTIONAL - To be specified when the Master and Clone Admin Users/Password are different"
                },
                "trustStorePath":{
                    "type":"string",
                    "description":"In case of SIMPLE mode, Path to oamclient-truststore.jks file. OPTIONAL - To be speciifed when the oamclient-truststore.jks file is present in any folder other than %DOMAIN_HOME%/output/webgate-ssl-SHA-256. In case of CERT mode, Path to clientTrustStore.jks file. OPTIONAL - To be speciifed when the clientTrustStore.jks file is present in any folder other than %DOMAIN_HOME%/config/fmwconfig/oam-mdc-cert-artifacts"
                },
                "keyStorePath":{
                    "type":"string",
                    "description":"In case of SIMPLE mode, Path to oamclient-keystore.jks file. OPTIONAL -  To be speciifed when the oamclient-keystore.jks file is present in any folder other than %DOMAIN_HOME%/output/webgate-ssl-SHA-256. In case of CERT mode, Path to clientKeyStore.jks file. OPTIONAL - To be speciifed when the clientKeyStore.jks file is present in any folder other than %DOMAIN_HOME%/config/fmwconfig/oam-mdc-cert-artifacts"
                },
                "artifactsZipLocation":{
                    "type":"string",
                    "description":"Location where cloning artifacts has to be stored. OPTIONAL - To be specified if cloning artifacts has to be stored in any location other than /tmp"
                },
                "forceOverWrite":{
                    "type":"string",
                    "description":"true|false. OPTIONAL - To OverWrite the Existing MDC Configuration or to recover from Inconsistent State"
                }
            }
        },
        "configureMasterWithNewClone":{
            "type":"object",
            "required":[
                "cloneMDCAgentID",
                "accessClientPassword",
                "artifactPassword",
                "cloneServerURL",
                "cloneServerPolicyManagerURL",
                "masterServerPolicyManagerURL",
                "agentKeyPassword",
                "certModeKeystorePassword"
            ],
            "properties":{
                "cloneMDCAgentID":{
                    "type":"string",
                    "description":"Mdc Nap Agent Name for New Clone to be added to the setup"
                },
                "accessClientPassword":{
                    "type":"string",
                    "description":"Password to be used for the MDC NAP agent of new Clone"
                },
                "artifactPassword":{
                    "type":"string",
                    "description":"Password used for protecting the cloning artifacts"
                },
                "cloneServerURL":{
                    "type":"string",
                    "description":"URL of the new clone admin server or the URL of the reverse proxy front-ending the new clone admin server"
                },
                "cloneServerPolicyManagerURL":{
                    "type":"string",
                    "description":"URL of the clone policy manager endpoint or the URL of the reverse proxy front-ending the clone policy manager."
                },
                "masterServerPolicyManagerURL":{
                    "type":"string",
                    "description":"URL of the master policy manager endpoint or the URL of the reverse proxy front-ending the master policy manager."
                },
                "agentKeyPassword":{
                    "type":"string",
                    "description":"Agent Key Password used to register new clone partner in CERT mode. To be used when the Managed Servers are in CERT Mode"
                },
                "certModeKeystorePassword":{
                    "type":"string",
                    "description":"KeyStore Password used to protect clientTrustStore.jks and clientKeyStore.jks. To be used when the Managed Servers are in CERT Mode"
                },
                "cloneAdminUserNamePassword":{
                    "type":"string",
                    "description":"UserName:Password of Clone DC Administrator. OPTIONAL - To be specified when the Master and Clone Admin Users/Password are different"
                },
                "trustStorePath":{
                    "type":"string",
                    "description":"In case of SIMPLE mode, Path to oamclient-truststore.jks file. OPTIONAL - To be speciifed when the oamclient-truststore.jks file is present in any folder other than %DOMAIN_HOME%/output/webgate-ssl-SHA-256. In case of CERT mode, Path to clientTrustStore.jks file. OPTIONAL - To be speciifed when the clientTrustStore.jks file is present in any folder other than %DOMAIN_HOME%/config/fmwconfig/oam-mdc-cert-artifacts"
                },
                "keyStorePath":{
                    "type":"string",
                    "description":"In case of SIMPLE mode, Path to oamclient-keystore.jks file. OPTIONAL -  To be speciifed when the oamclient-keystore.jks file is present in any folder other than %DOMAIN_HOME%/output/webgate-ssl-SHA-256. In case of CERT mode, Path to clientKeyStore.jks file. OPTIONAL - To be speciifed when the clientKeyStore.jks file is present in any folder other than %DOMAIN_HOME%/config/fmwconfig/oam-mdc-cert-artifacts"
                },
                "artifactsZipLocation":{
                    "type":"string",
                    "description":"Location where cloning artifacts has to be stored. OPTIONAL - To be specified if cloning artifacts has to be stored in any location other than /tmp"
                }
            }
        },
        "responseConfigureMaster":{
            "type":"object",
            "properties":{
                "responseCode":{
                    "type":"string"
                },
                "responseText":{
                    "type":"string"
                },
                "responseDetails":{
                    "type":"object",
                    "properties":{
                        "ArtifactsDownloadLocation":{
                            "type":"string"
                        },
                        "ServerMode":{
                            "type":"string"
                        }
                    }
                }
            }
        },
        "configureCloneParameters":{
            "type":"object",
            "required":[
                "masterServerURL",
                "masterServerPolicyManagerURL",
                "artifactPassword"
            ],
            "properties":{
                "masterServerURL":{
                    "type":"string",
                    "description":"URL of the master admin server or the URL of the reverse proxy front-ending the master admin server"
                },
                "masterServerPolicyManagerURL":{
                    "type":"string",
                    "description":"URL of the master policy manager endpoint or the URL of the reverse proxy front-ending the master policy manager."
                },
                "artifactPassword":{
                    "type":"string",
                    "description":"Password used for protecting the cloning artifacts. This should be the same password that was passed during setup of master"
                },
                "masterAdminUserNamePassword":{
                    "type":"string",
                    "description":"UserName:Password of Master DC Administrator. OPTIONAL - To be specified when the Master and Clone Admin Users/Password are different"
                },
                "artifactsZipLocation":{
                    "type":"string",
                    "description":"Location where backup artifacts has to be stored. OPTIONAL - To be specified if backup artifacts has to be stored in any location other than /tmp"
                },
                "masterArtifactsZipLocation":{
                    "type":"string",
                    "description":"Location where cloning artifacts are present in Master DC. OPTIONAL - To be specified when artifactsZipLocation was used in input while configuring Master Data Center"
                },
                "forceOverWrite":{
                    "type":"string",
                    "description":"true|false. OPTIONAL - To OverWrite the Existing MDC Configuration or to recover from Inconsistent State"
                }
            }
        },
        "responseConfigureClone":{
            "type":"object",
            "properties":{
                "responseCode":{
                    "type":"string"
                },
                "responseText":{
                    "type":"string"
                },
                "responseDetails":{
                    "type":"object",
                    "properties":{
                        "CloneArtifactsBackupLocation":{
                            "type":"string"
                        }
                    }
                }
            }
        },
        "responseReConfigureClone":{
            "type":"object",
            "properties":{
                "status":{
                    "type":"string"
                }
            }
        },
        "errorresponse":{
            "type":"object",
            "properties":{
                "errorCode":{
                    "type":"string"
                },
                "errorDesc":{
                    "type":"string"
                }
            }
        },
        "mdcSessionControlParameters":{
            "type":"object",
            "properties":{
                "config":{
                    "type":"object",
                    "properties":{
                        "entry":{
                            "type":"array",
                            "items":{
                                "type":"object",
                                "properties":{
                                    "key":{
                                        "type":"string"
                                    },
                                    "value":{
                                        "type":"string"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "description":"{\"config\":{\"entry\":[{\"key\":\"SessionMustBeAnchoredToDataCenterServicingUser\",\"value\":true (Invalidate) or false (No Invalidation)},{\"key\":\"SessionDataRetrievalOnDemand\",\"value\":true (Cross DC Retrieval) or false (No Cross DC Retrieval)},{\"key\":\"SessionContinuationOnSyncFailure\",\"value\":true (Invalidation/Retrieval should succeed) or false (Ignore failure)},{\"key\":\"Reauthenticate\",\"value\":true (Force Reauthentication) or false (No Reauthentication)},{\"key\":\"SessionDataRetrievalOnDemandMax_retry_attempts\",\"value\":Value equal to the binary that represents the number of times to retry data retrieval if it fails. DEFAULT: 2},{\"key\":\"SessionDataRetrievalOnDemandMax_conn_wait_time\",\"value\":value equal to the binary that represents the total amount of time in seconds to wait for a connection. DEFAULT: 1000}, {\"key\":\"MDCGitoCookieDomain\",\"value\":Domain in which OAM_GITO cookie should be set. OPTIONAL: To be set in MDC Deployments where a common domain hierarchy can be derived}]}}"
        },
        "mdcbackwardCompatibility":{
            "type":"object",
            "properties":{
                "isBackwardCompatible":{
                    "type":"string",
                    "description":"true|false"
                }
            }
        },
        "replAgreementParameters":{
            "type":"object",
            "required":[
                "name",
                "source",
                "target",
                "documentType"
            ],
            "properties":{
                "name":{
                    "type":"string",
                    "description":"Name for the replication agreement"
                },
                "source":{
                    "type":"string",
                    "description":"Cluster Name of the Master Data Center. This can be obtained using MDC diagnostic API (Get DC specific details)"
                },
                "target":{
                    "type":"string",
                    "description":"Cluster Name of  the Clone Data Center. This can be obtained using MDC diagnostic API (Get DC specific details)"
                },
                "documentType":{
                    "type":"string",
                    "description":"Document type should be <br/> * \"ENTITY\" - On OAM Admin REST Endpoint <br/> * \"RUNTIME_ENTITY\" - On OAM PolicyManager REST Endpoint"
                },
                "config":{
                    "type":"object",
                    "properties":{
                        "entry":{
                            "type":"object",
                            "properties":{
                                "key":{
                                    "type":"string",
                                    "description":"authorization"
                                },
                                "value":{
                                    "type":"string",
                                    "description":"Authorization Header to be used for contacting clone Data Center"
                                }
                            }
                        }
                    }
                }
            }
        },
        "updateReplicationAgreementParams":{
            "type":"object",
            "required":[
                "replicaType"
            ],
            "properties":{
                "enabled":{
                    "type":"string",
                    "description":"true|false. To be specified when the replication agreement has to be enabled or disabled"
                },
                "replicaType":{
                    "type":"string",
                    "description":"SUPPLIER|CONSUMER. Indicates if the Replication Agreement has to be updated in Master or Clone DC"
                },
                "pollInterval":{
                    "type":"string",
                    "description":"To be specified to alter the duration after which Clone DC polls and applies the changes from Master DC"
                },
                "config":{
                    "type":"object",
                    "properties":{
                        "entry":{
                            "type":"object",
                            "properties":{
                                "key":{
                                    "type":"string",
                                    "description":"authorization"
                                },
                                "value":{
                                    "type":"string",
                                    "description":"Authorization Header to be used for contacting Master or Clone DC depending on the replicaType"
                                }
                            }
                        }
                    }
                }
            }
        },
        "replAgreementResponse":{
            "type":"object",
            "properties":{
                "enabled":{
                    "type":"string",
                    "description":"true|false"
                },
                "identifier":{
                    "type":"string",
                    "description":"Replication Agreement Identifier"
                },
                "lastSequenceNumber":{
                    "type":"string",
                    "description":"Sequence Number last applied in the DC"
                },
                "ok":{
                    "type":"string",
                    "description":"true|false"
                },
                "pollInterval":{
                    "type":"string",
                    "description":"Duration after which the Clone DC should poll and apply the changes from Master DC"
                },
                "startingSequenceNumber":{
                    "type":"string",
                    "description":"Sequence Number after which Replication will occur"
                },
                "state":{
                    "type":"string",
                    "description":"Current State of the Replication Agreement (ACTIVE|BOOTSTRAPPING|READY)"
                }
            }
        },
        "queryAgreementsResponse":{
            "type":"object",
            "properties":{
                "featureEnabled":{
                    "type":"string",
                    "description":"true|false"
                },
                "identifiers":{
                    "type":"string",
                    "description":"List of Replication Agreement Identifiers"
                },
                "ok":{
                    "type":"string",
                    "description":"true|false"
                }
            }
        }
    },
    "tags":[
        {
            "name":"Admin",
            "description":"OAM MDC REST API's on OAM Admin Server"
        },
        {
            "name":"MDC Diagnostics and Troubleshooting",
            "description":"MDC Diagnostics and Troubleshooting"
        },
        {
            "name":"PolicyManager",
            "description":"OAM MDC REST API's on OAM PolicyManager"
        },
        {
            "name":"Setting up Multi data center",
            "description":"Setting up Multi data center"
        }
    ]
}