Skip to content

Login with TOTP

To securely generate an auth_token via API, you can use the TOTP (Time-based One-Time Password) authentication method. This API enables users to log in using a dynamic passcode generated through an authenticator app.

Please note:

  1. This API is subject to a maximum limit rate of 1 request per second for each unique app_key.
  2. Before using this API, ensure that TOTP-based authentication is enabled in your Ventura account. You can activate this by navigating to the ‘My Profile’ section and enabling the Authenticator option.

Note

If your app type is partner you will not be able to call this API. Please go to the EaseAPI For Business section to see how partners can use EaseAPI.

curl --location 'https://easeapi.venturasecurities.com/login/v1/authorization/totp' \
--header 'x-app-key: 8ab5rt7yp2lm9qw4s1ex' \
--header 'x-client-id: AA0605' \
--header 'x-mac-address: 04:7b:cb:5b:be:92' \
--header 'Content-Type: application/json' \
--data '{
    "password": "1234",
    "data": "f84ede7d9fa88227fd3e6cf483a61e5ccacc88d729c0ef887c2de6409fd387b0",
    "totp": "444725"
}'
import requests
import json

url = "https://easeapi.venturasecurities.com/login/v1/authorization/totp"

payload = json.dumps({
    "password": "1234",
    "data": "f84ede7d9fa88227fd3e6cf483a61e5ccacc88d729c0ef887c2de6409fd387b0",
    "totp": "444725"
})
headers = {
    'x-app-key': '8ab5rt7yp2lm9qw4s1ex',
    'x-client-id': 'AA0605',
    'x-mac-address': '04:7b:cb:5b:be:92',
    'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
const axios = require('axios');
let data = JSON.stringify({
    "password": "1234",
    "data": "f84ede7d9fa88227fd3e6cf483a61e5ccacc88d729c0ef887c2de6409fd387b0",
    "totp": "444725"
});

let config = {
    method: 'post',
    maxBodyLength: Infinity,
    url: 'https://easeapi.venturasecurities.com/login/v1/authorization/totp',
    headers: { 
        'x-app-key': 'STVebvfVTcOpf4t5Adoy', 
        'x-client-id': 'AA0605', 
        'x-mac-address': '04:7b:cb:5b:be:92', 
        'Content-Type': 'application/json'
    },
    data : data
};

axios.request(config)
.then((response) => {
    console.log(JSON.stringify(response.data));
})
.catch((error) => {
    console.log(error);
});

Request parameters

Parameter
Description
password This is your Ventura Pin.
data This is SHA256(app_key + secret_key) in lower case.
totp This is Authenticator TOTP of your account.

Response

{
  "client_id": "AA0605",
  "auth_token": "eyJraWQiOiJmWTdRYVhEYlR6TGtwYXlzMWR1Qk1kTHViSzFHcWlhZnlGd1RQWFQ1V1dZPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiI5NTg4MTg4Yy0yZWYxLTQ1MzktYWM0NC1kZmU1NzY4OGQyNTAiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAuYXAtc291dGgtMS5hbWF6b25hd3MuY29tXC9hcC1zb3V0aC0xX3Njc1VQdFM1QiIsImNsaWVudF9pZCI6IjUwdWVjOXJwN241cGVjaDliaDIxcTU3N3RjIiwib3JpZ2luX2p0aSI6Ijc1MTc2OWZkLTY1MzUtNDNhOC1hMmMzLWFmYTUwNzI2OWY1OSIsImV2ZW50X2lkIjoiZDA4ODE5NzQtNTE2OS00MGY0LWExOWItMDZmZDVkMTgxNGZkIiwidG9rZW5fdXNlIjoiYWNjZXNzIiwic2NvcGUiOiJhd3MuY29nbml0by5zaWduaW4udXNlci5hZG1pbiIsImF1dGhfdGltZSI6MTczNzQ0ODAxMSwiZXhwIjoxNzM3NTM0NDExLCJpYXQiOjE3Mzc0NDgwMTEsImp0aSI6IjZkODE4ZTFiLTk5OWQtNDgxZC1iNjUzLTAzMDUzNzE4NWExNCIsInVzZXJuYW1lIjoiYWEwNjA1In0.bWJWtsbttfKKIXfvo0DVW2TfRQ0o6tUnjdZl-Y5g3E6iZ1Bho_zyM0dnkXS1xZWjECjJ7_XILgJMdN2VoxmE8j1JPbAyOQSqasiKpuY48AsqNoYaHEcOpDOm1KhQA9urgDZET9VOzfTeIqOxmJicNSMVtKE38bPEzETR7zuwpm7M7PtS1TAS6KJj2EBYZ7BeOskTUiAMA5zOR4aDZOCf7Z_KLOZpO_JOrkjaQJHoNHHq2eZGZZlVQMDugrUtNtE62sywCFpcPy8N331KSE1ygUwtBjAI34-ZK0OFanrB3pzCochetrEd_X0FUTpIHQa3b-QfUh895_BZUILGzzDDVQ",
  "auth_expiry": "2025-01-22 13:56:51",
  "refresh_token": "eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAifQ.E8skEeee4ItGBG6pziqsxlcUJd1JTGSDMSNNU-BDxuycdishkqXsPPp5o9zDIa2bkWTZvqmWevBQx8oL5QHumTjivQogTz84cG7RdWSdql-BptL56sQm3ZgyGV1WTAc9_YOncPhi3oO_U0gMam2jDSHYqL70rstiEwMaKZ1PdK4afgwSpYFgWz1AwgNcpUbSlZ4DFwxViptfr4_87hmZCHxo1b0Mo3-64MzzKOh2YuUIOwhs1c7j5r3nPpelbEUjli75UttHE__4OyaMVfw6hXzGIAhBoWSXFGCsfzwJhq6_nwGBO7dIUiHAl_GlOypWs0x9DS-fm2pwYLic_6DhvA.iHjo6G6BB9RHRP5O.8FkvxTRLVphkdqeIhcgbuiWuV7XJLFl78bF9xP5AFMxvIgfSi1btGAnWwIv-ywq9G6CNE_Bur3o1nq3MSXdH3dPcqoB6Rw32p2elk8tiv2bdZNFTUucQCW-uy333p27h_xHiJu9B7cCqJ0oNFnhYGoJcTU-dSv5YMChIk05PErz3Gdo4g60S8Mxjc5eDgl-hEBwyt3o5zHyVK4KVTPV7Ulx-3WL5aMwjjV_IQMa9EGTV0UFgJ2o_e5HYFjB9Uc1WjsE0bG1iuqHIDRihtz-5N-PGnksvysFCdh6iue-c7B1CTQoBjbyzfnzF0xYTBv3jPaBfaH5UmsZ3SRcGNk3DwxP2Hff8FWITq9UnCf__ttQflavgFPCVNafTyBa76DzTKiGWoJ5r9HIGag2MmdnQ36VJ7pdDmd51Tq4X_Hx3z7zwKCCszmgIv01l3Okp2we4MYvu0wLXreDD07W19I4gZSFBQmX6VekSbyUrJruMAoqOg3aFybFn7oBv-vVBC6dNM4lnBtPeGfeEuZvlrHvflZghK5Hu--CfeKUU7Df6eqWSoGxB4k1xtnRZhNfb2180zAvdFvtOL95ofruFhB1MJULoNw_5jXJEGn2B8hM_dg0oRamjrB_DOzfOxjTM_qgYdihCUS_WuT47JRQl4izcZmp5SVRovmcBtnDm6ImaGzAKjdf-33W4hbE8KqQdb7UMqgHTMgkzTZw-UbMnXePAZjd4dD7pkpG_aTsaI81C56IV0Z6Xw7jJw16d4MLJe4K6sbBcHK0U8O4nN-gFymhruXnXhfNeSB2Dexy2UOoIIBdAPuL3fWPMjgz90XHssVmoyer1tjYpGpd7Yjra-wHaauPxQxIT6Lo_qiDws69UY3aFBVCIuWx4zZhFBoQSfEsUoCV_MTy9V9vJwKs8IlpYg5jJiLVg79zn_FazQltEhv3-zPSTeLTDaWVA31CX71ZDB0l6HoBokGm0wPmhwgCGSLLKWLkY3MUpf_yAp-V9SbKWpKXO4YBHUU8ZwCPmj5cghVNy3ZU1uYNqia2w_pFpe0rNizJ1lpKZ2bGrjuAFQBr54gyYVZxdZPUqq2kbliBYWBkZSdNWT90gA-S56JdUaOqW7mg-458cPts-ElaDoCXSc0p1K0LuPqwRp70R3sYw5x-zM-HVOsf80ZWsUGhV8VQYpx7XEcIPWADh75de_c9rl84Wjj133JgCVSQd3S4A7gO9Zw1Yo6RjSSRiqLjnRwwMLL1jQiG2eEM3NMI2QXI9L_ww-IjeCsqhw5DNsuGPOq85VCO4QA.3njLtw3O3GNdDwnN4MzXWg",
  "refresh_expiry": "2025-01-24 13:56:51"
}