VDBGroups

List all VDBGroups.

SecurityApiKeyAuth
Request
query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100

Maximum number of objects to return per query. The value must be between 1 and 1000. Default is 100.

Example: limit=50
cursor
string [ 1 .. 4096 ] characters

Cursor to fetch the next or previous page of results. The value of this property must be extracted from the 'prev_cursor' or 'next_cursor' property of a PaginatedResponseMetadata which is contained in the response of list and search API endpoints.

sort
string or null

The field to sort results by. A property name with a prepended '-' signifies descending order.

Enum: "id" "-id" "name" "-name" "locked_by" "-locked_by" "locked_by_name" "-locked_by_name" "database_type" "-database_type" "status" "-status" "last_successful_refresh_to_bookmark_id" "-last_successful_refresh_to_bookmark_id" "last_successful_refresh_time" "-last_successful_refresh_time"
Example: sort=id
Responses
200

OK

get/vdb-groups
Response samples
application/json
{
  • "items": [
    ],
  • "response_metadata": {
    }
}

Create a new VDBGroup.

SecurityApiKeyAuth
Request
Request Body schema: application/json
required

The parameters to create a VDBGroup.

name
required
string [ 1 .. 256 ] characters
vdb_ids
Array of strings non-empty
Array of objects (CreateVDBGroupOrder) [ 1 .. 256 ] items

Dictates order of operations on VDBs. Operations can be performed in parallel
for all VDBs or sequentially. Below are possible valid and invalid orderings given an example
VDB group with 3 vdbs (A, B, and C).
Valid:
{"vdb_id":"vdb-1", "order":"1"} {"vdb_id":"vdb-2", order:"1"} {vdb_id:"vdb-3", order:"1"} (parallel)
{vdb_id:"vdb-1", order:"1"} {vdb_id:"vdb-2", order:"2"} {vdb_id:"vdb-3", order:"3"} (sequential)
Invalid:
{vdb_id:"vdb-1", order:"A"} {vdb_id:"vdb-2", order:"B"} {vdb_id:"vdb-3", order:"C"} (sequential)

In the sequential case the vdbs with priority 1 is the first to be started and the last to
be stopped. This value is set on creation of VDB groups.

Array of objects (Tag) [ 1 .. 1000 ] items

The tags to be created for VDB Group.

make_current_account_owner
boolean
Default: true

Whether the account creating this VDB group must be configured as owner of the VDB group.

Responses
201

VDBGroup Created.

post/vdb-groups
Request samples
application/json
{
  • "name": "string",
  • "vdb_ids": [
    ],
  • "vdbs": [
    ],
  • "tags": [
    ],
  • "make_current_account_owner": true
}
Response samples
application/json
{
  • "vdb_group": {
    }
}

Provision a new VDB Group from a Bookmark.

SecurityApiKeyAuth
Request
Request Body schema: application/json

The parameters to provision a VDB group from a Bookmark.

name
required
string [ 1 .. 256 ] characters

Name of the created VDB group name.

bookmark_id
required
string [ 1 .. 256 ] characters

ID of a bookmark to provision this VDB Group from.

required
object

Provision parameters for each of the VDBs which will need to be provisioned. The key must be the vdb_id of the corresponding entry from the bookmark, and the value the provision parameters for the VDB which will be cloned from the bookmark.

Array of objects (Tag) [ 1 .. 1000 ] items

The tags to be created for VDB Group.

make_current_account_owner
boolean
Default: true

Whether the account provisioning this VDB group must be configured as owner of the VDB group.

Responses
200

OK

post/vdb-groups/provision_from_bookmark
Request samples
application/json

The above request example contains bare minimum properties needed to provision VdbGroup from a Bookmark

{
  • "name": "vdb-group-1",
  • "bookmark_id": "bookmark-id-1",
  • "provision_parameters": {
    },
  • "tags": [
    ],
  • "make_current_account_owner": true
}
Response samples
application/json
{
  • "vdb_group": {
    },
  • "job": {
    }
}

Search for VDB Groups.

SecurityApiKeyAuth
Request
query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100

Maximum number of objects to return per query. The value must be between 1 and 1000. Default is 100.

Example: limit=50
cursor
string [ 1 .. 4096 ] characters

Cursor to fetch the next or previous page of results. The value of this property must be extracted from the 'prev_cursor' or 'next_cursor' property of a PaginatedResponseMetadata which is contained in the response of list and search API endpoints.

sort
string or null

The field to sort results by. A property name with a prepended '-' signifies descending order.

Enum: "id" "-id" "name" "-name" "locked_by" "-locked_by" "locked_by_name" "-locked_by_name" "database_type" "-database_type" "status" "-status" "last_successful_refresh_to_bookmark_id" "-last_successful_refresh_to_bookmark_id" "last_successful_refresh_time" "-last_successful_refresh_time"
Example: sort=id
Request Body schema: application/json

A request body containing a filter expression. This enables searching for items matching arbitrarily complex conditions. The list of attributes which can be used in filter expressions is available in the x-filterable vendor extension.

Filter Expression Overview

Note: All keywords are case-insensitive

Comparison Operators

Operator Description Example
CONTAINS Substring or membership testing for string and list attributes respectively. field3 CONTAINS 'foobar', field4 CONTAINS TRUE
IN Tests if field is a member of a list literal. List can contain a maximum of 100 values field2 IN ['Goku', 'Vegeta']
GE Tests if a field is greater than or equal to a literal value field1 GE 1.2e-2
GT Tests if a field is greater than a literal value field1 GT 1.2e-2
LE Tests if a field is less than or equal to a literal value field1 LE 9000
LT Tests if a field is less than a literal value field1 LT 9.02
NE Tests if a field is not equal to a literal value field1 NE 42
EQ Tests if a field is equal to a literal value field1 EQ 42

Search Operator

The SEARCH operator filters for items which have any filterable attribute that contains the input string as a substring, comparison is done case-insensitively. This is not restricted to attributes with string values. Specifically SEARCH '12' would match an item with an attribute with an integer value of 123.

Logical Operators

Ordered by precedence.

Operator Description Example
NOT Logical NOT (Right associative) NOT field1 LE 9000
AND Logical AND (Left Associative) field1 GT 9000 AND field2 EQ 'Goku'
OR Logical OR (Left Associative) field1 GT 9000 OR field2 EQ 'Goku'

Grouping

Parenthesis () can be used to override operator precedence.

For example: NOT (field1 LT 1234 AND field2 CONTAINS 'foo')

Literal Values

Literal Description Examples
Nil Represents the absence of a value nil, Nil, nIl, NIL
Boolean true/false boolean true, false, True, False, TRUE, FALSE
Number Signed integer and floating point numbers. Also supports scientific notation. 0, 1, -1, 1.2, 0.35, 1.2e-2, -1.2e+2
String Single or double quoted "foo", "bar", "foo bar", 'foo', 'bar', 'foo bar'
Datetime Formatted according to RFC3339 2018-04-27T18:39:26.397237+00:00
List Comma-separated literals wrapped in square brackets [0], [0, 1], ['foo', "bar"]

Limitations

  • A maximum of 8 unique identifiers may be used inside a filter expression.
filter_expression
string [ 5 .. 2000 ] characters
Responses
200

OK

post/vdb-groups/search
Request samples
application/json

An example of a nested Object comparison testing that at least one repository has a version which is equal to 19.0.0.

{
  • "filter_expression": "repositories CONTAINS {version eq '19.0.0'}"
}
Response samples
application/json
{
  • "items": [
    ],
  • "response_metadata": {
    }
}

Get a VDBGroup by name.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Responses
200

OK

get/vdb-groups/{vdbGroupId}
Response samples
application/json
{
  • "id": "123",
  • "name": "my-first-vdb-group",
  • "vdb_ids": [
    ],
  • "is_locked": false,
  • "locked_by": 1,
  • "locked_by_name": "admin",
  • "vdb_group_source": "DCT",
  • "ss_data_layout_id": "string",
  • "vdbs": [
    ],
  • "database_type": "Oracle",
  • "status": "RUNNING",
  • "last_successful_refresh_to_bookmark_id": "bookmark-123",
  • "last_successful_refresh_time": "2021-05-01T08:51:34.148Z",
  • "tags": [
    ]
}

Delete a VDBGoup.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Responses
204

No Content

delete/vdb-groups/{vdbGroupId}

Update values of a VDB group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The new data to update a VDB group.

name
string [ 1 .. 256 ] characters

The name of the VDB group.

vdb_ids
Array of strings non-empty
Array of objects (CreateVDBGroupOrder) [ 1 .. 256 ] items

Dictates order of operations on VDBs. Operations can be performed in parallel
for all VDBs or sequentially. Below are possible valid and invalid orderings given an example
VDB group with 3 vdbs (A, B, and C).
Valid:
{"vdb_id":"vdb-1", "order":"1"} {"vdb_id":"vdb-2", order:"1"} {vdb_id:"vdb-3", order:"1"} (parallel)
{vdb_id:"vdb-1", order:"1"} {vdb_id:"vdb-2", order:"2"} {vdb_id:"vdb-3", order:"3"} (sequential)
Invalid:
{vdb_id:"vdb-1", order:"A"} {vdb_id:"vdb-2", order:"B"} {vdb_id:"vdb-3", order:"C"} (sequential)

In the sequential case the vdbs with priority 1 is the first to be started and the last to
be stopped. This value is set on creation of VDB groups.

Responses
200

OK

patch/vdb-groups/{vdbGroupId}
Request samples
application/json
{
  • "name": "my-vdb-group",
  • "vdb_ids": [
    ],
  • "vdbs": [
    ]
}
Response samples
application/json
{
  • "id": "123",
  • "name": "my-first-vdb-group",
  • "vdb_ids": [
    ],
  • "is_locked": false,
  • "locked_by": 1,
  • "locked_by_name": "admin",
  • "vdb_group_source": "DCT",
  • "ss_data_layout_id": "string",
  • "vdbs": [
    ],
  • "database_type": "Oracle",
  • "status": "RUNNING",
  • "last_successful_refresh_to_bookmark_id": "bookmark-123",
  • "last_successful_refresh_time": "2021-05-01T08:51:34.148Z",
  • "tags": [
    ]
}

Get tags for a VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Responses
200

Ok

get/vdb-groups/{vdbGroupId}/tags
Response samples
application/json
{
  • "tags": [
    ]
}

Create tags for a VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json
required

Tags information for VDB Group.

required
Array of objects (Tag) [ 1 .. 1000 ] items unique

Array of tags with key value pairs

Responses
201

Created

post/vdb-groups/{vdbGroupId}/tags
Request samples
application/json
{
  • "tags": [
    ]
}
Response samples
application/json
{
  • "tags": [
    ]
}

Delete tags for a VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The parameters to delete tags

key
string [ 1 .. 4000 ] characters

Key of the tag

value
string [ 1 .. 4000 ] characters

Value of the tag

Array of objects (Tag) [ 1 .. 1000 ] items unique

List of tags to be deleted

Responses
204

No Content

post/vdb-groups/{vdbGroupId}/tags/delete
Request samples
application/json

Delete all tags for given object - No request body required

{ }

Refresh a VDBGroup.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The parameters to refresh a VDBGroup.

bookmark_id
required
string [ 1 .. 256 ] characters

ID of a bookmark to refresh this VDB Group to.

Responses
200

VDBGroup refresh initiated.

post/vdb-groups/{vdbGroupId}/refresh
Request samples
application/json
{
  • "bookmark_id": "string"
}
Response samples
application/json
{
  • "job": {
    }
}

Refresh a VDBGroup by snapshot.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The parameters to refresh a VDBGroup by snapshot.

Array of objects (VDBGroupRefreshBySnapshot) [ 1 .. 256 ] items

List of the pair of VDB and snapshot to refresh from. If this is not set, all VDBs will be refreshed from latest snapshot of their parent.

Responses
200

VDBGroup refresh initiated.

post/vdb-groups/{vdbGroupId}/refresh_by_snapshot
Request samples
application/json
{
  • "vdb_snapshot_mappings": [
    ]
}
Response samples
application/json
{
  • "job": {
    }
}

Refresh a VDBGroup by timestamp.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The parameters to refresh a VDBGroup by timestamp.

Array of objects (VDBGroupRefreshByTimestamp) [ 1 .. 256 ] items

List of the pair of VDB and timestamp to refresh from. If this is not set, all VDBs will be refreshed from latest timestamp of their parent.

Responses
200

VDBGroup refresh initiated.

post/vdb-groups/{vdbGroupId}/refresh_by_timestamp
Request samples
application/json
{
  • "vdb_timestamp_mappings": [
    ]
}
Response samples
application/json
{
  • "job": {
    }
}

Rollback a VDBGroup.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json

The parameters to rollback a VDBGroup.

bookmark_id
required
string [ 1 .. 256 ] characters

ID of a bookmark to rollback this VDB Group to.

Responses
200

VDBGroup rollback initiated.

post/vdb-groups/{vdbGroupId}/rollback
Request samples
application/json
{
  • "bookmark_id": "string"
}
Response samples
application/json
{
  • "job": {
    }
}

List bookmarks compatible with this VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100

Maximum number of objects to return per query. The value must be between 1 and 1000. Default is 100.

Example: limit=50
cursor
string [ 1 .. 4096 ] characters

Cursor to fetch the next or previous page of results. The value of this property must be extracted from the 'prev_cursor' or 'next_cursor' property of a PaginatedResponseMetadata which is contained in the response of list and search API endpoints.

sort
string or null

The field to sort results by. A property name with a prepended '-' signifies descending order.

Enum: "id" "-id" "name" "-name" "creation_date" "-creation_date" "vdb_ids" "-vdb_ids" "retention" "-retention" "expiration" "-expiration" "data_timestamp" "-data_timestamp" "timeflow_id" "-timeflow_id" "location" "-location"
Example: sort=id
Responses
200

OK

get/vdb-groups/{vdbGroupId}/bookmarks
Response samples
application/json
{
  • "items": [
    ],
  • "response_metadata": {
    }
}

Search for bookmarks compatible with this VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100

Maximum number of objects to return per query. The value must be between 1 and 1000. Default is 100.

Example: limit=50
cursor
string [ 1 .. 4096 ] characters

Cursor to fetch the next or previous page of results. The value of this property must be extracted from the 'prev_cursor' or 'next_cursor' property of a PaginatedResponseMetadata which is contained in the response of list and search API endpoints.

sort
string or null

The field to sort results by. A property name with a prepended '-' signifies descending order.

Enum: "id" "-id" "name" "-name" "creation_date" "-creation_date" "vdb_ids" "-vdb_ids" "retention" "-retention" "expiration" "-expiration" "data_timestamp" "-data_timestamp" "timeflow_id" "-timeflow_id" "location" "-location"
Example: sort=id
Request Body schema: application/json

A request body containing a filter expression. This enables searching for items matching arbitrarily complex conditions. The list of attributes which can be used in filter expressions is available in the x-filterable vendor extension.

Filter Expression Overview

Note: All keywords are case-insensitive

Comparison Operators

Operator Description Example
CONTAINS Substring or membership testing for string and list attributes respectively. field3 CONTAINS 'foobar', field4 CONTAINS TRUE
IN Tests if field is a member of a list literal. List can contain a maximum of 100 values field2 IN ['Goku', 'Vegeta']
GE Tests if a field is greater than or equal to a literal value field1 GE 1.2e-2
GT Tests if a field is greater than a literal value field1 GT 1.2e-2
LE Tests if a field is less than or equal to a literal value field1 LE 9000
LT Tests if a field is less than a literal value field1 LT 9.02
NE Tests if a field is not equal to a literal value field1 NE 42
EQ Tests if a field is equal to a literal value field1 EQ 42

Search Operator

The SEARCH operator filters for items which have any filterable attribute that contains the input string as a substring, comparison is done case-insensitively. This is not restricted to attributes with string values. Specifically SEARCH '12' would match an item with an attribute with an integer value of 123.

Logical Operators

Ordered by precedence.

Operator Description Example
NOT Logical NOT (Right associative) NOT field1 LE 9000
AND Logical AND (Left Associative) field1 GT 9000 AND field2 EQ 'Goku'
OR Logical OR (Left Associative) field1 GT 9000 OR field2 EQ 'Goku'

Grouping

Parenthesis () can be used to override operator precedence.

For example: NOT (field1 LT 1234 AND field2 CONTAINS 'foo')

Literal Values

Literal Description Examples
Nil Represents the absence of a value nil, Nil, nIl, NIL
Boolean true/false boolean true, false, True, False, TRUE, FALSE
Number Signed integer and floating point numbers. Also supports scientific notation. 0, 1, -1, 1.2, 0.35, 1.2e-2, -1.2e+2
String Single or double quoted "foo", "bar", "foo bar", 'foo', 'bar', 'foo bar'
Datetime Formatted according to RFC3339 2018-04-27T18:39:26.397237+00:00
List Comma-separated literals wrapped in square brackets [0], [0, 1], ['foo', "bar"]

Limitations

  • A maximum of 8 unique identifiers may be used inside a filter expression.
filter_expression
string [ 5 .. 2000 ] characters
Responses
200

OK

post/vdb-groups/{vdbGroupId}/bookmarks/search
Request samples
application/json

An example of a nested Object comparison testing that at least one repository has a version which is equal to 19.0.0.

{
  • "filter_expression": "repositories CONTAINS {version eq '19.0.0'}"
}
Response samples
application/json
{
  • "items": [
    ],
  • "response_metadata": {
    }
}

Lock a VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Request Body schema: application/json
required

The parameters to lock a VDB Group.

account_id
integer <int64>

Id of the account on whose behalf this request is being made. Only accounts having LOCK_FOR_OTHER_ACCOUNT permission can lock VDB Groups on behalf of other accounts. If this property is not specified then the account id of the authenticated user making the request is used.

Responses
200

VDB Group is locked.

post/vdb-groups/{vdbGroupId}/lock
Request samples
application/json
{
  • "account_id": 0
}
Response samples
application/json
{
  • "id": "123",
  • "name": "my-first-vdb-group",
  • "vdb_ids": [
    ],
  • "is_locked": false,
  • "locked_by": 1,
  • "locked_by_name": "admin",
  • "vdb_group_source": "DCT",
  • "ss_data_layout_id": "string",
  • "vdbs": [
    ],
  • "database_type": "Oracle",
  • "status": "RUNNING",
  • "last_successful_refresh_to_bookmark_id": "bookmark-123",
  • "last_successful_refresh_time": "2021-05-01T08:51:34.148Z",
  • "tags": [
    ]
}

Unlock a VDB Group.

SecurityApiKeyAuth
Request
path Parameters
vdbGroupId
required
string [ 1 .. 256 ] characters

The ID or name of the VDBGroup.

Responses
200

VDB Group is unlocked.

post/vdb-groups/{vdbGroupId}/unlock
Response samples
application/json
{
  • "id": "123",
  • "name": "my-first-vdb-group",
  • "vdb_ids": [
    ],
  • "is_locked": false,
  • "locked_by": 1,
  • "locked_by_name": "admin",
  • "vdb_group_source": "DCT",
  • "ss_data_layout_id": "string",
  • "vdbs": [
    ],
  • "database_type": "Oracle",
  • "status": "RUNNING",
  • "last_successful_refresh_to_bookmark_id": "bookmark-123",
  • "last_successful_refresh_time": "2021-05-01T08:51:34.148Z",
  • "tags": [
    ]
}