Skip to main content
DELETE 

/ipos/orders/:order_id

Cancel IPO Order

API to withdraw an IPO application. Identify the application by its order_id in the path — Apply IPO returns it in the response, and you can also read it from Get IPO Orders or Get IPO Order Details.

Once the cancellation is accepted, the application reports status: application_deleted on Get IPO Order Details, with cancel_requested_date and cancel_accepted_date populated.

An application can only be withdrawn while the issue is still accepting bids. Once the bidding window closes — see bidding_end_date in Get IPO Details — the exchange no longer accepts withdrawal requests and the application proceeds to allotment.

Path Parameters

NameRequiredTypeDescription
order_idRequiredstringIPO application ID. Obtain it from data.order_id in Apply IPO or data[].order_id in Get IPO Orders.

Request

curl --location --request DELETE 'https://api.upstox.com/v2/ipos/orders/UPROYAL00000003' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {your_access_token}'

For additional samples in various languages, please refer to the Sample code section on this page.

Responses

Response Body

{
"status": "success",
"data": {
"order_id": "UPROYAL00000003",
"status": "Application cancelled successfully"
}
}
NameTypeDescription
statusstringOutcome of the request. Possible values: success, error, partial_success.
data.order_idstringApplication ID that was cancelled.
data.statusstringFree-text message returned by the IPO service for the cancellation request. Treat it as a display message, not a fixed value — check status on Get IPO Order Details to confirm the application reached application_deleted.

Sample Code

import requests

order_id = 'UPROYAL00000003'
url = f'https://api.upstox.com/v2/ipos/orders/{order_id}'
headers = {
'Accept': 'application/json',
'Authorization': 'Bearer {your_access_token}'
}

response = requests.delete(url, headers=headers)
print(response.json())