curl -X POST "<https://mis.kotaksecurities.com/login/1.0/tradeApiLogin>" \\
-H "Authorization: <access_token>" \\
-H "neo-fin-key: neotradeapi" \\
-H "Content-Type: application/json" \\
-d '{
"mobileNumber": "<+91XXXXXXXXXX>",
"ucc": "<client_code>",
"totp": "<6_digit_totp>"
}'
In your collection, viewSid and viewToken are sent as headers to this call.
curl -X POST "<https://mis.kotaksecurities.com/login/1.0/tradeApiValidate>" \\
-H "Authorization: <access_token>" \\
-H "neo-fin-key: neotradeapi" \\
-H "sid: <viewSid_from_previous_step>" \\
-H "Auth: <viewToken_from_previous_step>" \\
-H "Content-Type: application/json" \\
-d '{
"mpin": "<mpin>"
}'
📌 Response gives you:
baseUrl
(use it for all post-login APIs)Auth
= session tokenSid
= session sidbaseUrl
(important)If MPIN validate returned:
"baseUrl": "<https://neo-gw.kotaksecurities.com/xyz>"
and the spec shows:
{{baseUrl}}/quick/order/cancel
then your final URL is:
<https://neo-gw.kotaksecurities.com/xyz/quick/order/cancel>
👉 Just replace {{baseUrl}}
with the returned string. No braces in the final URL.