REST API Endpoints
List Devices
GET endpoint (previous /initialize endpoint) that returns the list of payment terminals (physical devices + Virtual Terminal if MOTO is enabled) associated with the merchant account. Use this to display available terminals to the merchant or to retrieve device information needed for other operations. A merchant can have multiple API keys, all granting the same access to the merchant's devices, requests auths and Analytics credentials too. API keys are merchant-specific and are not shared between merchants.
Parameters
| Parameter | Notes |
|---|---|
Header: ApiKeyCloud Required String | Api key used to authenticate the merchant. (merchant-specific and are not shared between merchants) |
Returns
| Response |
|---|
| List of Device objects. |
Code Example
Requests
- Request
curl -X GET \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
"https://cloud.handpoint.com/devices" (production)
"https://cloud.handpoint.io/devices" (development)
Responses
- 200 OK
[
{
"merchant_id_alpha": "merchantID",
"serial_number": "1850025030",
"ssk": "A1B2C3D4E5F60718293A4B5C6D7E8F901A2B3C4D5E6F7890ABCDEF0123456789",
"terminal_type": "PAXA920PRO"
}
]
Both serial_number and terminal_type values will be a required combination for requests sent to the terminal.
Terminal Operations
The following endpoints require a direct request to a physical payment terminal.
Operation Requests
/transactions
POST endpoint used to send a financial operation to the payment terminal. The transaction type to be executed (sale, refund etc.) is defined in the operation field of the request body.
Parameters
| Parameter | Notes |
|---|---|
Header: ApiKeyCloud Required String | Api key used to authenticate the merchant. (UNIQUE per Merchant) |
Request Body: Transaction Request Required TransactionRequest | Object containing the transaction request information. |
Returns
| Response | Response Code |
|---|---|
| Transaction Accepted | The response code 202 is received from the API if the transaction was successfully sent to the payment terminal. |
| BadRequest DeviceIsBusy Error | The response code 400 with error 1001 is received from the API if the payment terminal is already processing a transaction. |
| BadRequest DeviceNotResponding Error | The response code 400 with error 1002 is received from the API if the payment terminal is offline. |
| BadRequest CancelOperationNotAllowed Error | The response code 400 with error 1003 is received from the API if the stopCurrentTransaction operation cannot be executed. A transaction can only be cancelled at specific steps of the transaction, while waiting for the card to be inserted or on PIN screen. |
Code Example
Make sure that your transactionReference is unique per request, and change it for every new request attempt (even if the request contains the same values re-attempt). This will improve logs and could help troubleshooting.
transactionReference should only be included in original operations (Sale, Pre-Auth, MOTO Sale, or an unlinked MOTO Refund). Linked operations — such as Refund, Reversal, Pre-Auth Increase/Capture — should not include a transactionReference. These operations will be automatically logged under the transactionReference of the original transaction.
Requests
- Sale (no callback)
- Sale (with callback)
- Refund
- Unlinked Refund
- Reversal
curl -X POST \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
-H "Content-Type: application/json" \
-d '{
"operation":"sale",
"amount":"10000",
"currency":"EUR",
"terminal_type":"PAXA920",
"serial_number":"1547854757",
"customerReference":"op15248",
"transactionReference": "2bfde1fc-23b1-4c67-93d9-1d4a557f4d4f"
}' \
"https://cloud.handpoint.com/transactions" (production)
"https://cloud.handpoint.io/transactions" (development)
curl -X POST \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
-H "Content-Type: application/json" \
-d '{
"operation":"sale",
"amount":"10000",
"currency":"EUR",
"terminal_type":"PAXA920",
"serial_number":"1547854757",
"customerReference":"op15248",
"callbackUrl":"https://url.where.the.result.is.served.com",
"token":"2bfde1fc-23b1-4c67-93d9-1d4a557f4d4f",
"transactionReference": "2bfde1fc-23b1-4c67-93d9-1d4a557f4d4f"
}' \
"https://cloud.handpoint.com/transactions" (production)
"https://cloud.handpoint.io/transactions" (development)
curl -X POST \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
-H "Content-Type: application/json" \
-d '{
"operation":"refund",
"amount":"10000",
"currency":"EUR",
"terminal_type":"PAXA920",
"serial_number":"1547854757",
"originalTransactionId":"2bfde1fc-23b1-4c67-93d9-1d4a557f4d4f"
}' \
"https://cloud.handpoint.com/transactions" (production)
"https://cloud.handpoint.io/transactions" (development)
The amount field can be a partial or full refund. The amount specified is what will be refunded (in minor units, e.g. "10000" = 100.00). transactionReference should not be included — the refund will be linked to the transactionReference of the original transaction.
curl -X POST \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
-H "Content-Type: application/json" \
-d '{
"operation":"refund",
"amount":"10000",
"currency":"EUR",
"terminal_type":"PAXA920",
"serial_number":"1547854757",
"transactionReference": "9f3a1b2c-44d5-67e8-f901-23456789abcd"
}' \
"https://cloud.handpoint.com/transactions" (production)
"https://cloud.handpoint.io/transactions" (development)
An unlinked refund is not tied to a previous transaction — no originalTransactionId is provided. Because it is an original operation, a unique transactionReference (UUID v4) must be included.
curl -X POST \
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \
-H "Content-Type: application/json" \
-d '{
"operation":"refundReversal",
"amount":"10000",
"currency":"EUR",
"terminal_type":"PAXA920",
"serial_number":"1547854757",
"originalTransactionId":"2bfde1fc-23b1-4c67-93d9-1d4a557f4d4f"
}' \
"https://cloud.handpoint.com/transactions" (production)
"https://cloud.handpoint.io/transactions" (development)
amount and currency are required fields. For acquirers that support partial reversals, the specified amount will be reversed. For all other acquirers, the full original amount is reversed regardless of the amount sent (must be between 0 and 999999999999). transactionReference should not be included — the reversal will be linked to the transactionReference of the original transaction.
Responses
- 202 (no callback)
- 202 (with callback)
- 400 DeviceIsBusy
{
"transactionResultId": "0821032398-1628774190395",
"statusMessage": "Operation Accepted",
"transactionReference": "00000000-0000-0000-0000-000000000000"
}
{
"statusMessage": "Operation Accepted",
"transactionReference": "00000000-0000-0000-0000-000000000000"
}
{
"error": {
"statusCode": 400,
"name": "BadRequestError",
"message": {
"error": 1001,
"message": "The device is busy"
}
}
}
Transaction Result Recovery
TransactionResultRecovery
The terminal has a transaction recovery loop to automatically send back the pending TransactionResult to the callback URL in case it becomes unreachable (network issue or server down).
For the first 100 seconds after a transaction is completed, a background thread will attempt to deliver the result every 5 seconds. If the server is still unreachable after the first 100 seconds, the retry loop turns into an exponential increment to the power of 2 (8s-16s-32s etc…). The recovery loop is reinitialized every time the Handpoint application is restarted or the startRecovery method is triggered. The Transaction Result received through the transaction recovery loop will have the recoveredTransaction field set to true.
All 2XXs http response codes from the callbackUrl are valid to notify the payment terminal of a successful delivery of the result.
Returns
| Parameter | Notes |
|---|---|
| Transaction Result | The Transaction Result is delivered to the callback URL from the Transaction Request. |
Fetch Transaction Result
/transaction-result/{transactionResultId}
GET endpoint used to retrieve transaction results from the payment terminal. In case you do not provide a callbackURL and token in the transaction request, the terminal will post the transaction result to an Handpoint internal API which can be queried in order for your software to fetch the transaction result. If you are running a server to receive results and pass a callback URL and token as part of the transaction request you do not need to query this endpoint.
Parameters
| Parameter | Notes |
|---|---|
Header: ApiKeyCloud Required String | Api key used to authenticate the merchant. (UNIQUE per Merchant) |
Path parameter: transactionResultId Required String | The transactionResultId is a unique transaction id delivered immediately as a response to your transaction request. It can be used to query for a transaction result. |
Returns
| Response | Response Code |
|---|---|
| No Content | Response code 204. The transactionResultId was found in the database but there is no transaction result associated yet. This status will be retrieved while the transaction is ongoing and the transaction result has not been delivered yet. |
| OK | Response code 200 + Transaction Result. The transactionResultId was found in the database and the associated Transaction Result object is delivered. |
| Not Found | Response code 404. The transactionResultId was not found in the database. |
Code Example
Requests
- Request
curl -X GET \\
-H "ApiKeyCLoud: MeRcHaNt-ApIkEy" \\
"https://cloud.handpoint.com/transaction-result/1850025030-1776238708721" (production)
"https://cloud.handpoint.io/transaction-result/1850025030-1776238708721" (development)
Responses
- 200 OK
- 204 No Content
- 404 Not Found
{
"_statusMessage": "TEXT_IRT_00",
"accountType": "",
"aid": "A0000000031010",
"applicationLabel": "VISA CLASICA",
"arc": "0000",
"authorisationCode": "123456",
"balance": null,
"batchNumber": "123",
"budgetNumber": "",
"cardEntryType": "ICC",
"cardHolderName": "",
"cardLanguagePreference": "es_ES",
"cardSchemeName": "Visa",
"cardToken": "",
"cardTypeId": "************0936",
"chipTransactionReport": "",
"currency": "EUR",
"customData": "",
"customerReceipt": "https://receipts.handpoint.com/receipts/1abe8dc0-389e-11f1-8672-a1e0852a3198/customer.html",
"customerReference": "",
"deviceStatus": {
"applicationName": "Payments",
"applicationVersion": "20.4.12.1",
"batteryCharging": "Not Charging",
"batteryStatus": "80",
"batterymV": "3922",
"bluetoothName": "PAXA920PRO",
"externalPower": "USB",
"serialNumber": "1850025030",
"statusMessage": ""
},
"dueAmount": 0,
"errorMessage": "",
"expiryDateMMYY": "1027",
"finStatus": "AUTHORISED",
"iad": "06011203A00000",
"issuerResponseCode": "00",
"maskedCardNumber": "************0936",
"merchantAddress": "373 Douglas Ave. 2671 Malaga",
"merchantName": "im25merchant",
"merchantReceipt": "https://receipts.handpoint.com/receipts/1abe8dc0-389e-11f1-8672-a1e0852a3198/merchant.html",
"metadata": null,
"mid": "12345678",
"moneyRemittanceOptions": null,
"multiLanguageErrorMessages": {},
"multiLanguageStatusMessages": {},
"originalEFTTransactionID": "",
"paymentScenario": "CHIPCONTACTLESS",
"requestedAmount": 300,
"rrn": "0000415558180",
"signatureUrl": "",
"statusMessage": "Aprobado o completado con éxito",
"tenderType": "CREDIT",
"tid": "50025030",
"tipAmount": 0,
"totalAmount": 300,
"transactionID": "1abe8dc0-389e-11f1-8672-a1e0852a3198",
"transactionOrigin": "CLOUD",
"transactionReference": "f147c2e7-f445-4af8-9e11-ae035320ade3",
"tsi": "",
"tvr": "0000000000",
"type": "SALE",
"unMaskedPan": "",
"verificationMethod": "NOT_REQUIRED",
"efttimestamp": 1776238711000,
"efttransactionID": "1abe8dc0-389e-11f1-8672-a1e0852a3198",
"tipPercentage": 0,
"recoveredTransaction": false
}
Transaction is still in progress. Poll again after a few seconds.
The transactionResultId was not found in the database.
signatureUrl: In case the signature can not be updated to the Handpoint servers and an URL is not generated, the terminal will send back the image binary in base64 format to your software. It is important to be able to support both the URL and the image binary format.
customerReceipt and merchantReceipt: The receipts are usually received as URLs in the transaction result from the terminal. Please note that if the terminal is not able to upload the receipt to the Handpoint cloud servers and an URL is not generated then the HTML formatted receipt will be delivered to your software. It is important to be able to manage both formats.
Retrieve Transaction Status
/transactions/{transactionReference}/status
This endpoint does not use https://cloud.handpoint.(io/com)/ as a base URL, it uses https://transactions.handpoint.(io/com)/
The https://transactions.handpoint.com/transactions/{transactionReference}/status/{selector} endpoint retrieves the status of transactions associated with a specific transactionReference. The transactionReference is a unique value that you need to generate and pass in the original transaction request.
The {selector} path parameter allows you to specify whether you want to retrieve a specific transaction by its index or all transactions associated with the reference. If no selector is sent, the default value is first, and the endpoint returns the status of the initial transaction.
The main transaction result FinancialStatus that can be returned as a response to this method are the following ones:
- AUTHORISED - Transaction was successful.
- DECLINED - Transaction was declined.
- UNDEFINED (NOT FOUND) - The transaction does not exist in the Handpoint gateway. If this status is returned within 90s of the start of a transaction, there could be a chance that the cardholder has not inserted, swiped or tapped his card yet on the terminal and the Handpoint gateway might soon receive the transaction. If the
UNDEFINEDstatus is returned after 90s, it means that the transaction processed has not reached the Handpoint gateway and it will NOT be charged. - IN_PROGRESS - The transaction has been received by the gateway but the outcome is not known yet, try again after a few seconds.
- REFUNDED - Transaction was refunded.

Important Note: The finStatus field for the first transaction reflects its current status. In contrast, for subsequent transactions, the finStatus reflects the original status at the time of processing. For example, if a refund is later reversed, the refund transaction will still show as AUTHORISED.
| Selector | Description |
|---|---|
all | Returns the status of all transactions associated with the reference. |
first | (Default) Returns the status of the first transaction. |
last | Returns the status of the last transaction. |
{index} | Returns the status of a specific transaction identified by its 1-based index in the sequence of transactions associated with the transactionReference. For example, 1 for the first transaction, 2 for the second, and so on. |
Parameters
| Parameter | Notes |
|---|---|
Header: ApiKeyCloud Required String | Api key used to authenticate the merchant. (UNIQUE per Merchant) |
Path parameter: transactionReference Required String | The transactionReference is a UNIQUE UUID v4 generated by you and added as a parameter to the initial financial request. It can then be used to query the transaction status endpoint. |
Handpoint does not verify that the transactionReference values sent on every request are UNIQUE.
It's our recommendation that a new value is created and sent for every originale request attempt (Sale, Pre-Auth, MOTO Sale, or an unlinked MOTO Refund).
Responses
| Response | Response Code |
|---|---|
| 200 OK | The request was successful, and the transaction status(es) are returned in the response. |
| 404 Not Found | The specified transactionReference or selector does not exist. |
| 403 Forbidden | Authentication failed. Please check that your API Key is valid. |
Code Example
Requests
- No selector - first transaction
- Retrieve All Transactions
- Retrieve Specific Transaction
curl -X GET \
-H "ApiKeyCloud: your-api-key" \
"https://transactions.handpoint.io/transactions/123e4567-e89b-12d3-a456-426614174000/status"
curl -X GET \
-H "ApiKeyCloud: your-api-key" \
"https://transactions.handpoint.io/transactions/123e4567-e89b-12d3-a456-426614174000/status/all"
curl -X GET \
-H "ApiKeyCloud: your-api-key" \
"https://transactions.handpoint.io/transactions/123e4567-e89b-12d3-a456-426614174000/status/3"
Responses
- 200 OK (first - default)
- 200 OK (All Transactions)
- 200 OK (Last Transaction)
{
"aid": "A0000000031010",
"arc": "00",
"iad": "06011203A00000",
"tsi": "",
"tvr": "0000000000",
"cardEntryType": "ICC",
"cardLanguagePreference": "6573",
"currency": "USD",
"type": "SALE",
"tipAmount": 0,
"totalAmount": 4000,
"requestedAmount": 4000,
"dueAmount": 0,
"tipPercentage": 0,
"efttimestamp": 1776940115244,
"originalEFTTransactionID": "",
"paymentScenario": "CHIPCONTACTLESS",
"verificationMethod": "UNDEFINED",
"authorisationCode": "123456",
"cardSchemeName": "Visa",
"cardToken": "",
"maskedCardNumber": "************0936",
"cardTypeId": "",
"customerReference": "",
"efttransactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"transactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"errorMessage": "",
"expiryDateMMYY": "1027",
"issuerResponseCode": "00",
"batchNumber": "",
"rrn": "0000423131600",
"tenderType": "CREDIT",
"unMaskedPan": "",
"holdAmount": 0,
"increaseAmount": 0,
"capturedAmount": 0,
"merchantAddress": "373 Douglas Ave. 2671 Malaga",
"merchantName": "im25merchant",
"mid": "",
"cardHolderName": "",
"chipTransactionReport": "",
"customerReceipt": "",
"merchantReceipt": "",
"signatureUrl": "",
"statusMessage": "",
"tid": "",
"transactionReference": "7d27b00b-0d9f-4175-a025-6688ef8aebb3",
"transactionOrigin": "",
"finStatus": "CANCELLED"
}
[
{
"aid": "A0000000031010",
"arc": "00",
"iad": "06011203A00000",
"tsi": "",
"tvr": "0000000000",
"cardEntryType": "ICC",
"cardLanguagePreference": "6573",
"currency": "USD",
"type": "SALE",
"tipAmount": 0,
"totalAmount": 4000,
"requestedAmount": 4000,
"dueAmount": 0,
"tipPercentage": 0,
"efttimestamp": 1776940115244,
"originalEFTTransactionID": "",
"paymentScenario": "CHIPCONTACTLESS",
"verificationMethod": "UNDEFINED",
"authorisationCode": "123456",
"cardSchemeName": "Visa",
"cardToken": "",
"maskedCardNumber": "************0936",
"cardTypeId": "",
"customerReference": "",
"efttransactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"transactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"errorMessage": "",
"expiryDateMMYY": "1027",
"issuerResponseCode": "00",
"batchNumber": "",
"rrn": "0000423131600",
"tenderType": "CREDIT",
"unMaskedPan": "",
"holdAmount": 0,
"increaseAmount": 0,
"capturedAmount": 0,
"merchantAddress": "",
"merchantName": "",
"mid": "",
"cardHolderName": "",
"chipTransactionReport": "",
"customerReceipt": "",
"merchantReceipt": "",
"signatureUrl": "",
"statusMessage": "",
"tid": "",
"transactionReference": "7d27b00b-0d9f-4175-a025-6688ef8aebb3",
"transactionOrigin": "",
"finStatus": "CANCELLED"
},
{
"aid": "",
"arc": "",
"iad": "",
"tsi": "",
"tvr": "",
"cardEntryType": "UNDEFINED",
"cardLanguagePreference": "",
"currency": "USD",
"type": "REVERSAL",
"tipAmount": 0,
"totalAmount": 4000,
"requestedAmount": 4000,
"dueAmount": 0,
"tipPercentage": 0,
"efttimestamp": 1776940127201,
"originalEFTTransactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"paymentScenario": "UNKNOWN",
"verificationMethod": "UNDEFINED",
"authorisationCode": "123456",
"cardSchemeName": "Visa",
"cardToken": "",
"maskedCardNumber": "************0936",
"cardTypeId": "",
"customerReference": "",
"efttransactionID": "365d41e0-3eff-11f1-909c-f50efeae2190",
"transactionID": "365d41e0-3eff-11f1-909c-f50efeae2190",
"errorMessage": "",
"expiryDateMMYY": "1027",
"issuerResponseCode": "00",
"batchNumber": "",
"rrn": "",
"tenderType": "CREDIT",
"unMaskedPan": "",
"holdAmount": 0,
"increaseAmount": 0,
"capturedAmount": 0,
"merchantAddress": "",
"merchantName": "",
"mid": "",
"cardHolderName": "",
"chipTransactionReport": "",
"customerReceipt": "",
"merchantReceipt": "",
"signatureUrl": "",
"statusMessage": "",
"tid": "",
"transactionReference": "7d27b00b-0d9f-4175-a025-6688ef8aebb3",
"transactionOrigin": "",
"finStatus": "AUTHORISED"
}
]
{
"aid": "",
"arc": "",
"iad": "",
"tsi": "",
"tvr": "",
"cardEntryType": "UNDEFINED",
"cardLanguagePreference": "",
"currency": "USD",
"type": "REVERSAL",
"tipAmount": 0,
"totalAmount": 4000,
"requestedAmount": 4000,
"dueAmount": 0,
"tipPercentage": 0,
"efttimestamp": 1776940127201,
"originalEFTTransactionID": "2f727990-3eff-11f1-909c-f50efeae2190",
"paymentScenario": "UNKNOWN",
"verificationMethod": "UNDEFINED",
"authorisationCode": "123456",
"cardSchemeName": "Visa",
"cardToken": "",
"maskedCardNumber": "************0936",
"cardTypeId": "",
"customerReference": "",
"efttransactionID": "365d41e0-3eff-11f1-909c-f50efeae2190",
"transactionID": "365d41e0-3eff-11f1-909c-f50efeae2190",
"errorMessage": "",
"expiryDateMMYY": "1027",
"issuerResponseCode": "00",
"batchNumber": "",
"rrn": "",
"tenderType": "CREDIT",
"unMaskedPan": "",
"holdAmount": 0,
"increaseAmount": 0,
"capturedAmount": 0,
"merchantAddress": "",
"merchantName": "",
"mid": "",
"cardHolderName": "",
"chipTransactionReport": "",
"customerReceipt": "",
"merchantReceipt": "",
"signatureUrl": "",
"statusMessage": "",
"tid": "",
"transactionReference": "7d27b00b-0d9f-4175-a025-6688ef8aebb3",
"transactionOrigin": "",
"finStatus": "AUTHORISED"
}
Device Control Commands
Note:
The following commands are available for all devices running Android SDK version 7.1006.0 or later.
Command Endpoint Format
All device control commands follow this endpoint structure:
https://cloud.handpoint.io/devices/{deviceType}/{serialNumber}/{command}
Where:
{deviceType}is the type of the device (e.g., PAXIM30){serialNumber}is the serial number of the device (e.g., 1640013848){command}is the specific command to execute
Common Parameters
All commands share these common parameters:
| Parameter | Notes |
|---|---|
Header: ApiKeyCloud Required String | Api key used to authenticate the merchant. (UNIQUE per Merchant) |
Header: Content-Type Required String | Must be set to application/json |
Common Response Codes
| Response Code | Description |
|---|---|
| 202 | Request accepted, command will be executed |
| 403 | Authentication failed |
| 422 | Invalid request |
| 400 | Invalid parameter value (when applicable) |
For the Commands to work properly, the Handpoint Payments App MUST be in Integrated Mode (enabled via Handpoint TMS and controlled by the merchant in the Handpoint Payments App Settings).
Set Unattended Mode
POST /devices/{deviceType}/{serialNumber}/set-unattended-mode
Enables or disables unattended mode on the device. Unattended mode will disable the Bottom navigation bar containing the Home, back, recent buttons. The Payment screen will be the only visible screen in the Handpoint Payments App. (Settings, Hisotry and Analytic tabs will not be accessible)
Request Body Parameters
| Parameter | Type | Description |
|---|---|---|
status | boolean | true to enable unattended mode, false to disable |
Example Request
Requests
- Request
curl -X POST \
-H "ApiKeyCloud: XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX" \
-H "Content-Type: application/json" \
-d '{
"status": false
}' \
"https://cloud.handpoint.io/devices/PAXIM30/0000000000/set-unattended-mode"
Responses
- 202 Accepted
- 400 DeviceNotListening
No response body is returned.
{
"error": {
"statusCode": 400,
"name": "BadRequestError",
"message": {
"error": 1002,
"message": "No device listening at the other end of the secure channel"
}
}
}
Set Locale
POST /devices/{deviceType}/{serialNumber}/set-locale
Sets the locale of the target device.
Request Body Parameters
| Parameter | Type | Description |
|---|---|---|
locale | string | IETF BCP 47 language tag (e.g., en_US). Two-letter language and country code. |
Response Codes
| Code | Description |
|---|---|
| 202 | The request is accepted and will be executed |
| 403 | Authentication failed |
| 422 | Invalid request |
Example Request
Requests
- Request
curl -X POST \
-H "ApiKeyCloud: XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX" \
-H "Content-Type: application/json" \
-d '{
"locale": "en_CA"
}' \
"https://cloud.handpoint.io/devices/PAXIM30/0000000000/set-locale"
Responses
- 202 Accepted
- 400 DeviceNotListening
No response body is returned.
{
"error": {
"statusCode": 400,
"name": "BadRequestError",
"message": {
"error": 1002,
"message": "No device listening at the other end of the secure channel"
}
}
}
Set Password Protected
POST /devices/{deviceType}/{serialNumber}/set-password-protected
Enables or disables password protection on the device.
Request Body Parameters
| Parameter | Type | Description |
|---|---|---|
status | boolean | true to enable password protection, false to disable |
Response Codes
| Code | Description |
|---|---|
| 202 | The request is accepted and will be executed |
| 403 | Authentication failed |
| 422 | Invalid request |
Example Request
Requests
- Request
curl -X POST \
-H "ApiKeyCloud: XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX" \
-H "Content-Type: application/json" \
-d '{
"status": true
}' \
"https://cloud.handpoint.io/devices/PAXIM30/0000000000/set-password-protected"
Responses
- 202 Accepted
- 400 DeviceNotListening
No response body is returned.
{
"error": {
"statusCode": 400,
"name": "BadRequestError",
"message": {
"error": 1002,
"message": "No device listening at the other end of the secure channel"
}
}
}
Reboot
POST /devices/{deviceType}/{serialNumber}/reboot
Reboots the device with an optional force parameter.
Request Body Parameters
| Parameter | Type | Description |
|---|---|---|
force | boolean | true to force reboot even during transaction, false to check status first |
Response Codes
| Code | Description |
|---|---|
| 202 | The request is accepted and will be executed |
| 403 | Authentication failed |
| 422 | Invalid request |
Example Request
Requests
- Request
curl -X POST \
-H "ApiKeyCloud: XXXXXXX-XXXXXXX-XXXXXXX-XXXXXXX" \
-H "Content-Type: application/json" \
-d '{
"force": false
}' \
"https://cloud.handpoint.io/devices/PAXIM30/0000000000/reboot"
Responses
- 202 Accepted
- 400 DeviceNotListening
No response body is returned.
{
"error": {
"statusCode": 400,
"name": "BadRequestError",
"message": {
"error": 1002,
"message": "No device listening at the other end of the secure channel"
}
}
}