Login with phone
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"location_id": "<string>",
"phone": "<string>",
"country_code": "+91"
}
'import requests
url = "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone"
payload = {
"location_id": "<string>",
"phone": "<string>",
"country_code": "+91"
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({location_id: '<string>', phone: '<string>', country_code: '+91'})
};
fetch('https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'location_id' => '<string>',
'phone' => '<string>',
'country_code' => '+91'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone"
payload := strings.NewReader("{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"success": true,
"content": {
"otp_token": "<string>",
"otp_action": "<string>"
}
}{
"message": "<string>",
"success": true,
"code": "<string>",
"error": {}
}{
"message": "<string>",
"success": false,
"code": "<string>"
}Authentication
Login with phone
Login to POS device using phone. The endpoint requires authentication with an API key that has the scope set to โstorefrontโ for a particular store, ensuring secure access for user login operation.
POST
/
pos
/
auth
/
login
/
phone
Login with phone
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"location_id": "<string>",
"phone": "<string>",
"country_code": "+91"
}
'import requests
url = "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone"
payload = {
"location_id": "<string>",
"phone": "<string>",
"country_code": "+91"
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({location_id: '<string>', phone: '<string>', country_code: '+91'})
};
fetch('https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'location_id' => '<string>',
'phone' => '<string>',
'country_code' => '+91'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone"
payload := strings.NewReader("{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging.api.commercengine.io/api/v1/{store_id}/storefront/pos/auth/login/phone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"location_id\": \"<string>\",\n \"phone\": \"<string>\",\n \"country_code\": \"+91\"\n}"
response = http.request(request)
puts response.read_body{
"message": "<string>",
"success": true,
"content": {
"otp_token": "<string>",
"otp_action": "<string>"
}
}{
"message": "<string>",
"success": true,
"code": "<string>",
"error": {}
}{
"message": "<string>",
"success": false,
"code": "<string>"
}Authorizations
API key for your store
Headers
This param is used to enable debug mode. If debug mode is enabled, the API will return OTP as well. This is only for development and testing purposes.
Body
application/json
Was this page helpful?
โI