API v1.0 pre-release¶
Login¶
We start by posting our username, password and OTP to the URL, the password and OTP has been combined into one string.
POST to url https://api.storedsafe.se/api/1.0/auth/ JSON: {“username”:”myusername”,”keys”:”mypasswordccfgccbckhhhgjcrdbrcbtjivtdcbfkjedrhchudckbg"}
Below is the JSON data returned to us.
CALLINFO returns the status of the login and some informational stuff like if your passphrase violates policy as seen below. It also returns a token which we will use to make further calls.
[ { 'DATA' => { 'keys' => ‘mypasswordccfgccbckhhhgjcrdbrcbtjivtdcbfkjedrhchudckbg', 'username' => ‘myusername’ } }, { 'PARAMS' => [] }, { 'CALLINFO' => { 'status' => 'SUCCESS', '0' => 'Your passphrase is weak and should be changed', 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } } ]
List Groups/Vaults¶
Prerequisites: a valid token
We perform a GET request to below url, containing the token we got from the login phase.
URL: https://api.storedsafe.se/api/1.0/group?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715
Below is the data returned which contains a list of all groups available for the user, also returned is the token which might need to be updated for future requests
[ { 'GROUP' => [ { 'status' => '4', 'id' => '3', 'groupname' => 'Firewalls PRIVAT', 'policy' => '5', 'statustext' => 'Admin', 'description' => 'Brannamurar!' }, { 'status' => '4', 'groupname' => 'Test', 'id' => '2', 'description' => 'testgrupp', 'statustext' => 'Admin', 'policy' => '0' } ] }, { 'DATA' => { 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } }, { 'PARAMS' => [] }, { 'CALLINFO' => { 'status' => 'SUCCESS', 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } } ]
List templates¶
Prerequisite: a valid token
TODO
Search function¶
Prerequisite: a valid token
We perform a GET request to the url below, containing the search value (server1), and also the token
URL: https://api.storedsafe.se/api/1.0/find/server1?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715
Returned is the result if any, in this case a object with a object name server1 but it could also have matched another non-encrypted value such as description it the object has it. We also get info about the template for this object, notice that values that are stored encrypted is not listed. And again our call info with token is returned
[ { 'OBJECT' => { '401' => { 'templateid' => '1', 'parentid' => '0', 'notes' => bless( do{\(my $o = 0)}, 'JSON::XS::Boolean' ), 'children' => '0', 'filename' => '', 'status' => '1152', 'id' => '401', 'groupid' => '77', 'alarmed' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'objectname' => 'server1', 'tags' => '', 'public' => { 'info' => 'info1', 'host' => 'server1', 'username' => 'user1' } } } }, { 'TEMPLATESINFO' => { '1' => { 'STRUCTURE' => { 'username' => { 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'type' => 'text', 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'show' => bless( do{\(my $o = 1)}, 'JSON::XS::Boolean' ), 'translation' => 'Username', 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'} }, 'info' => { 'opt' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'type' => 'textarea', 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'translation' => 'Information', 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'} }, 'host' => { 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'translation' => 'Host', 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'type' => 'text', 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'} }, 'password' => { 'type' => 'text-passwdgen', 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'policy' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'alarm' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'cc' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'encrypted' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'translation' => 'Password', 'nc' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'} }, 'cryptedinfo' => { 'translation' => 'Sensitive info', 'show' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'encrypted' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'notes'}, 'type' => 'textarea', 'opt' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'} } }, 'INFO' => { 'wb' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'}, 'ico' => 'server', 'id' => '1', 'name' => 'Server', 'active' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'username'}{'show'} } } } }, { 'DATA' => { 'token' => 'ig8uo6eZO7n8ip99lel6kfrrt1vkf7i6ej72' } }, { 'PARAMS' => [ 'server1' ] }, { 'CALLINFO' => { 'status' => 'SUCCESS', 'token' => 'ig8uo6eZO7n8ip99lel6kfrrt1vkf7i6ej72' } } ]
List objects in a group¶
Prerequisite: a valid token
Once we have a group that we are interested in and we know the id of the group we can list the contents of the groups with the URL below, containing the id of the group (33) and also the token
URL: https://api.storedsafe.se/api/1.0/group/33?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715
Returned to us is list of objects in the group, template info for those objects and our status and callinfo
[ { 'GROUP' => [ { 'id' => '33', 'groupname' => 'seen', 'status' => '4', 'statustext' => 'Admin', 'policy' => '7', 'description' => 'seen' } ] }, { 'OBJECT' => { '381' => { 'public' => { 'host' => 'paris', 'username' => 'sirap' }, 'tags' => '', 'templateid' => '4', 'filename' => '', 'status' => '1152', 'alarmed' => bless( do{\(my $o = 0)}, 'JSON::XS::Boolean' ), 'id' => '381', 'notes' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'parentid' => '0', 'children' => '0', 'groupid' => '33', 'objectname' => 'balle' }, '217' => { 'parentid' => '0', 'children' => '0', 'groupid' => '33', 'objectname' => 'asd', 'public' => { 'username' => 'asd' }, 'templateid' => '10', 'tags' => '', 'filename' => '', 'notes' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'alarmed' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'status' => '1152', 'id' => '217' }, '254' => { 'groupid' => '33', 'objectname' => 'foof', 'parentid' => '0', 'children' => '0', 'alarmed' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'status' => '1152', 'id' => '254', 'notes' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'public' => { 'username' => 'foof' }, 'tags' => 'asdasd', 'templateid' => '10', 'filename' => '' }, '255' => { 'filename' => '', 'templateid' => '10', 'public' => { 'username' => 'fifif' }, 'tags' => '', 'id' => '255', 'alarmed' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'status' => '1152', 'notes' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'children' => '0', 'parentid' => '0', 'objectname' => 'fifif', 'groupid' => '33' } } }, { 'TEMPLATESINFO' => { '10' => { 'INFO' => { 'name' => 'Short login', 'wb' => bless( do{\(my $o = 1)}, 'JSON::XS::Boolean' ), 'active' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'ico' => 'server', 'id' => '10' }, 'STRUCTURE' => { 'username' => { 'translation' => 'Username', 'nc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'policy' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'cc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'alarm' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'show' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'opt' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'encrypted' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'type' => 'text' }, 'password' => { 'encrypted' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'opt' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'type' => 'text-passwdgen', 'nc' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'translation' => 'Password', 'show' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'alarm' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'cc' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'policy' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'} } } }, '4' => { 'INFO' => { 'wb' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'name' => 'Login', 'active' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'ico' => 'server', 'id' => '4' }, 'STRUCTURE' => { 'username' => { 'encrypted' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'opt' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'type' => 'text', 'nc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'translation' => 'Username', 'show' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'alarm' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'cc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'policy' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'} }, 'host' => { 'alarm' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'show' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'cc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'policy' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'nc' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'translation' => 'Host / IP', 'type' => 'text', 'encrypted' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'opt' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'} }, 'password' => { 'type' => 'text-passwdgen', 'opt' => $VAR1->[1]{'OBJECT'}{'381'}{'alarmed'}, 'encrypted' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'policy' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'cc' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'show' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'alarm' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'translation' => 'Password', 'nc' => $VAR1->[2]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'} } } } } }, { 'DATA' => { 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } }, { 'PARAMS' => [ '33' ] }, { 'CALLINFO' => { 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715', 'status' => 'SUCCESS' } } ]
Show object¶
Prerequisite: a valid token
If we know the id of a object we can choose to show that object, in this case id 255 in the URL below:
URL: https://api.storedsafe.se/api/1.0/object/255?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715&children=true
Note, there is an optional switch children=true which can be used to list child objects for a object if any
Returned is the non-encrypted info about the object, template info and our callinfo
[ { 'OBJECT' => { '255' => { 'id' => '255', 'alarmed' => bless( do{\(my $o = 0)}, 'JSON::XS::Boolean' ), 'status' => '1152', 'notes' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'filename' => '', 'templateid' => '10', 'public' => { 'username' => 'fifif' }, 'tags' => '', 'objectname' => 'fifif', 'groupid' => '33', 'children' => '0', 'parentid' => '0' } } }, { 'TEMPLATESINFO' => { '10' => { 'INFO' => { 'name' => 'Short login', 'wb' => bless( do{\(my $o = 1)}, 'JSON::XS::Boolean' ), 'id' => '10', 'ico' => 'server', 'active' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'} }, 'STRUCTURE' => { 'username' => { 'type' => 'text', 'encrypted' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'opt' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'cc' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'policy' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'nc' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'translation' => 'Username' }, 'password' => { 'type' => 'text-passwdgen', 'opt' => $VAR1->[0]{'OBJECT'}{'255'}{'alarmed'}, 'encrypted' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'policy' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'cc' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'alarm' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'}, 'translation' => 'Password', 'nc' => $VAR1->[1]{'TEMPLATESINFO'}{'10'}{'INFO'}{'wb'} } } } } }, { 'DATA' => { 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715', 'children' => 'true' } }, { 'PARAMS' => [ '255' ] }, { 'CALLINFO' => { 'status' => 'SUCCESS', 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } } ]
Create group¶
Prerequisite: a valid token
We POST below JSON data to the URL, this contains info about the new group, such as name, description, password policy and of course our token
POST, URL https://api.storedsafe.se/api/1.0/group/ JSON: {"description":"desc av grupp","groupname":"ny grupp","policy":"8","token":"8wRcsJwHxks8oa4tv523l21a77d7t9tvn715"}
Modify group¶
Prerequisite: a valid token
We PUT below JSON data to the URL containg the groupid (77), this should contain FIXME and the data that should be changed and of course our token
PUT: url https://api.storedsafe.se/api/1.0/group/77 JSON: {"token":"8wRcsJwHxks8oa4tv523l21a77d7t9tvn715","groupname":"ny grupp","status":"4","description":"pop","policy":"9","statustext":"Admin"}
Create Object¶
Prerequisite: a valid token
We POST below JSON data to the URL, this contains info about the new object, such as hostname, username, password, info, encrypted info and of course our token.
You should probably list the template of the desired object first so know how the data structure
POST, URL https://api.storedsafe.se/api/1.0/object/ JSON: {"templateid":"1","groupid":"77","parentid":"0","host":"server1","username":"user1","password":"password1","info":"info1","cryptedinfo":"infoe","token":"8wRcsJwHxks8oa4tv523l21a77d7t9tvn715"}
Decrypt object¶
Prerequisite: a valid token
We send a GET request to the URL below with the object id (401) and also our token, and also the directive decrypt=true
URL: https://api.storedsafe.se/api/1.0/object/401?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715&decrypt=true
Returned is our object with encrypted data decrypted, template info, status and our callinfo
[ { 'OBJECT' => { '401' => { 'filename' => '', 'public' => { 'info' => 'info1', 'username' => 'user1', 'host' => 'server1' }, 'tags' => '', 'templateid' => '1', 'id' => '401', 'status' => '1152', 'alarmed' => bless( do{\(my $o = 0)}, 'JSON::XS::Boolean' ), 'notes' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'crypted' => { 'password' => 'password1', 'cryptedinfo' => 'infoe' }, 'children' => '0', 'parentid' => '0', 'objectname' => 'server1', 'groupid' => '77' } } }, { 'TEMPLATESINFO' => { '1' => { 'STRUCTURE' => { 'cryptedinfo' => { 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'show' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'translation' => 'Sensitive info', 'type' => 'textarea', 'encrypted' => bless( do{\(my $o = 1)}, 'JSON::XS::Boolean' ), 'opt' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'} }, 'username' => { 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'translation' => 'Username', 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'type' => 'text' }, 'info' => { 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'translation' => 'Information', 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'type' => 'textarea', 'opt' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'} }, 'host' => { 'policy' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'alarm' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'cc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'translation' => 'Host', 'nc' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'type' => 'text', 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'}, 'encrypted' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'} }, 'password' => { 'cc' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'show' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'alarm' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'policy' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'nc' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'translation' => 'Password', 'type' => 'text-passwdgen', 'encrypted' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'opt' => $VAR1->[0]{'OBJECT'}{'401'}{'alarmed'} } }, 'INFO' => { 'active' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'ico' => 'server', 'id' => '1', 'wb' => $VAR1->[1]{'TEMPLATESINFO'}{'1'}{'STRUCTURE'}{'cryptedinfo'}{'encrypted'}, 'name' => 'Server' } } } }, { 'DATA' => { 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715', 'decrypt' => 'true' } }, { 'PARAMS' => [ '401' ] }, { 'CALLINFO' => { 'status' => 'SUCCESS', 'token' => '8wRcsJwHxks8oa4tv523l21a77d7t9tvn715' } } ]
Logout¶
Perform a GET request to below URL in order to logout and destroy the session
URL: https://api.storedsafe.se/api/1.0/auth/logout?token=8wRcsJwHxks8oa4tv523l21a77d7t9tvn715