Rewind using APIs

  • 0
  • 1
  • Question
  • Updated 2 years ago
  • Answered
Hi,



Can you give an example for rewind using API

Note: This conversation was created from a reply on: Tip of the Day: Rewinding to a Timeflow Bookmark Using the CLI.
Photo of Vasan

Vasan

  • 130 Points 100 badge 2x thumb

Posted 2 years ago

  • 0
  • 1
Photo of Ajay Thotangare

Ajay Thotangare, Employee

  • 170 Points 100 badge 2x thumb
Official Response
To rewind a VDB, you need a reference to the Database object. See the topic, API Cookbook: List dSources and VDBs (https://docs.delphix.com/display/DOCS50/API+Cookbook%3A+List+dSources+and+VDBs), for information on how to obtain the database reference.

Rewind of a VDB is done in 3 steps
1) Create session
2) Authenticate/Login to delphix engine
3) Rewind VDB. This operation is named as rollback in delphix Rest API

The following sample script includes a working example for creating a session, authenticating to the Delphix Engine, and rewinding the VDB. Please update the script variables to match your environment before using it.

#!/bin/bash
#
# sample script to start or stop a VDB.
#
# set this to the FQDN or IP address of the Delphix Engine
DE="192.168.2.131"
# set this to the Delphix admin user name
DELPHIX_ADMIN="delphix_admin"
# set this to the password for the Delphix admin user
DELPHIX_PASS="delphix"
# set this to the object reference for the VDB
VDB="ORACLE_DB_CONTAINER-57"
#
# create our session
curl -s -X POST -k --data @- http://${DE}/resources/json/delphix/session \
    -c ~/cookies.txt -H "Content-Type: application/json" <<EOF
{
    "type": "APISession",
    "version": {
        "type": "APIVersion",
        "major": 1,
        "minor": 4,
        "micro": 1
    }
}
EOF
echo
#
# authenticate to the DE
curl -s -X POST -k --data @- http://${DE}/resources/json/delphix/login \
    -b ~/cookies.txt -H "Content-Type: application/json" <<EOF
{
    "type": "LoginRequest",
    "username": "${DELPHIX_ADMIN}",
    "password": "${DELPHIX_PASS}"
}
EOF
echo
#
# rewind VDB
curl -s -X POST -k --data @- http://${DE}/resources/json/delphix/database/${VDB}/rollback \
    -b ~/cookies.txt -H "Content-Type: application/json" <<EOF
{
    "type": "OracleRollbackParameters",
    "timeflowPointParameters": {
    "type" : "TimeflowPointSnapshot",
    "snapshot" : "ORACLE_SNAPSHOT-172"
    }
}
EOF
echo

Note: While rewinding VDB, you can use different parameter types. In the above example "timeflowPointParameters" type is used as "TimeflowPointSnapshot" and a appropriate snapshot name is provided. Instead of "TimeflowPointSnapshot" , you can also choose from "TimeflowPointLocation" OR "TimeflowPointTimestamp" OR "TimeflowPointBookmark" etc. and pass the relevant parameters.
(Edited)