Project

General

Profile

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