Storage account management
Storage account keys are required to be saved to the user's account in order for the user to read/write data from/to external storage locations.
1010data currently supports Amazon S3, Azure Blob Storage, and Google Cloud Platform Storage.
The following functions manage storage account keys: addkey,
listkeys, putkey, readkeys,
and rmkey. Each function, except for listkeys and
readkeys, requires <key> input.
Query string
The query string in the HTTP header must contain the following parameters:
api- Specify the name of the API transaction.
apiversion- Specify the version of the API that should handle the requested transaction.
For the most up-to-date version, use apiversion=3.
uid- Specify a valid 1010data user name.
pswd- Specify a valid password for the 1010data user name provided to the
uidparameter.Note: Thepswdvalue should be the encrypted password returned from thelogintransaction. sid- The session ID for the current API session.
This value is returned by the
logintransaction and must be provided to every transaction (exceptlogin). kill(optional)- Valid values for
killare as follows:yes- Terminate the existing session and start a new one.
no- Do not terminate the existing session.
If no session exists, a new one will be created. If a session does exist, an error is returned.
Note: Ifkill=noand a session is active, the system returns an error. possess- Log in and possess the existing session.
auth- Authenticate with the system but do not kill, possess, or start any session.
The default is
yes.
XML input to server
addkey- Add a storage account key so that the user can read/write data from/to
external storage.
All cloud storage types require
<key>input, see below. listkeys- Returns a list of key names associated with the user account.
There is no required input for
listkeys. putkey- Modify the external storage account key.
all cloud storage types require
<key>input, see below. readkeys- Returns all of the keys saved in the user's account, including the key
information.
There is no required input for
readkeys. rmkey- Remove a storage key account by name.Both Amazon and S3 require the following
<key>input:name- The user-defined name of the key.
<key>- Input XML, required as part of
addkeyandputkeytransactions. Requires the following fields:
XML response from server
A successful response from the server contains the following elements:
<rc>- The return code generated by the transaction. For a list of return codes, see Return codes.
<msg>- The message returned by the system. Specific messages correspond to specific return codes.
<keys>(listkeysandreadkeysonly)- Contains a
<key>element for each key associated with the user.
Query string example
https://www2.1010data.com/gw.k?api=addkey&apiversion=3&uid=$UID&pswd=$PSWD&sid=$SID
XML input example for addkey/putkey
#Add azure storage account key via api=addkey <in> <key name="my_key" type="abs"> <AZURE_STORAGE_ACCOUNT_KEY>xxxxxxxxxxxx</AZURE_STORAGE_ACCOUNT_KEY> </key> </in> #Add s3 storage account key via api=addkey <in> <key name="my_key" type="s3"> <AWS_ACCESS_KEY_ID>the 20 character id</AWS_ACCESS_KEY_ID> <AWS_SECRET_ACCESS_KEY>the 40 character secret</AWS_SECRET_ACCESS_KEY> <AWS_DEFAULT_REGION>region where the s3 bucket resides</AWS_DEFAULT_REGION> </key> </in>
XML input example for rmkey
<in> <key name="my_azure_key"/> </in>
XML response examples
addkey:<out> <rc>0</rc> <msg>key my_key added successfully</msg> </out>
listkeys:<out> <rc>0</rc> <msg>listkeys successful</msg> <keys><key name="my_s3_key" type="s3"></key></keys> </out>
putkey:<out> <rc>0</rc> <msg>key my_key updated successfully</msg> </out>
readkeys:<out>
<rc>0</rc>
<msg>getkeys successful</msg>
<keys>
<key name="my_s3_key" type="s3"><aws_access_key_id>xxxxxxxxxxxxxxxxxxxx</aws_access_key_id>
<aws_secret_access_key>yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy</aws_secret_access_key>
<aws_default_region>us-east-1</aws_default_region>
</key>
</keys>
</out>rmkey:<out> <rc>0</rc><msg>key my_key removed successfully</msg> </out>
