Info |
---|
This API is available starting with version @5.32.0.1 |
Anchor | ||||
---|---|---|---|---|
|
Project packages can be accessed and modified through this API using four services: GET, POST, PUT, and PATCH. These four services allow for the retrieval, creation, complete update, and partial update of packages.
...
Table of Contents | ||
---|---|---|
|
Each function returns a JSON package object. The package object has these attributes:
...
GET
This method will find a package with the given name in the given project and return the JSON representation of the package.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package/{packageName} |
Request
Parameter | Type | Required | Description |
---|---|---|---|
projectId | URL | Yes | This is a URL parameter for the Id of the project which the package is in |
packageName | URL | Yes | Name of the package to retrieve. This is case sensitive |
Response
Attribute | Type | Description |
---|
name | String |
Name of the |
package |
description | String |
Description of the |
package |
files |
GET
This method will find a package with the given name in the given project and return the JSON representation of the package.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package/{packageName} |
Request
...
Parameter
...
Type
...
Required
...
Description
...
projectId
...
Response
...
PackageFile
...
Example
...
List<PackageFile> | All files in the package. More info on the PackageFile object is included below. | |
packageStatus | String | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. |
PackageFile
Attribute | Type | Description |
---|---|---|
filePath | String | Fully qualified path of the file |
objectType | String | Type of the object |
sequenceNumber | Integer | Order placement of this file in the package |
Response Codes
HTTP Code | Description |
---|---|
200 | Project Package was found and returned |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
404 | Project or Package not found |
500 | Unexpected internal server error |
Example
If we had a package with the name ALM-150 in a project with id 14935, when we run a GET request at the URL
...
Code Block | ||||
---|---|---|---|---|
| ||||
{
"name": "ALM-150",
"description": null,
"files": [
{
"filePath": "/sql/XXHR_BIPUB_REP_PKG.pls",
"objectType": "DB Objects (SQLs)",
"sequenceNumber": 1
},
{
"filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb",
"objectType": "DB Objects (SQLs)",
"sequenceNumber": 2
}
],
"packageStatus" "ACTIVE"
} |
...
POST
This POST service will create a new package with the same attributes as the given JSON object.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package |
Request
Attribute | Type | Required | Description |
---|---|---|---|
name | String | Yes | Name of the package |
description | String | No | Description of the package |
sortAll | Boolean | No | Whether or not the files in the package should be sorted by type. If this is true, sequence numbers for files will be ignored. This will default to false |
addFileFilter | String | No | A filter to add all files containing this string |
files | List<PackageFile> | No | All files in the package. More info on the PackageFile object is included below. |
...
packageStatus |
String |
No | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. Defaults to Active. |
PackageFile
Attribute | Type | Required | Description |
---|---|---|---|
filePath | String | Yes | Fully qualified path of the file as it appears on the Project Files and Packages screens |
sequenceNumber | Integer | No | Order placement of this file in the package. Sequence numbers must be provided for all or none of the files in the package JSON. If sequence numbers aren't provided, the order of the files will be based on either object type, if the sortAll flag is true, or based on the order of the files in the request. |
Response
Attribute | Type | Description |
---|---|---|
name | String | Name of the package |
description | String | Description of the package |
files | List<PackageFile> | All files in the package. More info on the PackageFile object is included below. |
PackageFile
packageStatus | String | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. Defaults to Active. |
PackageFile
Attribute | Type | Description |
---|---|---|
filePath | String | Fully qualified path of the file |
objectType | String | Type of the object |
sequenceNumber | Integer | Order placement of this file in the package |
Example
If the POST request receives the following JSON package object,
...
Response Codes
HTTP Code | Description |
---|---|
200 | Project Package was created successfully |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
404 | Project or Package not found |
500 | Unexpected internal server error |
Example
If the POST request receives the following JSON package object,
Code Block | ||||
---|---|---|---|---|
| ||||
{ "description": "Creating a package using the Package REST API", "name": "REST_Package", "sortAll": true, "addFileFilter": "XXHR_BIPUB_REP_PKG", "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java" }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml" } ] } |
...
Code Block | ||||
---|---|---|---|---|
| ||||
{ "description": "Creating a package using the Package REST API", "name": "REST_Package", "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 1 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 2 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pls", "objectType": "DB Objects (SQLs)", "sequenceNumber": 3 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb", "objectType": "DB Objects (SQLs)", "sequenceNumber": 4 } ] }, "packageStatus": "ACTIVE" } |
...
PUT
This PUT service will replace all attributes of a given package with the attributes of the provided JSON request.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package/{packageName} |
Request
Attribute | Type | Required | Description |
---|---|---|---|
packageName | String (URL) | Yes | Name of the package, used to identify the package being updated. The name cannot be modified after the package is created |
packageStatus | String | Yes | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. |
description | String | No | Description of the package |
sortAll | Boolean | No | Whether or not the files in the package should be sorted by type. If this is true, sequence numbers for files will be ignored. This will default to false |
addFileFilter | String | No | A filter to add all files containing this string |
files | List<PackageFile> | No | All files in the package. Any files in the package before this request will be deleted and replaced by the files in the request. More info on the PackageFile object is included below. |
PackageFile
Attribute | Type | Required | Description |
---|---|---|---|
filePath | String | Yes | Fully qualified path of |
the file as it appears on the Project Files and Packages screens | |||
sequenceNumber | Integer | No | Order placement of this file in the package. Sequence numbers must be provided for all or none of the files in the package JSON. If sequence numbers aren't provided, the order of the files will be based on either object type, if the sortAll flag is true, or based on the order of the files in the request. |
Response
Attribute | Type | Description |
---|---|---|
name | String | Name of the package |
description | String | Description of the package |
files | List<PackageFile> | All files in the package. More info on the PackageFile object is included below. |
...
packageStatus |
String | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. |
PackageFile
Attribute | Type | Description |
---|---|---|
filePath | String | Fully qualified path of the file |
objectType | String | Type of the object |
sequenceNumber | Integer | Order placement of this file in the package |
Example
If we had an package in a project with id 14935 with the following attributes:
...
theme | Eclipse |
---|---|
title | Package PUT JSON |
...
Response Codes
HTTP Code | Description |
---|---|
200 | Project Package was found and updated |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
404 | Project or Package not found |
500 | Unexpected internal server error |
Example
If we had an package in a project with id 14935 with the following attributes:
Code Block | ||||
---|---|---|---|---|
| ||||
{ "description": "Creating a package using the Package REST API", "name": "REST_Package", "files": [ { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pls", "objectType": "DB Objects (SQLs)", "sequenceNumber": 1 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb", "objectType": "DB Objects (SQLs)", "sequenceNumber": 2 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 3 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 4 } ], "packageStatus": "ACTIVE" } |
When we run a PUT request at the URL http://host:port/flexdeploy/rest/v1/project/14935/package/REST_Package, and the PUT request receives the following JSON package object,
Code Block | ||||
---|---|---|---|---|
| ||||
{ "description": "This is the updated package", "sortAll": false, "addFileFilter": null, "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java" }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb" }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml" } ], "packageStatus": "ACTIVE" } |
The PUT request would then update the package and return the following JSON package object:
Code Block | ||||
---|---|---|---|---|
| ||||
{ "name": "REST_Package", "description": "This is the updated package", "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 1 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb", "objectType": "DB Objects (SQLs)", "sequenceNumber": 2 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 3 } ], "packageStatus": "ACTIVE" } |
...
PATCH
This PATCH service will update an existing package with the information passed through a JSON object. If an attribute of the JSON is null, it will not be updated in the package. Any new files included in the request will be appended to the list of files already in the package.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package/{packageName} |
Request
Attribute | Type | Required | Description |
---|---|---|---|
packageName | String (URL) | Yes | Name of the package, used to identify the package being updated. The name cannot be modified after the package is created |
description | String | No | Description of the package |
sortAll | Boolean | No | Whether or not the files in the package should be sorted by type. If this is true, sequence numbers for files will be ignored. This will default to false |
addFileFilter | String | No | A filter to add all files containing this string |
files | List<PackageFile> | No | All files in the package. Any new files will be appended to files already in the package. More info on the PackageFile object is included below |
packageStatus | String | No | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. |
PackageFile
Attribute | Type | Required | Description |
---|---|---|---|
filePath | String | Yes | Fully qualified path of the |
file as it appears on the Project Files and Packages screens | |||
sequenceNumber | Integer | No | Order placement of this file in the package. Sequence numbers must be provided for all or none of the files in the package JSON. If sequence numbers aren't provided, the order of the files will be based on either object type, if the sortAll flag is true, or based on the order of the files in the request |
Response
Attribute | Type | Description |
---|---|---|
name | String | Name of the package |
description | String | Description of the package |
files | List<PackageFile> | All files in the package. More info on the PackageFile object is included below. |
packageStatus | String | Package Status. Possible values (ACTIVE, COMPLETED, INACTIVE). Completed packages can not be modified and only active packages can be added to a release. |
PackageFile
Attribute | Type | Description |
---|---|---|
filePath | String | Fully qualified path of the file |
objectType | String | Type of the object |
sequenceNumber | Integer | Order placement of this file in the package |
Example
If we had an package in a project with id 14935 with the following attributes:
...
theme | Eclipse |
---|---|
title | Package POST JSON |
...
Response Codes
HTTP Code | Description |
---|---|
200 | Project Package was found and updated |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
404 | Project or Package not found |
500 | Unexpected internal server error |
Example
If we had an package in a project with id 14935 with the following attributes:
Code Block | ||||
---|---|---|---|---|
| ||||
{ "name": "REST_Package", "description": "This is the updated package", "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 1 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb", "objectType": "DB Objects (SQLs)", "sequenceNumber": 2 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 3 } ], "packageStatus": "ACTIVE" } |
When we run a PATCH request at the URL httpURL http://host:port/flexdeploy/rest/v1/project/14935/package/REST_Package, and the PATCH request receives the following JSON package object,
...
Code Block | ||||
---|---|---|---|---|
| ||||
{ "name": "REST_Package", "description": "This is the updated package", "files": [ { "filePath": "/java/xxt/oracle/apps/ak/xxperson/webui/managePersonCO.java", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 1 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pls", "sequenceNumber": 2 }, { "filePath": "/sql/XXHR_BIPUB_REP_PKG.pkb", "objectType": "DB Objects (SQLs)", "sequenceNumber": 3 }, { "filePath": "/java/xxt/oracle/apps/ak/xxperson/server/xxPersonAM.xml", "objectType": "Oracle Application Framework (OAF) JAVA", "sequenceNumber": 4 } ], "packageStatus": "ACTIVE" } |
...
DELETE
This method will delete a package with the given name in the given project. There is no response message. If package is not present (was already deleted), no error code will be returned.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/project/{projectId}/package/{packageName} |
Request
Parameter | Type | Required | Description |
---|---|---|---|
projectId | URL | Yes | This is a URL parameter for the Project Id which is searched to find package. |
packageName | URL | Yes | This is a URL parameter for the Package which will be deleted from project. |
Response Codes
HTTP Code | Description |
---|---|
200 | Package was deleted or not present. |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
404 | Project not found |
500 | Unexpected internal server error |
...