Copy to Object Store (v1)
Use the Copy to Object Store (v1) REST API to copy a file or a backup snapshot from the current cloud environment (the source) to the Oracle Object Storage Cloud (the target). You can copy any file or snapshot available in the EPM Cloud. For example, if you export data to a file, the exported file is stored in the Outbox. You can then use this API to copy the file directly to Oracle Object Storage, assuming you have an account.
This topic describes the v1 version of this REST API. You can also use the simplified v2 version of the REST API. The v2 version contains all parameters in the payload and does not require URL encoding while calling the REST APIs. This makes the v2 API easier to use. The v2 version is backwards compatible.
Note:
The Object Storage requires an Other Web Services Provider type. Ensure that you have access to the Web service you are connecting. You must also have URLs for the Web service and an login details if required. For information see, Connecting to External Web Services in Administering Planning.
This REST API is version v1.
Required Roles
Service Administrator
REST Resource
POST /interop/rest/v1/services/copytoobjectstore
Note:
Before using the REST resources, you must understand how to access the REST resources and other important concepts. See Implementation Best Practices for EPM Cloud REST APIs. Using this REST API requires prerequisites. See Prerequisites.
Table 9-78 Tasks for Copy to Object Store
Task | Request | REST Resource |
---|---|---|
Trigger copytoobjectstore |
POST | /interop/rest/v1/services/copytoobjectstore |
Retrieve copytoobjectstore status
|
GET | /interop/rest/v1/services/jobs/777 |
Request
Supported Media Types: application/x-www-form-urlencoded
The following table summarizes the request parameters.
Table 9-79 Parameters
Name | Description | Type | Required | Default |
---|---|---|---|---|
url |
Oracle Object Storage Cloud bucket with an optional object name
appended. The URL format without object
name:
The URL format with object name:
Components of this URL:
For more information, see these topics in Oracle Cloud Infrastructure Documentation: |
Form | Yes | None |
username |
The ID of a user who has the required access rights to write to Oracle Object Storage Cloud. For users created in a federated identity provider, specify the
fully-qualified name of the user (for example,
|
Form | Yes | None |
password |
The Swift password or auth token associated with the user. This password is not the same as the password that you use to sign into the Object Storage Console. Auth token is an Oracle-generated token that you use to authenticate with third-party APIs, for example to authenticate with a Swift client. For instructions to create this token, see To create an auth token in Oracle Cloud Infrastructure Documentation . |
Form | Yes | None |
filepath |
Name of the file (with path) to be copied to the Store. If you are copying a snapshot, do not specify the ZIP extension. Examples: Artifact Snapshot, inbox/File.txt |
Form | Yes | None |
Sample Request Payload
url: https://swiftobjectstorage.<region_identifier>.oraclecloud.com/v1/epmclouddev/epm_artifact_snapshot
username: <username>
password: <password>
filepath: Artifact Snapshot
Response
Supported Media Types: application/json
Table 9-80 Parameters
Name | Description |
---|---|
details |
In the case of errors, details are published with the error string |
status |
See Migration Status Codes |
links |
Detailed information about the link |
href |
Links to API call or status API |
action |
The HTTP call type |
rel |
Possible values: self or Job Status . If the value is set to Job Status , you can use the href to get the status
|
data |
Parameters as key value pairs passed in the request |
Example of Response Body
The following shows an example of the response body in JSON format.
{
"status": -1,
"items": null,
"links": [{
"rel": "self",
"href": "https://<BASE URL>/interop/rest/v1/services/copytoobjectstore",
"data": null,
"action": "POST"
}, {
"rel": "Job Status",
"href": "https://<BASE URL>/interop/rest/v1/services/jobs/1502357937045",
"data": null,
"action": "GET"
}],
"details": null
}
The password parameter value is clear text.
copyToObjectStore Sample code:
public void copyToObjectStore() throws Exception {
String filepath = "FILE NAME/FILE PATH";
String username = "USER NAME";
String url = "https://swiftobjectstorage.<region_identifier>.oraclecloud.com/v1/<namespace>/<bucket_name>";
String password = "PASSWORD";
String urlString = String.format("%s/interop/rest/v1/services/copytoobjectstore", serverUrl);
String params = "url=" + url + "&userName=" + username + "&password=" + password + "&filepath=" +filepath;
String response = executeRequest(urlString, "POST", params, "application/x-www-form-urlencoded");
getJobStatus(fetchPingUrlFromResponse(response, "Job Status"), "GET");
}