Lock Management API



Overview

This describes the resources that make up the Sargent and Greenleaf Lock Management API.

Authentication

Pre-requisite

To be able to authenticate, API requires a Consumer Key and a Consumer Secret as described in section Consumer ID and Secret.

How To Get Started

First, you need a client Id and client secret to communicate to the API.

  1. Request an authentication code.

    Consumer ID and Secret

    External applications that consumes the API must have a valid consumer key and consumer secret.   The consumer key and secret can be generated in the API Management console under Auth & Credentials.


    Javascript Clients

    Creating javascript clients requires a javascript origin domain. Javascript access to the API will only be allowed for the domain/origin specified.


    Native Clients

    Clients that does not require cross domain are considered native clients.

    This request is a pre-requisite to be able to get the access token.

    POST https://lock.sbsatm.com/login/auth_code
    Request Information:

    Body Parameters

    AuthCodeRequest

    NameDescriptionTypeAdditional information
    ClientId

    API client consumer id

    string

    Required

    ClientSecret

    API client consumer secret

    string

    Required

    Username

    Operator Username

    string

    Required

    Password

    Operator Password

    string

    Required

    Request Formats

    Formats

    {
      "ClientId": "o7p7zumt2qa5xfybvhepeyexg26ijdua",
      "ClientSecret": "aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=",
      "Username": "user",
      "Password": "password"
    }
    
    <AuthCodeRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SaG.API.Models.Requests">
      <ClientId>o7p7zumt2qa5xfybvhepeyexg26ijdua</ClientId>
      <ClientSecret>aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=</ClientSecret>
      <Password>password</Password>
      <Username>user</Username>
    </AuthCodeRequest>
    
    ClientId=o7p7zumt2qa5xfybvhepeyexg26ijdua&ClientSecret=aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=&Username=your-user-name&Password=your-password
    
    Response Information:

    This will output the Authcode. This Authcode will be used in the parameter in the next step


    AuthCodeResponse

    NameDescriptionTypeAdditional information
    Header

    Auth code response message header.

    ResponseHeader

    None.

    Body

    Auth code response message body.

    AuthCodeResponseBody

    None.

    Response Formats

    Formats

    {
      "Header": {
        "Message": "",
        "StatusCode": 0,
        "Status": "Ok",
        "ErrorId": null
      },
      "Body": {
        "AuthCode": "2j4ksda234kjsafdsaf14sfsdag1=="
      }
    }
    
    <AuthCodeResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SaG.API.Models.Responses">
      <Body>
        <AuthCode>2j4ksda234kjsafdsaf14sfsdag1==</AuthCode>
      </Body>
      <Header>
        <ErrorId i:nil="true" />
        <Message></Message>
        <Status>Ok</Status>
        <StatusCode>Ok</StatusCode>
      </Header>
    </AuthCodeResponse>
    

    Code Samples

    $.ajax({               
    	type: 'post',
            url: https://lock.sbsatm.com/login/auth_code,
            data: {
                   ClientId: "7531pmbn5rkoed0fgzj6zuzag3k4ful1",
                   ClientSecret:"NzUzMXBtYm41cmtvZWQwZmd6ajZ6dXphZzNrNGZ1bDE=",
                   Username: "lmsoper",
                   Password: "locks"
            },				
            dataType: 'json',
        	success: function (data) {
                var AuthCode = data.Body.AuthCode;
            },
    	error: function(status){
        	    alert('Retrieving Auth Code Failed.');
    	}
    });
    
    $http({
    	url: https://lock.sbsatm.com/login/auth_code,
    	method: 'POST',
    	data: {
    	       ClientId: "7531pmbn5rkoed0fgzj6zuzag3k4ful1",
                   ClientSecret:"NzUzMXBtYm41cmtvZWQwZmd6ajZ6dXphZzNrNGZ1bDE=",
                   Username: "lmsoper",
                   Password: "locks"
    	      },
    	})
    	.success(function(response){
    		 var AuthCode = response.Body.AuthCode;
           })
    	.error(function(){
    		 alert('Retrieving Auth Code Failed.');
    });
    

  2. Exchange the received authorization code for an access token.

    This request will output the access token that will be used in your header when you use the API methods.

    POST https://lock.sbsatm.com/login/access_token
    Request Information:

    Body Parameters

    AccessTokenRequest

    NameDescriptionTypeAdditional information
    ClientId

    API client consumer id

    string

    Required

    ClientSecret

    API client consumer secret

    string

    Required

    AuthCode

    Authorization code

    string

    Required

    Request Formats

    Formats

    {
      "ClientId": "o7p7zumt2qa5xfybvhepeyexg26ijdua",
      "ClientSecret": "aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=",
      "AuthCode": "sxsrub6j0jw6ccdbixyiq1opun7ptphm"
    }
    
    <AccessTokenRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SaG.API.Models.Requests">
      <AuthCode>sxsrub6j0jw6ccdbixyiq1opun7ptphm</AuthCode>
      <ClientId>o7p7zumt2qa5xfybvhepeyexg26ijdua</ClientId>
      <ClientSecret>aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=</ClientSecret>
    </AccessTokenRequest>
    
    ClientId=o7p7zumt2qa5xfybvhepeyexg26ijdua&ClientSecret=aWw2ZnJ4ZGR3YWN1MDdobzZyc2llbng2d3Ayc29nZTc=&AuthCode=sxsrub6j0jw6ccdbixyiq1opun7ptphm
    
    Response Information: Resource Description

    AccessTokenResponse

    NameDescriptionTypeAdditional information
    Header

    Access token response message header.

    ResponseHeader

    None.

    Body

    Access token response message body.

    AccessTokenResponseBody

    None.

    Response Formats

    Formats

    {
      "Header": {
        "Message": "",
        "StatusCode": 0,
        "Status": "Ok",
        "ErrorId": null
      },
      "Body": {
        "AccessToken": "2j4ksda234kjsafdsaf14sfsdag1==",
        "PriorityLevel": 0
      }
    }
    
    <AccessTokenResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SaG.API.Models.Responses">
      <Body>
        <AccessToken>2j4ksda234kjsafdsaf14sfsdag1==</AccessToken>
        <PriorityLevel>0</PriorityLevel>
      </Body>
      <Header>
        <ErrorId i:nil="true" />
        <Message></Message>
        <Status>Ok</Status>
        <StatusCode>Ok</StatusCode>
      </Header>
    </AccessTokenResponse>
    

    Code Samples

    $.ajax({               
    	type: 'post',
            url: https://lock.sbsatm.com/login/access_token,
            data: {
                   ClientId: "7531pmbn5rkoed0fgzj6zuzag3k4ful1",
                   ClientSecret:"NzUzMXBtYm41cmtvZWQwZmd6ajZ6dXphZzNrNGZ1bDE=",
                   AuthCode:"sxsrub6j0jw6ccdbixyiq1opun7ptphm"
            },				
            dataType: 'json',
        	success: function (data) {
                var access_token = data.Body.AccessToken;
            },
    	error: function(status){
        	    alert('Retrieving Access Token Failed.');
    	}
    });
    
    $http({
    	url: https://lock.sbsatm.com/login/access_token,
    	method: 'POST',
    	data: {
    	       ClientId: "7531pmbn5rkoed0fgzj6zuzag3k4ful1",
                   ClientSecret:"NzUzMXBtYm41cmtvZWQwZmd6ajZ6dXphZzNrNGZ1bDE=",
                   AuthCode:"sxsrub6j0jw6ccdbixyiq1opun7ptphm"
    	      },
    	})
    	.success(function(response){
    		 var access_token = response.Body.AccessToken;
           })
    	.error(function(){
    		 alert('Retrieving Access Token Failed.');
    });
    

  3. Using the Access Token in the header

    The access_token from Step 2 allows you to make requests to the API on behalf of the operator.

    You can pass this token in the Authorization header of each API method calls as shown below.

    {
        Authorization: accessToken
    }

Methods

Access

API user access methods

MethodAPIDescription
POST login/auth_code

Authorization code request endpoint. Returns an authorization code that can be exchanged with an access token. INPUTS==> CLIENT ID, CLIENT SECRET, USER NAME, PASSWORD. RETURN==> AUTH CODE

POST login/access_token

INPUTS==> CLIENT ID, CLIENT SECRET, AUTH CODE. RETURN==> ACCESS TOKEN

POST login/access_operator

Allows an operation to be added to the system. INPUTS==> OPERATOR CREDENTIALS (name, flags, login, password, ...) RETURN==> status

POST logout/access_token

Kills the client access token. Making it unusable. INPUTS==> no inputs. RETURN==> status

ACommands

A commands API methods.

MethodAPIDescription
POST OPEN_LOCK_A

Generate an operation code that can be used to open a lock. INPUTS==> ATM ID, USER ID, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NO_TOUCH_KEY_A

Generate an operation code that can be used to open a lock. INPUTS==> ATM ID, USER ID, START DATE, START TIME, TIME BLOCK. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_1_A

Generate an operation code that can be used to open a lock, using the current date/time for the start date/time of the operation code. INPUTS==> ATM ID, USER ID. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_2_A

Generate an operation code that can be used to open a lock, using the current date / time for the start date / time of the operation code. INPUTS==> ATM ID, USER ID. RETURN==> OPERATION CODE (open lock)

POST CLOSE_CODE_A

Close an active operation code. INPUTS==> ATM ID, OPERATION CODE, RESULT. RETURN==> (result)

POST CLOSE_CODE_NO_TOUCH_KEY_A

Close an active operation code. INPUTS==> ATM ID, RESULT (0, F, Z). RETURN==> (result)

POST CLOSE_CODE_A_SEAL_A

Close an active operation code using the A Seal value. INPUTS==> USER ID, A SEAL VALUE. RETURN==> (result)

POST RESET_USER_KEY_A

Generate an operation code that can be used to reset a user key. INPUTS==> ATM ID, USER ID, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_NO_TOUCH_KEY_A

Generate an operation code that can be used to reset a touch key. INPUTS==> ATM ID, USER ID, START DATE, START TIME, TIME BLOCK. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_NOW_A

Generate an operation code that can be used to reset a touch key, using the current date/time for the start date/time of the operation code. INPUTS==> ATM ID, USER ID. RETURN==> OPERATION CODE (reset user key)

POST RESET_TAMPER_NOW_A

Generate an operation code that can be used to reset a tamper condition, using the current date/time for the start date/time of the operation code. INPUTS==> ATM ID, USER ID. RETURN==> OPERATION CODE (reset tamper)

POST RETURN_LAST_CODE_ATM

Returns the last code that was generated for that ATM. INPUTS==> ATM ID. RETURN==> OPERATION CODE

POST RETURN_LAST_CODE_USER

Returns the last code that was generated for that user. INPUTS==> USER ID. RETURN==> OPERATION CODE

Atm

AtmController

MethodAPIDescription
POST BROWSE_ATM

This function will return a list of all available ATMs in the database. INPUTS => FILTER STRING, FILTER COLUMN, SORT ORDER. RETURN => list of ATMs

GET GET_ALL_LOCK_ATM

No documentation available.

GET GET_ATM/{id}

Get an ATM record.

POST ADD_ATM

This function will add a new ATM record to the database. INPUTS==> ATM information (ATM ID, OWNER ENTITY, SITE NAME, ...) RETURN==> (result)

PUT EDIT_ATM/{id}

This function will edit an existing ATM record in the database with the updated information. INPUTS==> ATM information (ATM ID, OWNER ENTITY, SITE NAME, ...) RETURN==> (result)

DELETE DELETE_ATM/{id}

This function will delete the ATM record for the listed ATM entity. INPUTS==> ATM ENTITY. RETURN==> (result)

POST ASSIGN_LOCK_TO_ATM/{id}

This function will assign the specified lock to the specified ATM. INPUTS==> LOCK ENTITY, ATM ENTITY. RETURN==> (result)

POST UNASSIGN_LOCK_FROM_ATM/{id}

This function will un-assign the lock from the specified ATM. INPUTS==> ATM ENTITY. RETURN==> (result)

GET RETURN_ATM_STATUS/{id}

This function will return the status of an ATM record. INPUTS==> ATM ID. RETURN==> STATUS

GET RETURN_ATM_DESCRIPTION/{id}

This function will return the description for the ATM record. INPUTS==> ATM ID. RETURN==> DESCRIPTION

POST BROWSE_ATM_OWNER

This function will return a list of ATMs in the database that belong to the owner system. INPUTS==> FILTER STRING, FILTER COLUMN, SORT ORDER. RETURN==> list of ATMs (for the owner system)

POST VERIFY_UNIQUE_ATM_ID

This function will verify that the ATM ID is unique. INPUTS==> ATM ID, OWNER ENTITY. RETURN==> (result)

POST VERIFY_ATM_DATE_RANGE

This function will verify that date range for the ATM ID is valid. INPUTS==> DISPATCHER ENTITY, ATM ENTITY, START DATE. RETURN==> (result)

DELETE DELETE_ATM_ROUTES/{id}

This function will remove the specified ATM from any assigned routes. INPUTS==> ATM ID. RETURN==> (result)

DELETE DELETE_ATM_DISPATCHERS/{id}

This function will remove the specified ATM from any assigned routes. INPUTS==> ATM ID. RETURN==> (result)

POST BROWSE_ATM_MANAGEMENT

Browse ATM All for management records.

GET GET_ALL_ATM_IDS

Get All Atm Id's.

AuditTrail

MethodAPIDescription
GET GET_ALL_TK_USER_AUDIT

Retrieve all of the active audit trail records from the database. INPUTS==> (none). RETURN==> list of audit trails.

GET GET_TK_USER_AUDIT/{id}

Retrieve all of the information from a touch key that has been used in an active audit trail function. RETURN==> list of touch key information. INPUTS==> TOUCH KEY ID (none).

POST SAVE_TK_USER_AUDIT

Save the audit trail information that has been read from a touch key. INPUTS==> AUDIT ID, ATM ID, SITE NAME, LOCK ID, OPERATION, RESULT, DURATION, UPLOAD DATE. RETURN==> (result)

DELETE DELETE_ALL_TK_USER_AUDIT

Delete the audit trail information that has been stored on a touch key. INPUTS==> (none). RETURN==> (result)

POST SAVE_OPERATOR_AUDIT

Save a record to the operator audit trail. INPUTS==> OPERATOR NAME, TYPE, SUBJECT, FUNCTION ID, FUNCTION KEY. RETURN==> (result)

Bank

Bank API methods.

MethodAPIDescription
GET GET_BANK_OPER_DESCS

Return a list of all of the bank mode operations / descriptions. INPUTS==> (none). RETURN==> list of bank mode operations / descriptions

BCommands

B commands API methods.

MethodAPIDescription
POST OPEN_LOCK_B

Generate an operation code that can be used to open a lock. INPUTS==> LOCK ID, USER ID, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_1_B

Generate an operation code that can be used to open a lock, using the current date/time for the start date/time of the operation code. INPUTS==> LOCK ID, USER ID. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_2_B

Generate an operation code that can be used to open a lock, using the current date / time for the start date / time of the operation code. INPUTS==> LOCK ID, USER ID. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_3_B

Generate an operation code that can be used to open a lock, using the current date / time for the start date / time of the operation code. INPUTS==> LOCK ID, TOUCH KEY ID. RETURN==> OPERATION CODE (open lock)

POST RESET_USER_KEY_B

Generate an operation code that can be used to reset a user key. INPUTS==> LOCK ID, USER ID, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_NO_TOUCH_KEY_B

Generate an operation code that can be used to reset a touch key. INPUTS==> LOCK ID, USER ID, START DATE, START TIME, TIME BLOCK. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_NOW_B

Generate an operation code that can be used to reset a touch key, using the current date/time for the start date/time of the operation code. INPUTS==> LOCK ID, USER ID. RETURN==> OPERATION CODE (reset user key)

POST RESET_TAMPER_NOW_B

Generate an operation code that can be used to reset a tamper condition, using the current date/time for the start date/time of the operation code. INPUTS==> ATM ID, USER ID. RETURN==> OPERATION CODE (reset tamper)

POST RETURN_LAST_CODE_LOCK

Returns the last code that was generate for that lock. INPUTS==> LOCK ID. RETURN==> OPERATION CODE

POST CLOSE_CODE_NO_TOUCH_KEY_B

Close an active operation code. INPUTS==> LOCK ID, RESULT (0, F, Z). RETURN==> no returned value

POST CLOSE_CODE_B

Close an active operation code. INPUTS==> LOCK ID, OPERATION CODE, RESULT (0, F, Z). RETURN==> no returned value

CCommands

C commands API methods.

MethodAPIDescription
POST OPEN_LOCK_C

Generate an operation code that can be used to open a lock. INPUTS==> ATM ID, NICKNAME, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_1_C

Generate an operation code that can be used to open a lock, using the current date/time for the start date/time of the operation code. INPUTS ==> ATM ID, NICKNAME. RETURN ==> OPERATION CODE (open lock)

POST OPEN_LOCK_NOW_2_C

Generate an operation code that can be used to open a lock, using the current date / time for the start date / time of the operation code. INPUTS==> ATM ID, NICKNAME. RETURN==> OPERATION CODE (open lock)

POST RESET_USER_KEY_NOW_C

Generate an operation code that can be used to reset a user key. INPUTS==> ATM ID, NICKNAME, TOUCH KEY ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_C

Generate an operation code that can be used to reset a touch key. INPUTS==> ATM ID, NICKNAME, START DATE, START TIME, TIME BLOCK. RETURN==> OPERATION CODE (reset user key)

POST RESET_USER_KEY_NO_TOUCH_KEY_C

Generate an operation code that can be used to reset a touch key, using the current date/time for the start date/time of the operation code. INPUTS==> LOCK ID, NICKNAME. RETURN==> OPERATION CODE (reset user key)

POST RESET_TAMPER_NOW_C

Generate an operation code that can be used to reset a tamper condition, using the current date/time for the start date/time of the operation code. INPUTS==> ATM ID, NICKNAME. RETURN==> OPERATION CODE (reset tamper)

POST RETURN_LAST_CODE_NICKNAME

Returns the last code that was generate for the listed nickname. INPUTS==> LOCK ID. RETURN==> OPERATION CODE

Command

Command Controller

MethodAPIDescription
GET GET_COMMANDS

This function will return a list of all available commands that are used in the lock / touch key audit trails. INPUTS==> (none). RETURN==> list of commands

GET GET_HEX_COMMANDS

This function will return a list of the hexadecimal values for all available commands that are used in the lock / touch key audit trails. INPUTS==> (none). RETURN==> list of commands (HEX values)

GET GET_MANAGER_COMMANDS/{dispEntity}

This function will return the available management commands that have been setup for a specified dispatcher. INPUTS==> DISPATCHER ENTITY. RETURN==> list of management commands (for that dispatcher)

GET GET_USER_COMMANDS/{dispEntity}

This function will return the available user commands that have been setup for a specified dispatcher. INPUTS==> DISPATCHER ENTITY. RETURN==> list of user commands (for that dispatcher)

Dispatcher

Dispatcher Controller

MethodAPIDescription
GET GET_DISPATCHERS

This function will return a list of all available dispatchers in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of dispatchers

POST RETURN_DISP_ENTITY

This function will return the dispatcher entity for the listed ATM and owner. INPUTS==> OWNER ENTITY, ATM ENTITY. RETURN==> DISPATCHER ENTITY

POST RETURN_DISP_CMDPOS

This function will return the position on the touch key for the specified command and dispatcher. INPUTS==> DISPATCHER ENTITY, TOUCH KEY ID, COMMAND ID. RETURN==> COMMAND POSITION

POST VERIFY_ATM_DISPATCHER

This function will verify that the touch key is authorized for the listed ATM. INPUTS==> ATM ENTITY, TOUCH KEY ID. RETURN==> (result)

GET GET_MGMT_DISPATCHERS

This function will return a list of all available management dispatchers in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of dispatchers

POST BROWSE_DISPATCHERS

This function will return a list of all available dispathers in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of touch keys

POST ADD_DISPATCHER

This function will add a new dispatcher record to the database. INPUTS==> dispatcher information (Dispatcher Entity, Dispatcher Id, Name, Location, Phone Number, System Owner, Export Start Date, Export End Date). RETURN==> (result)

POST EDIT_DISPATCHER

This function will update a dispatcher record to the database. INPUTS==> dispatcher information (Dispatcher Entity, Dispatcher Id, Name, Location, Phone Number, System Owner, Export Start Date, Export End Date). RETURN==> (result)

DELETE DELETE_DISPATCHER/{dispatcherEntity}

This function will delete the dispatcher record for the listed dispatcher entity. INPUTS==> DISPATCHER ENTITY. RETURN==> (result)

GET GET_DISP_BLOCK/{dispatcherEntity}

Get Dispathcher Block.

GET GET_DISPATCHER/{dispatcherEntity}

Get Dispathcher.

GET GET_DISP_ID/{dispatcherEntity}

Get Dispathcher ID.

GET CHECK_DISPATCHER_ID_UNIQUE/{dispatcherId}

Check Dispathcher ID is Unique.

GET GET_DISPATCHER_ATMS/{dispatcherEntity}

Get Dispathcher ATM's.

DELETE DELETE_DISPATCHER_ATM/{dispatcherEntity}

This function will delete the dispatcher atm record for the listed dispatcher atm entity. INPUTS==> DISPATCHER ENTITY. RETURN==> (result)

Lock

Lock Controller

MethodAPIDescription
POST BROWSE_LOCK

This function will return a list of all available locks in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of locks

POST BROWSE_LOCK_INIT

This function will return a list of all available locks in the database that have already been initialized. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of locks

POST BROWSE_ATM_AVAILABLE_LOCK

This function will return a list of all available locks in the database that have been assigned to an ATM. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of locks

POST ADD_LOCK

This function will add a new lock record to the database. INPUTS==> lock information (LOCK ID, LOCATION ID). RETURN==> (result)

POST EDIT_LOCK

This function will edit an existing lock record in the database. INPUTS==> lock information (LOCK ENTITY, LOCK ID, LOCATION ID). RETURN==> (results)

DELETE DELETE_LOCK/{id}

This function will delete the lock record for the listed user entity. INPUTS==> USER ENTITY. RETURN==> (result)

POST CREATE_LOCK_OWNER_KEYS

This function will create the encryption keys for the lock. INPUTS==> LOCK ID, OWNER ENTITY. RETURN==> lock owner key

POST RECORD_LOCK_OWNER_KEYS

This function will record the lock encryption keys in the database. INPUTS==> LOCK ENTITY, LOCK OWNER KEYS. RETURN==> (result)

GET GET_LOCK/{id}

This function will return the lock information for the listed lock entity. INPUTS==> LOCK ENTITY. RETURN==> lock information (LOCK ID, LOCATION ID)

GET RETURN_LOCK_STATUS/{id}

This function will return the status of a lock record. INPUTS==> LOCK ID. RETURN==> STATUS

PUT SETCLOCK_CAL_SEQNO

Set Clock Cal Seq Number.

PUT SETLOCK_PENDING_LOCKUNINSTALL_INFO

Set Lock Pending Lock UnInstall Info.

PUT SETLOCK_PENDING_PROGRAMBANK_INFO

Set Lock Pending Program Bank Info.

GET GET_NO_LOCK_AUDITS/{id}

Get No Lock Audits.

GET GET_LOCK_AUDIT_OPCODE_INFO/{id}

Get Lock Audit Operation Code Info.

GET VERIFY_ATM_DISP_BY_LOCK/{id}

Verify Lock record with the corresponding Atm and Dispatcher record.

DELETE DELETE_ALL_RPT_LOCK_AUDIT

This function will delete the existing audit trail report data.

POST EXECUTE_INSERT_LOCK

Execute Insert Lock.

PUT EXECUTE_FIX_UP

Execute Fix Up.

GET GET_LOCK_AUDIT_REPORT

This function will return the audit trail that was read for the lock. INPUTS==> (none). RETURN==> list of audit trail information

GET GET_LOCK_RESULTS

This function generates a management operation code to open the lock using the inputs ATM, USER, TOUCH KEY, TIME, DATE, TIME BLOCK and LOCK STATUS.

ManagementGenOpCode

Management Genenerate Operation Code API methods.

MethodAPIDescription
POST GENERATE_MGMT_CODE

This function generates a management operation code to open the lock using the inputs ATM, USER, TOUCH KEY, TIME, DATE, TIME BLOCK and LOCK STATUS. INPUTS==> ATM ENTITY, DISPATCHER ENTITY, ACCESSOR ID, TOUCH KEY ID, POSITION, LOCK STATUS, COMMAND, DATE, HOUR, TIME BLOCK, PARAMETERS. RETURN==> OPERATION CODE

OperationCodes

Operation Codes Inquiry methods

MethodAPIDescription
POST RETURN_ALL_ACTIVE_CODES

This function generates a management operation code to open the lock using the inputs ATM, USER, TOUCH KEY, TIME, DATE, TIME BLOCK and LOCK STATUS. INPUTS==> ATM ENTITY, DISPATCHER ENTITY, ACCESSOR ID, TOUCH KEY ID, POSITION, LOCK STATUS, COMMAND, DATE, HOUR, TIME BLOCK, PARAMETERS. RETURN==> OPERATION CODE

POST RETURN_ALL_CODES_ATM

This function will return a list of all active operation codes that have been assigned to the specified ATM. INPUTS==> ATM ID. RETURN==> list of active operation codes

POST RETURN_ALL_CODES_USER

This function will return a list of all active operation codes that have been assigned to the specified user. INPUTS==> USER ID. RETURN==> list of active operation codes

POST RETURN_ALL_CODES_LOCK

This function will return a list of all active operation codes that have been assigned to the specified lock. INPUTS==> LOCK ID. RETURN==> list of active operation codes

POST RETURN_ALL_CODES_NICKNAME

This function will return a list of all active operation codes that have been assigned to the specified nickname. INPUTS==> NICKNAME. RETURN==> list of active operation codes

POST GENERATE_INIT_OPERATION_CODE

This function will create a lock initialization record for the specified lock. INPUTS==> TOUCH KEY ID, USER TYPE, RECIPIENT ID, CREATOR ID, LOCK ENTITY, EMPLOYEE ID, LOCATION ID. RETURN==> (result)

POST ARCHIVE_INIT_OPERATION_CODE

This function will close the active initialization code for the specified lock. INPUTS==> LOCK ID, EMPLOYEE ID, TOUCH KEY ID, USER NAME, OPERATOR. RETURN==> (result)

POST ARCHIVE_CLOSE_OPERATION_CODES

This function will close the active operation codes for the specified lock. INPUTS==> LOCK ID. RETURN==> (result)

POST CLOSE_OPERATION_CODE

This function will close an active operation code. INPUTS==> OPERATION CODE ENTITY, LOCK ID, RESULT CODE, DURATION, TIME. RETURN==> (result)

GET VERIFY_OPEN_OP_CODES/{id}

Verify number of Open Op codes

GET VERIFY_OPERATION_CODE_DATE/{id}/{sealDay}/{daylightSavingObserved}

No documentation available.

POST GET_INIT_LOCK_OPERATION_CODES

This function will return a list of active lock initializations. INPUTS==> LOCATION ID, PAGE, PAGE SIZE. RETURN==> list of lock initializations

GET VIEW_OPEN_OPCODES_TK/{id}

View Open Operation codes via Touchkey

Operator

OperatorController

MethodAPIDescription
POST BROWSE_OPERATOR

This function will return a list of all available operators in the database. INPUTS ==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN ==> list of operators

POST BROWSE_OPERATOR_PRIO_LESS_FOUR

This function will return a list of operators in the database that have been assigned a priority level less than "4". INPUTS ==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN ==> list of operators

GET VERIFY_UNIQUE_LOGIN/{login}

This function will verify that the login is unique. INPUTS ==> LOGIN. RETURN ==> (result)

GET GET_TOUCHKEY_OPERATOR/{touchKeyId}

This function will return the operator that has been assigned to the touch key that is in the reader. INPUTS ==> TOUCH KEY ID. RETURN ==> ACCESS ID, KEY TYPE, LAST NAME

GET GET_OPERATOR/{id}

This function will return the information for the specified operator record. INPUTS ==> OPERATOR ID. RETURN ==> operator information (ACCESSOR ID, EMPLOYEE ID, FIRST NAME, ...)

POST ADD_OPERATOR

This function will add a new operator record to the database. INPUTS ==> operator information (FIRST NAME, MIDDLE NAME, LAST NAME, ...) RETURN ==> (result)

POST EDIT_OPERATOR

This function will edit an existing operator record in the database. INPUTS ==> operator information (FIRST NAME, MIDDLE NAME, LAST NAME, ...) RETURN ==> (result)

GET HAS_RELATED_OPERATOR/{id}

This function will determine accessor ID has a related operator record. INPUTS ==> ACCESSOR ID. RETURN ==> (result)

DELETE DELETE_OPERATOR/{id}

This function will delete the operator record for the listed accessor ID. INPUTS ==> ACCESSOR ID. RETURN ==> (result)

Owner

OwnerController

MethodAPIDescription
GET Get_Owner_Keys/{id}

This function will return the owner keys for the system. INPUTS ==> (none). RETURN ==> OWNER KEYS

GET GET_SYSTEM_OWNER

This function will return the owner keys for the system. INPUTS ==> (none). RETURN ==> owner information (OWNER ENTITY, OWNER ID, NAME, DISPATCHER ENTITY, DISPATCHER BLOCK, ...)

PUT EDIT_OWNER_INFORMATION

This function will udpate system owner record to the database. INPUTS==> owner information (Owner ID, Name, Location...). RETURN==> (results)

Privilege

Priviledges API methods.

MethodAPIDescription
GET GET_PRIVILEDGES/{dispatcherEntity}

Return Dispatchers Priviledges. RETURN==> Dispatchers Priviledges

Result

Result API methods.

MethodAPIDescription
GET GET_RESULT_DESCS

Return a list of all of the result descriptions. INPUTS==> (none). RETURN==> list of result descriptions

Route

Route Controller

MethodAPIDescription
POST BROWSE_ROUTE

This function will return a list of all available routes in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of routes

POST BROWSE_ROUTE_AVAILABLE_ATMS

This function will return a list of available ATMs that can be assigned to the specified route. INPUTS==> ROUTE ENTITY. RETURN==> list of available ATMs

POST BROWSE_AVAILABLE_ATMS_BY_ROUTE_ID

This function will return a list of available ATMs that can be assigned to the specified route. INPUTS==> ROUTE ID. RETURN==> list of available ATMs

POST BROWSE_ROUTE_ASSIGNED_ATMS

This function will return a list of available ATMs already assigned to the specified route. INPUTS==> ROUTE ENTITY. RETURN==> list of assigned ATMs

POST ADD_ROUTE

This function will add a new route record to the database. INPUTS==> route information (ROUTE ID, DESCRIPTION, ATMs, LOCATION, ...) RETURN==> (result)

GET GET_ROUTE/{id}

This function will return the information for the specified route record. INPUTS==> ROUTE ENTITY. RETURN==> route information (ROUTE ENTITY, ROUTE ID, DESCRIPTION, ...)

PUT EDIT_ROUTE

This function will edit an existing route record in the database with the updated information. INPUTS==> route information (ROUTE ID, DESCRIPTION, ATMs, LOCATION, ...) RETURN==> (result)

DELETE DELETE_ROUTE/{id}

This function will delete the route record for the listed route entity. INPUTS==> ROUTE ENTITY. RETURN==> (result)

GET RETURN_ROUTE_DESCRIPTION/{id}

This function will return the description for the route record. INPUTS==> ROUTE ID. RETURN==> DESCRIPTION

POST BROWSE_OPEN_ROUTE

Genearte a list of operation codes to open all of the locks on a given route. INPUTS==> Route ID, User ID, Date, Hour and Time block RETURN==> list of operation codes

POST OPEN_ROUTE_NO_TOUCH_KEY

Generate an operation code that can be used to open a lock. INPUTS==> ATM ID, USER ID, START DATE, START TIME, TIME BLOCK, LOCK STATUS. RETURN==> OPERATION CODE (open lock)

POST OPEN_ROUTE_NOW

Generate an operation code that can be used to open a lock. INPUTS==> ROUTE ID, USER ID, ATM ID's RETURN==> Boolean

POST DELETE_OPEN_ROUTES

Delete all operation codes on a particular route (Open Route). INPUTS==> ROUTE ID, USER ID. RETURN==> Boolean

SystemInfo

System information API methods

MethodAPIDescription
GET SystemInfo

Return the system information for the API setup. INPUTS==> (none). RETURN==> SYSTEM INFORMATION

GET SETUP_SYSTEM_VIEW_INFO

Return system setting view information. INPUTS==> (none) RETURN==> boolean (true/false)

PUT SETUP_SYSTEM_INFO_TIME_ZONE?timezone={timezone}

Update the time zone in the system settings. INPUTS==> time zone RETURN==> boolean (true/false)

PUT SETUP_SYSTEM_INFO_TIME_ZONE?timeout={timeout}

Update the timeout value in the system settings. INPUTS==> timeout value RETURN==> boolean (true/false)

PUT SETUP_SYSTEM_HEMISPHERE?isSoutherHemisphere={isSoutherHemisphere}

Update the timeout value in the system settings. INPUTS==> timeout value RETURN==> boolean (true/false)

Technician

Technician Controller

MethodAPIDescription
POST VERIFY_EMPLOYEE_ID

This function will verify if the technician's employeeId has equivalent Pin in any of the existing users.

TouchKey

TouchKeyController

MethodAPIDescription
POST BROWSE_TOUCH_KEY

This function will return a list of all available touch keys in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of touch keys

GET BROWSE_TOUCH_KEY_POS/{id}

Browse Touch Key Position records.

GET GET_TOUCH_KEY/{id}

Get an TouchKey record.

GET GET_TOUCH_KEY_MANAGER/{id}

This function will return the information for the specified touch key record. INPUTS==> TOUCH KEY ID. RETURN==> touch key information (TOUCH KEY ID, ACCESSOR ID, TYPE, ...)

POST ADD_TOUCH_KEY

This function will add a new touch key record to the database. INPUTS==> touch key information (TOUCH KEY ID, TYPE, LOCATION ID). RETURN==> (result)

PUT EDIT_TOUCH_KEY

This function will edit an existing touch key record in the database with the updated information. INPUTS==> route information (TOUCH KEY ID, LOCATION ID). RETURN==> (result)

DELETE DELETE_TOUCH_KEY/{id}

This function will delete the touch key record for the listed touch key entity. INPUTS==> TOUCH KEY ENTITY. RETURN==> (result)

POST BROWSE_AVAILABLE_TOUCHKEYS

Get Available Touchkeys.

POST BROWSE_TOUCHKEY_MGMT

Get Available Touchkeys.

GET TOUCH_KEY_HAS_OP_CODES/{id}

Get Number of Operation Codes by Touch Key

POST BROWSE_ASSIGNED_TOUCHKEYS

Get Assigned Touchkeys.

POST ADD_TOUCHKEY_POS

Adds a TouchKey Pos record.

DELETE DELETE_TOUCHKEY_POS/{id}

This function will delete the command from the specified position on the touch key. INPUTS==> TOUCH KEY ID, POSITION. RETURN==> (result)

PUT CLEAR_TOUCHKEY_POS/{id}

This function will delete all of the commands that have been programmed onto specified touch key. INPUTS==> TOUCH KEY ID. RETURN==> (result)

GET CHECK_TOUCHKEY_POS_ASSIGNED/{dispEntity}

This function will check the touchkey assigned that have been programmed onto specified touch key. INPUTS==> Dispatcher Entity. RETURN==> (result)

PUT UPDATE_ADDTK_PARAM_CLOCKSEQ

Update Add TouchKey Parameter for Clock and Seq.

PUT UPDATE_ADDTK_PARAM_NEW_PC_OCCODE_ERCODE

Update Add TouchKey Parameter for New PC OC Erase code.

PUT UPDATE_ADDTK_PARAM_PROGRAM_BANK_FEATURE

Update Add TouchKey Parameter for Program Bank Feature.

PUT UPDATE_ADDTK_PARAM_ADD_REV_DISP_ENTITY

Update Add TouchKey Parameter for Revoke Dispatcher Entity.

POST RETURN_TOUCHKEY_PARM

This function will return the parameter data for the specified dispatcher and position on the touch key. INPUTS==> DISPATCHER ENTITY, TOUCH KEY ID, COMMAND. RETURN==> parameter data

User

User Controller

MethodAPIDescription
POST BROWSE_USER

This function will return a list of all available users in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of users

POST ADD_USER

This function will add a new user record to the database. INPUTS==> user information (FIRST NAME, LAST NAME, USER ID, ...). RETURN==> (result)

GET GET_USER/{id}

This function will return the user information for the listed user entity. INPUTS==> USER ENTITY. RETURN==> user information (FIRST NAME, LAST NAME, USER ID, ...)

PUT EDIT_USER

This function will add a new user record to the database. INPUTS==> user information (FIRST NAME, LAST NAME, USER ID, ...). RETURN==> (results)

DELETE DELETE_USER/{id}

This function will delete the user record for the listed user entity. INPUTS==> USER ENTITY. RETURN==> (result)

GET RETURN_USER_STATUS/{id}

This function will return the status of a user record. INPUTS==> USER ID. RETURN==> STATUS

GET RETURN_USER_NICKNAME/{id}

This function will return the nickname for a user record. INPUTS==> USER ID. RETURN==> NICKNAME

POST MODIFY_USER_PIN

This function will change the PIN for a user record. INPUTS==> USER ID, PIN, OPERATOR ID, OPERATOR PASSWORD. RETURN==> (result)

POST BROWSE_USER_MNGR

This function will return a list of a manager records in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of manager records

POST BROWSE_USER_DOWNLOAD_AUDIT

This function will return a list of a manager records in the database. INPUTS==> sort information (FILTER STRING, COLUMN, SORT ORDER). RETURN==> list of manager records (for this command)

POST BROWSE_USERS_LOCK_INIT

This function will return a list of a manager records in the database. INPUTS==> COMMAND ID, sorting information. RETURN==> list of manager records (for this command)

GET GET_USER_NAMES

This function will return a list of user names. INPUTS==> (none). RETURN==> list of user names

Utilities

Utilities Controller

MethodAPIDescription
GET GET_TIMEZONES

Return the system information for the API setup. INPUTS ==> (none). RETURN ==> TIME ZONES

GET GET_SYSTEM_INFO

Return the system information for the API setup. INPUTS ==> (none). RETURN ==> SYSTEM INFORMATION


© 2025 Sargent and Greenleaf