diff --git a/examples/README.md b/examples/README.md
index afc1943..96d6482 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -1,15 +1,41 @@
-# Java Sample Implementation
+# Upstox Java SDK Examples
-## Websocket
+This directory contains Java SDK code examples for the Upstox API, organized by category.
-### Market stream feed
+## Prerequisites
-Java code to connect to the Upstox Websocket API for streaming live market data. It fetches market data for a list of instrument keys. When the client receives updates from the server, it decodes the incoming protobuf data into a FeedResponse object.
+- Java 8 or higher
+- Maven or Gradle
+- An Upstox account with API access
+- A valid access token
-[Market updates using Upstox's websocket](websocket/market_data/v3)
+## Maven Dependency
-### Porfolio stream feed
+Add the following dependency to your `pom.xml`:
-Java code to connect to the Upstox WebSocket API for streaming live order updates. It fetches the order updates and prints them to the console.
+```xml
+
+ com.upstox.api
+ upstox-java-api
+ LATEST
+ compile
+
+```
-[Order updates using Upstox's websocket](websocket/order_updates/)
\ No newline at end of file
+## Folder Structure
+
+| Category | Description |
+|----------|-------------|
+| [login](./login/) | Authentication — get access token and logout |
+| [user](./user/) | User profile and fund/margin details |
+| [orders](./orders/) | Place, modify, cancel orders and fetch order details |
+| [portfolio](./portfolio/) | Positions, holdings, MTF positions, and position conversion |
+| [market-quote](./market-quote/) | LTP, OHLC, full market quotes, and option greeks |
+| [historical-data](./historical-data/) | Historical and intra-day candle data |
+| [option-chain](./option-chain/) | Option contracts and put/call option chain |
+| [expired-instruments](./expired-instruments/) | Expired instrument data and historical candles |
+| [market-information](./market-information/) | Exchange status, market timings, and holidays |
+| [gtt-orders](./gtt-orders/) | Good Till Triggered (GTT) order management |
+| [margins](./margins/) | Order margin calculations |
+| [charges](./charges/) | Brokerage charge calculations |
+| [trade-profit-and-loss](./trade-profit-and-loss/) | Trade-wise profit and loss reports |
diff --git a/examples/charges/README.md b/examples/charges/README.md
new file mode 100644
index 0000000..91dbc0f
--- /dev/null
+++ b/examples/charges/README.md
@@ -0,0 +1,10 @@
+# Charges – Example code
+
+Links to all charge-related examples in the `code/` folder.
+
+## 1. Brokerage Details
+
+- 1.1 [Get brokerage details for equity delivery orders](code/brokerage-details.md#get-brokerage-details-for-equity-delivery-orders)
+- 1.2 [Get brokerage details for equity intraday orders](code/brokerage-details.md#get-brokerage-details-for-equity-intraday-orders)
+- 1.3 [Get brokerage details for equity futures and options delivery orders](code/brokerage-details.md#get-brokerage-details-for-equity-futures-and-options-delivery-orders)
+- 1.4 [Get brokerage details for equity futures and options intraday orders](code/brokerage-details.md#get-brokerage-details-for-equity-futures-and-options-intraday-orders)
diff --git a/examples/charges/code/brokerage-details.md b/examples/charges/code/brokerage-details.md
new file mode 100644
index 0000000..69c95c1
--- /dev/null
+++ b/examples/charges/code/brokerage-details.md
@@ -0,0 +1,139 @@
+## Get brokerage details for equity delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetBrokerageResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi apiInstance = new ChargeApi();
+ String instrumentToken = "NSE_EQ|INE669E01016";
+ int quantity = 56;
+ String product = "D";
+ String transactionType = "BUY";
+ float price = 31.4F;
+ String apiVersion = "2.0";
+ try {
+ GetBrokerageResponse result = apiInstance.getBrokerage(instrumentToken, quantity, product, transactionType, price, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling ChargeApi#getBrokerage");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get brokerage details for equity intraday orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetBrokerageResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi apiInstance = new ChargeApi();
+ String instrumentToken = "NSE_EQ|INE669E01016";
+ int quantity = 56;
+ String product = "I";
+ String transactionType = "BUY";
+ float price = 31.4F;
+ String apiVersion = "2.0";
+ try {
+ GetBrokerageResponse result = apiInstance.getBrokerage(instrumentToken, quantity, product, transactionType, price, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling ChargeApi#getBrokerage");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get brokerage details for equity futures and options delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetBrokerageResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi apiInstance = new ChargeApi();
+ String instrumentToken = "NSE_FO|35271";
+ int quantity = 5;
+ String product = "D";
+ String transactionType = "BUY";
+ float price = 1331.4F;
+ String apiVersion = "2.0";
+ try {
+ GetBrokerageResponse result = apiInstance.getBrokerage(instrumentToken, quantity, product, transactionType, price, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling ChargeApi#getBrokerage");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get brokerage details for equity futures and options intraday orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetBrokerageResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi apiInstance = new ChargeApi();
+ String instrumentToken = "NSE_FO|35271";
+ int quantity = 5;
+ String product = "I";
+ String transactionType = "BUY";
+ float price = 1331.4F;
+ String apiVersion = "2.0";
+ try {
+ GetBrokerageResponse result = apiInstance.getBrokerage(instrumentToken, quantity, product, transactionType, price, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling ChargeApi#getBrokerage");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/expired-instruments/README.md b/examples/expired-instruments/README.md
new file mode 100644
index 0000000..955b460
--- /dev/null
+++ b/examples/expired-instruments/README.md
@@ -0,0 +1,19 @@
+# Expired Instruments – Example code
+
+Links to all expired-instrument-related examples in the `code/` folder.
+
+## 1. Get Expiries
+
+- 1.1 [Get Expiries for given instrument](code/get-expiries.md#get-expiries-for-given-instrument)
+
+## 2. Get Expired Future Contracts
+
+- 2.1 [Get Expired Future Contracts for given instrument with expiry date](code/get-expired-future-contracts.md#get-expired-future-contracts-for-given-instrument-with-expiry-date)
+
+## 3. Get Expired Option Contracts
+
+- 3.1 [Get Expired Option Contracts for given instrument with expiry date](code/get-expired-option-contracts.md#get-expired-option-contracts-for-given-instrument-with-expiry-date)
+
+## 4. Get Expired Historical Candle Data
+
+- 4.1 [Get Historical Candle Data for Expired Instruments](code/get-expired-historical-candle-data.md#get-historical-candle-data-for-expired-instruments)
diff --git a/examples/expired-instruments/code/get-expired-future-contracts.md b/examples/expired-instruments/code/get-expired-future-contracts.md
new file mode 100644
index 0000000..d50abe7
--- /dev/null
+++ b/examples/expired-instruments/code/get-expired-future-contracts.md
@@ -0,0 +1,28 @@
+## Get Expired Future Contracts for given instrument with expiry date
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ExpiredInstrumentApi expiredInstrumentApi = new ExpiredInstrumentApi();
+ try {
+ GetExpiredFuturesContractResponse response = expiredInstrumentApi.getExpiredFutureContracts("NSE_INDEX|Nifty 50", "2024-11-27");
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.out.println("Exception when calling ExpiredInstrumentApi#getExpiredFutureContracts");
+ System.out.println("Status code: " + e.getCode());
+ System.out.println("Error message: " + e.getResponseBody());
+ }
+ }
+}
+```
diff --git a/examples/expired-instruments/code/get-expired-historical-candle-data.md b/examples/expired-instruments/code/get-expired-historical-candle-data.md
new file mode 100644
index 0000000..d7285e5
--- /dev/null
+++ b/examples/expired-instruments/code/get-expired-historical-candle-data.md
@@ -0,0 +1,28 @@
+## Get Historical Candle Data for Expired Instruments
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ExpiredInstrumentApi expiredInstrumentApi = new ExpiredInstrumentApi();
+ try {
+ GetHistoricalCandleResponse result = expiredInstrumentApi.getExpiredHistoricalCandleData("NSE_FO|54452|24-04-2025", "30minute", "2025-06-04", "2002-06-04");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.out.println("Exception when calling ExpiredInstrumentApi#getExpiredHistoricalCandleData");
+ System.out.println("Status code: " + e.getCode());
+ System.out.println("Error message: " + e.getResponseBody());
+ }
+ }
+}
+```
diff --git a/examples/expired-instruments/code/get-expired-option-contracts.md b/examples/expired-instruments/code/get-expired-option-contracts.md
new file mode 100644
index 0000000..388fd7c
--- /dev/null
+++ b/examples/expired-instruments/code/get-expired-option-contracts.md
@@ -0,0 +1,28 @@
+## Get Expired Option Contracts for given instrument with expiry date
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ExpiredInstrumentApi expiredInstrumentApi = new ExpiredInstrumentApi();
+ try {
+ GetOptionContractResponse result = expiredInstrumentApi.getExpiredOptionContracts("NSE_INDEX|Nifty 50", "2025-04-24");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.out.println("Exception when calling ExpiredInstrumentApi#getExpiredOptionContracts");
+ System.out.println("Status code: " + e.getCode());
+ System.out.println("Error message: " + e.getResponseBody());
+ }
+ }
+}
+```
diff --git a/examples/expired-instruments/code/get-expiries.md b/examples/expired-instruments/code/get-expiries.md
new file mode 100644
index 0000000..394107b
--- /dev/null
+++ b/examples/expired-instruments/code/get-expiries.md
@@ -0,0 +1,28 @@
+## Get Expiries for given instrument
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ExpiredInstrumentApi expiredInstrumentApi = new ExpiredInstrumentApi();
+ try {
+ GetExpiriesResponse getExpiriesResponse = expiredInstrumentApi.getExpiries("NSE_INDEX|Nifty 50");
+ System.out.println(getExpiriesResponse);
+ } catch (ApiException e) {
+ System.out.println("Exception when calling ExpiredInstrumentApi#getExpiredInstruments");
+ System.out.println("Status code: " + e.getCode());
+ System.out.println("Error message: " + e.getResponseBody());
+ }
+ }
+}
+```
diff --git a/examples/gtt-orders/README.md b/examples/gtt-orders/README.md
new file mode 100644
index 0000000..0b01154
--- /dev/null
+++ b/examples/gtt-orders/README.md
@@ -0,0 +1,21 @@
+# GTT Orders – Example code
+
+Links to all GTT-order-related examples in the `code/` folder.
+
+## 1. Place GTT Order
+
+- 1.1 [Place Single Leg GTT Order](code/place-gtt-order.md#place-single-leg-gtt-order)
+- 1.2 [Place Multiple Leg GTT Order](code/place-gtt-order.md#place-multiple-leg-gtt-order)
+
+## 2. Modify GTT Order
+
+- 2.1 [Modify Single Leg GTT Order](code/modify-gtt-order.md#modify-single-leg-gtt-order)
+- 2.2 [Modify Multiple Leg GTT Order](code/modify-gtt-order.md#modify-multiple-leg-gtt-order)
+
+## 3. Cancel GTT Order
+
+- 3.1 [Cancel GTT Order](code/cancel-gtt-order.md#cancel-gtt-order)
+
+## 4. Get GTT Order Details
+
+- 4.1 [Get GTT Order Details](code/get-gtt-order-details.md#get-gtt-order-details)
diff --git a/examples/gtt-orders/code/cancel-gtt-order.md b/examples/gtt-orders/code/cancel-gtt-order.md
new file mode 100644
index 0000000..372c111
--- /dev/null
+++ b/examples/gtt-orders/code/cancel-gtt-order.md
@@ -0,0 +1,28 @@
+## Cancel GTT Order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GttCancelOrderRequest;
+import com.upstox.api.GttTriggerOrderResponse;
+import com.upstox.api.OrderApiV3;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ GttCancelOrderRequest gttCancelOrderRequest = new GttCancelOrderRequest();
+ gttCancelOrderRequest.setGttOrderId("GTT-C25040144712");
+
+ try {
+ GttTriggerOrderResponse result = apiInstance.cancelGTTOrder(gttCancelOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->cancelGTTOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/gtt-orders/code/get-gtt-order-details.md b/examples/gtt-orders/code/get-gtt-order-details.md
new file mode 100644
index 0000000..d98e9b7
--- /dev/null
+++ b/examples/gtt-orders/code/get-gtt-order-details.md
@@ -0,0 +1,25 @@
+## Get GTT Order Details
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetGttOrderResponse;
+import com.upstox.api.OrderApiV3;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+
+ try {
+ GetGttOrderResponse result = apiInstance.getGttOrderDetails("GTT-C25040144712");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->getGttOrderDetails: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/gtt-orders/code/modify-gtt-order.md b/examples/gtt-orders/code/modify-gtt-order.md
new file mode 100644
index 0000000..d10e1ba
--- /dev/null
+++ b/examples/gtt-orders/code/modify-gtt-order.md
@@ -0,0 +1,91 @@
+## Modify Single Leg GTT Order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ List gttRules = new ArrayList<>();
+
+ GttRule entryRule = new GttRule();
+ entryRule.setStrategy(GttRule.StrategyEnum.ENTRY);
+ entryRule.setTriggerType(GttRule.TriggerTypeEnum.ABOVE);
+ entryRule.setTriggerPrice(7.3D);
+ gttRules.add(entryRule);
+
+ GttModifyOrderRequest modifyOrderRequest = new GttModifyOrderRequest();
+ modifyOrderRequest.setQuantity(1);
+ modifyOrderRequest.setGttOrderId("GTT-C25270200137952");
+ modifyOrderRequest.setType(GttModifyOrderRequest.TypeEnum.SINGLE);
+ modifyOrderRequest.setRules(gttRules);
+
+ try {
+ GttTriggerOrderResponse result = apiInstance.modifyGTTOrder(modifyOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->modifyGTTOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Modify Multiple Leg GTT Order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ List gttRules = new ArrayList<>();
+
+ GttRule entryRule = new GttRule();
+ entryRule.setStrategy(GttRule.StrategyEnum.ENTRY);
+ entryRule.setTriggerType(GttRule.TriggerTypeEnum.ABOVE);
+ entryRule.setTriggerPrice(7.3D);
+ gttRules.add(entryRule);
+
+ GttRule targetRule = new GttRule();
+ targetRule.setStrategy(GttRule.StrategyEnum.TARGET);
+ targetRule.setTriggerType(GttRule.TriggerTypeEnum.IMMEDIATE);
+ targetRule.setTriggerPrice(7.64D);
+ gttRules.add(targetRule);
+
+ GttRule stopLossRule = new GttRule();
+ stopLossRule.setStrategy(GttRule.StrategyEnum.STOPLOSS);
+ stopLossRule.setTriggerType(GttRule.TriggerTypeEnum.IMMEDIATE);
+ stopLossRule.setTriggerPrice(7.1D);
+ gttRules.add(stopLossRule);
+
+ GttModifyOrderRequest modifyOrderRequest = new GttModifyOrderRequest();
+ modifyOrderRequest.setQuantity(1);
+ modifyOrderRequest.setGttOrderId("GTT-C25280200137522");
+ modifyOrderRequest.setType(GttModifyOrderRequest.TypeEnum.MULTIPLE);
+ modifyOrderRequest.setRules(gttRules);
+
+ try {
+ GttTriggerOrderResponse result = apiInstance.modifyGTTOrder(modifyOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->modifyGTTOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/gtt-orders/code/place-gtt-order.md b/examples/gtt-orders/code/place-gtt-order.md
new file mode 100644
index 0000000..dee6e6e
--- /dev/null
+++ b/examples/gtt-orders/code/place-gtt-order.md
@@ -0,0 +1,97 @@
+## Place Single Leg GTT Order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ GttPlaceOrderRequest gttPlaceOrderRequest = new GttPlaceOrderRequest();
+ gttPlaceOrderRequest.setQuantity(1);
+ gttPlaceOrderRequest.setProduct(GttPlaceOrderRequest.ProductEnum.D);
+ gttPlaceOrderRequest.setInstrumentToken("NSE_EQ|INE669E01016");
+ gttPlaceOrderRequest.setType(GttPlaceOrderRequest.TypeEnum.SINGLE);
+ gttPlaceOrderRequest.setTransactionType(GttPlaceOrderRequest.TransactionTypeEnum.BUY);
+
+ List gttRules = new ArrayList<>();
+
+ GttRule entryRule = new GttRule();
+ entryRule.setStrategy(GttRule.StrategyEnum.ENTRY);
+ entryRule.setTriggerType(GttRule.TriggerTypeEnum.ABOVE);
+ entryRule.setTriggerPrice(7D);
+ gttRules.add(entryRule);
+
+ gttPlaceOrderRequest.setRules(gttRules);
+
+ try {
+ GttTriggerOrderResponse result = apiInstance.placeGTTOrder(gttPlaceOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->placeGTTOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Place Multiple Leg GTT Order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import java.util.ArrayList;
+import java.util.List;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ GttPlaceOrderRequest gttPlaceOrderRequest = new GttPlaceOrderRequest();
+ gttPlaceOrderRequest.setQuantity(1);
+ gttPlaceOrderRequest.setProduct(GttPlaceOrderRequest.ProductEnum.D);
+ gttPlaceOrderRequest.setInstrumentToken("NSE_EQ|INE669E01016");
+ gttPlaceOrderRequest.setType(GttPlaceOrderRequest.TypeEnum.MULTIPLE);
+ gttPlaceOrderRequest.setTransactionType(GttPlaceOrderRequest.TransactionTypeEnum.BUY);
+
+ List gttRules = new ArrayList<>();
+
+ GttRule entryRule = new GttRule();
+ entryRule.setStrategy(GttRule.StrategyEnum.ENTRY);
+ entryRule.setTriggerType(GttRule.TriggerTypeEnum.ABOVE);
+ entryRule.setTriggerPrice(7D);
+ gttRules.add(entryRule);
+
+ GttRule stopLossRule = new GttRule();
+ stopLossRule.setStrategy(GttRule.StrategyEnum.STOPLOSS);
+ stopLossRule.setTriggerType(GttRule.TriggerTypeEnum.IMMEDIATE);
+ stopLossRule.setTriggerPrice(6D);
+ gttRules.add(stopLossRule);
+
+ GttRule targetRule = new GttRule();
+ targetRule.setStrategy(GttRule.StrategyEnum.TARGET);
+ targetRule.setTriggerType(GttRule.TriggerTypeEnum.IMMEDIATE);
+ targetRule.setTriggerPrice(60D);
+ gttRules.add(targetRule);
+
+ gttPlaceOrderRequest.setRules(gttRules);
+
+ try {
+ GttTriggerOrderResponse result = apiInstance.placeGTTOrder(gttPlaceOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->placeGTTOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/historical-data/README.md b/examples/historical-data/README.md
new file mode 100644
index 0000000..912e8dc
--- /dev/null
+++ b/examples/historical-data/README.md
@@ -0,0 +1,43 @@
+# Historical Data – Example code
+
+Links to all historical-data-related examples in the `code/` folder.
+
+## 1. Historical Candle Data V3
+
+- 1.1 [Get data with a 1-minute interval](code/historical-candle-data-v3.md#get-data-with-a-1-minute-interval)
+- 1.2 [Get data with a 3-minute interval](code/historical-candle-data-v3.md#get-data-with-a-3-minute-interval)
+- 1.3 [Get data with a 15-minute interval](code/historical-candle-data-v3.md#get-data-with-a-15-minute-interval)
+- 1.4 [Get data with a 1-hour interval](code/historical-candle-data-v3.md#get-data-with-a-1-hour-interval)
+- 1.5 [Get data with a 4-hour interval](code/historical-candle-data-v3.md#get-data-with-a-4-hour-interval)
+- 1.6 [Get data with a daily interval](code/historical-candle-data-v3.md#get-data-with-a-daily-interval)
+- 1.7 [Get data with a weekly interval](code/historical-candle-data-v3.md#get-data-with-a-weekly-interval)
+- 1.8 [Get data with a monthly interval](code/historical-candle-data-v3.md#get-data-with-a-monthly-interval)
+
+## 2. Intraday Candle Data V3
+
+- 2.1 [Get data with a 1-minute interval](code/intra-day-candle-data-v3.md#get-data-with-a-1-minute-interval)
+- 2.2 [Get data with a 3-minute interval](code/intra-day-candle-data-v3.md#get-data-with-a-3-minute-interval)
+- 2.3 [Get data with a 5-minute interval](code/intra-day-candle-data-v3.md#get-data-with-a-5-minute-interval)
+- 2.4 [Get data with a 15-minute interval](code/intra-day-candle-data-v3.md#get-data-with-a-15-minute-interval)
+- 2.5 [Get data with a 30-minute interval](code/intra-day-candle-data-v3.md#get-data-with-a-30-minute-interval)
+- 2.6 [Get data with a 1-hour interval](code/intra-day-candle-data-v3.md#get-data-with-a-1-hour-interval)
+- 2.7 [Get data with a 2-hour interval](code/intra-day-candle-data-v3.md#get-data-with-a-2-hour-interval)
+- 2.8 [Get current day data](code/intra-day-candle-data-v3.md#get-current-day-data)
+
+## 3. Historical Candle Data
+
+- 3.1 [Get historical candle data with a 1-minute interval](code/historical-candle-data.md#get-historical-candle-data-with-a-1-minute-interval)
+- 3.2 [Get data with a 30-minute interval](code/historical-candle-data.md#get-data-with-a-30-minute-interval)
+- 3.3 [Get data with a daily interval](code/historical-candle-data.md#get-data-with-a-daily-interval)
+- 3.4 [Get data with a weekly interval](code/historical-candle-data.md#get-data-with-a-weekly-interval)
+- 3.5 [Get data with a monthly interval](code/historical-candle-data.md#get-data-with-a-monthly-interval)
+- 3.6 [Get historical candle data with a 1-minute interval (without from date)](code/historical-candle-data.md#get-historical-candle-data-with-a-1-minute-interval-without-from-date)
+- 3.7 [Get data with a 30-minute interval (without from date)](code/historical-candle-data.md#get-data-with-a-30-minute-interval-without-from-date)
+- 3.8 [Get data with a daily interval (without from date)](code/historical-candle-data.md#get-data-with-a-daily-interval-without-from-date)
+- 3.9 [Get data with a weekly interval (without from date)](code/historical-candle-data.md#get-data-with-a-weekly-interval-without-from-date)
+- 3.10 [Get data with a monthly interval (without from date)](code/historical-candle-data.md#get-data-with-a-monthly-interval-without-from-date)
+
+## 4. Intraday Candle Data
+
+- 4.1 [Get intraday candle data with a 1-minute interval](code/intra-day-candle-data.md#get-intraday-candle-data-with-a-1-minute-interval)
+- 4.2 [Get intraday candle data with a 30-minute interval](code/intra-day-candle-data.md#get-intraday-candle-data-with-a-30-minute-interval)
diff --git a/examples/historical-data/code/historical-candle-data-v3.md b/examples/historical-data/code/historical-candle-data-v3.md
new file mode 100644
index 0000000..fe32a2e
--- /dev/null
+++ b/examples/historical-data/code/historical-candle-data-v3.md
@@ -0,0 +1,135 @@
+## Get data with a 1-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "minutes", 1, "2025-01-02", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 3-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "minutes", 3, "2025-01-02", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 15-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "minutes", 15, "2025-01-04", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 1-hour interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "hours", 1, "2025-02-01", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 4-hour interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "hours", 4, "2025-02-01", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a daily interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "days", 1, "2025-03-01", "2025-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a weekly interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "weeks", 1, "2025-01-01", "2024-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a monthly interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetHistoricalCandleResponse result = historyV3Api.getHistoricalCandleData1("NSE_EQ|INE848E01016", "months", 1, "2025-01-01", "2010-01-01");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/historical-data/code/historical-candle-data.md b/examples/historical-data/code/historical-candle-data.md
new file mode 100644
index 0000000..83fee5b
--- /dev/null
+++ b/examples/historical-data/code/historical-candle-data.md
@@ -0,0 +1,254 @@
+## Get historical candle data with a 1-minute interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "1minute";
+ String toDate = "2023-11-13";
+ String fromDate = "2023-11-12";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData1(instrumentKey, interval, toDate, fromDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 30-minute interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "30minute";
+ String toDate = "2023-11-13";
+ String fromDate = "2023-11-12";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData1(instrumentKey, interval, toDate, fromDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a daily interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "day";
+ String toDate = "2023-11-13";
+ String fromDate = "2023-11-12";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData1(instrumentKey, interval, toDate, fromDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a weekly interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "week";
+ String toDate = "2023-11-13";
+ String fromDate = "2023-10-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData1(instrumentKey, interval, toDate, fromDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a monthly interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "month";
+ String toDate = "2023-11-13";
+ String fromDate = "2022-10-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData1(instrumentKey, interval, toDate, fromDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get historical candle data with a 1-minute interval (without from date)
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "1minute";
+ String toDate = "2023-11-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData(instrumentKey, interval, toDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 30-minute interval (without from date)
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "30minute";
+ String toDate = "2023-11-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData(instrumentKey, interval, toDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a daily interval (without from date)
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "day";
+ String toDate = "2023-11-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData(instrumentKey, interval, toDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a weekly interval (without from date)
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "week";
+ String toDate = "2023-11-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData(instrumentKey, interval, toDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a monthly interval (without from date)
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetHistoricalCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "month";
+ String toDate = "2023-11-13";
+ try {
+ GetHistoricalCandleResponse result = apiInstance.getHistoricalCandleData(instrumentKey, interval, toDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getHistoricalCandleData1");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/historical-data/code/intra-day-candle-data-v3.md b/examples/historical-data/code/intra-day-candle-data-v3.md
new file mode 100644
index 0000000..3a190a9
--- /dev/null
+++ b/examples/historical-data/code/intra-day-candle-data-v3.md
@@ -0,0 +1,135 @@
+## Get data with a 1-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "minutes", 1);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 3-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "minutes", 3);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 5-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "minutes", 5);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 15-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "minutes", 15);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 30-minute interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "minutes", 30);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 1-hour interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "hours", 1);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get data with a 2-hour interval
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "hours", 2);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get current day data
+
+```java
+public class Main {
+ public static void main(String[] args) {
+ HistoryV3Api historyV3Api = new HistoryV3Api();
+ try {
+ GetIntraDayCandleResponse result = historyV3Api.getIntraDayCandleData("NSE_EQ|INE848E01016", "days", 1);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryV3Api->getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/historical-data/code/intra-day-candle-data.md b/examples/historical-data/code/intra-day-candle-data.md
new file mode 100644
index 0000000..4c56bbc
--- /dev/null
+++ b/examples/historical-data/code/intra-day-candle-data.md
@@ -0,0 +1,47 @@
+## Get intraday candle data with a 1-minute interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetIntraDayCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "1minute";
+ try {
+ GetIntraDayCandleResponse result = apiInstance.getIntraDayCandleData(instrumentKey, interval, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get intraday candle data with a 30-minute interval
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetIntraDayCandleResponse;
+import io.swagger.client.api.HistoryApi;
+
+public class Main {
+ public static void main(String[] args) {
+ HistoryApi apiInstance = new HistoryApi();
+ String apiVersion = "2.0";
+ String instrumentKey = "NSE_EQ|INE669E01016";
+ String interval = "30minute";
+ try {
+ GetIntraDayCandleResponse result = apiInstance.getIntraDayCandleData(instrumentKey, interval, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling HistoryApi#getIntraDayCandleData");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/login/README.md b/examples/login/README.md
new file mode 100644
index 0000000..aba6138
--- /dev/null
+++ b/examples/login/README.md
@@ -0,0 +1,15 @@
+# Login – Example code
+
+Links to all login-related examples in the `code/` folder.
+
+## 1. Get Token
+
+- 1.1 [Get access token using auth code](code/get-token.md#get-access-token-using-auth-code)
+
+## 2. Access Token Request
+
+- 2.1 [Access token request](code/access-token-request.md#access-token-request)
+
+## 3. Logout
+
+- 3.1 [Logout](code/logout.md#logout)
diff --git a/examples/login/code/access-token-request.md b/examples/login/code/access-token-request.md
new file mode 100644
index 0000000..971bc0f
--- /dev/null
+++ b/examples/login/code/access-token-request.md
@@ -0,0 +1,30 @@
+## Access token request
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.LoginApi;
+import com.upstox.api.IndieUserTokenRequest;
+import com.upstox.api.ExtendedTokenResponse;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ LoginApi apiInstance = new LoginApi(defaultClient);
+
+ IndieUserTokenRequest indieUserTokenRequest = new IndieUserTokenRequest();
+ indieUserTokenRequest.setCode("{your_auth_code}");
+ indieUserTokenRequest.setClientSecret("{your_client_secret}");
+ indieUserTokenRequest.setRedirectUri("{your_redirect_uri}");
+ indieUserTokenRequest.setGrantType(IndieUserTokenRequest.GrantTypeEnum.AUTHORIZATION_CODE);
+
+ try {
+ ExtendedTokenResponse result = apiInstance.initTokenRequestForIndieUser(indieUserTokenRequest, "your_client_id");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling LoginApi->initTokenRequestForIndieUser: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/login/code/get-token.md b/examples/login/code/get-token.md
new file mode 100644
index 0000000..0cab83a
--- /dev/null
+++ b/examples/login/code/get-token.md
@@ -0,0 +1,30 @@
+## Get access token using auth code
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.LoginApi;
+import com.upstox.api.TokenResponse;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ LoginApi apiInstance = new LoginApi(defaultClient);
+
+ String apiVersion = "2.0";
+ String code = "{your_auth_code}";
+ String clientId = "{your_client_id}";
+ String clientSecret = "{your_client_secret}";
+ String redirectUri = "{your_redirect_uri}";
+ String grantType = "authorization_code";
+
+ try {
+ TokenResponse result = apiInstance.token(apiVersion, code, clientId, clientSecret, redirectUri, grantType);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling LoginApi->token: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/login/code/logout.md b/examples/login/code/logout.md
new file mode 100644
index 0000000..666dc6a
--- /dev/null
+++ b/examples/login/code/logout.md
@@ -0,0 +1,29 @@
+## Logout
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.LoginApi;
+import com.upstox.api.LogoutResponse;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ LoginApi apiInstance = new LoginApi(defaultClient);
+ String apiVersion = "2.0";
+
+ try {
+ LogoutResponse result = apiInstance.logout(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling LoginApi->logout: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/margins/README.md b/examples/margins/README.md
new file mode 100644
index 0000000..2645976
--- /dev/null
+++ b/examples/margins/README.md
@@ -0,0 +1,11 @@
+# Margins – Example code
+
+Links to all margin-related examples in the `code/` folder.
+
+## 1. Margin Details
+
+- 1.1 [Get margin details for equity delivery orders](code/margin-details.md#get-margin-details-for-equity-delivery-orders)
+- 1.2 [Get margin details for future delivery orders](code/margin-details.md#get-margin-details-for-future-delivery-orders)
+- 1.3 [Get margin details for option delivery orders](code/margin-details.md#get-margin-details-for-option-delivery-orders)
+- 1.4 [Get margin details for MCX delivery orders](code/margin-details.md#get-margin-details-for-mcx-delivery-orders)
+- 1.5 [Get margin details for currency delivery orders](code/margin-details.md#get-margin-details-for-currency-delivery-orders)
diff --git a/examples/margins/code/margin-details.md b/examples/margins/code/margin-details.md
new file mode 100644
index 0000000..671ef85
--- /dev/null
+++ b/examples/margins/code/margin-details.md
@@ -0,0 +1,179 @@
+## Get margin details for equity delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi api = new ChargeApi();
+ MarginRequest marginRequest = new MarginRequest();
+ Instrument instrument = new Instrument();
+ instrument.setInstrumentKey("NSE_EQ|INE669E01016");
+ instrument.setQuantity(1);
+ instrument.setProduct("D");
+ instrument.setTransactionType("BUY");
+ marginRequest.addInstrumentsItem(instrument);
+ try {
+ PostMarginResponse response = api.postMargin(marginRequest);
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling Margin API " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get margin details for future delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi api = new ChargeApi();
+ MarginRequest marginRequest = new MarginRequest();
+ Instrument instrument = new Instrument();
+ instrument.setInstrumentKey("NSE_FO|35000");
+ instrument.setQuantity(1);
+ instrument.setProduct("D");
+ instrument.setTransactionType("BUY");
+ marginRequest.addInstrumentsItem(instrument);
+ try {
+ PostMarginResponse response = api.postMargin(marginRequest);
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling Margin API " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get margin details for option delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi api = new ChargeApi();
+ MarginRequest marginRequest = new MarginRequest();
+ Instrument instrument = new Instrument();
+ instrument.setInstrumentKey("NSE_FO|54524");
+ instrument.setQuantity(1);
+ instrument.setProduct("D");
+ instrument.setTransactionType("BUY");
+ marginRequest.addInstrumentsItem(instrument);
+ try {
+ PostMarginResponse response = api.postMargin(marginRequest);
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling Margin API " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get margin details for MCX delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi api = new ChargeApi();
+ MarginRequest marginRequest = new MarginRequest();
+ Instrument instrument = new Instrument();
+ instrument.setInstrumentKey("MCX_FO|435356");
+ instrument.setQuantity(1);
+ instrument.setProduct("D");
+ instrument.setTransactionType("BUY");
+ marginRequest.addInstrumentsItem(instrument);
+ try {
+ PostMarginResponse response = api.postMargin(marginRequest);
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling Margin API " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get margin details for currency delivery orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+import com.upstox.auth.*;
+import io.swagger.client.api.ChargeApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ ChargeApi api = new ChargeApi();
+ MarginRequest marginRequest = new MarginRequest();
+ Instrument instrument = new Instrument();
+ instrument.setInstrumentKey("NCD_FO|15758");
+ instrument.setQuantity(1);
+ instrument.setProduct("D");
+ instrument.setTransactionType("BUY");
+ marginRequest.addInstrumentsItem(instrument);
+ try {
+ PostMarginResponse response = api.postMargin(marginRequest);
+ System.out.println(response);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling Margin API " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-information/README.md b/examples/market-information/README.md
new file mode 100644
index 0000000..05cb198
--- /dev/null
+++ b/examples/market-information/README.md
@@ -0,0 +1,16 @@
+# Market Information – Example code
+
+Links to all market-information-related examples in the `code/` folder.
+
+## 1. Exchange Status
+
+- 1.1 [Get market status for a particular exchange](code/exchange-status.md#get-market-status-for-a-particular-exchange)
+
+## 2. Market Timings
+
+- 2.1 [Get market timings of a date](code/market-timings.md#get-market-timings-of-a-date)
+
+## 3. Market Holidays
+
+- 3.1 [Get market holidays for current year](code/market-holidays.md#get-market-holidays-for-current-year)
+- 3.2 [Get market holiday status of a date](code/market-holidays.md#get-market-holiday-status-of-a-date)
diff --git a/examples/market-information/code/exchange-status.md b/examples/market-information/code/exchange-status.md
new file mode 100644
index 0000000..3b11570
--- /dev/null
+++ b/examples/market-information/code/exchange-status.md
@@ -0,0 +1,28 @@
+## Get market status for a particular exchange
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketStatusResponse;
+import com.upstox.auth.OAuth;
+import io.swagger.client.api.MarketHolidaysAndTimingsApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ MarketHolidaysAndTimingsApi apiInstance = new MarketHolidaysAndTimingsApi();
+
+ try {
+ GetMarketStatusResponse result = apiInstance.getMarketStatus("NSE");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling API= " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-information/code/market-holidays.md b/examples/market-information/code/market-holidays.md
new file mode 100644
index 0000000..9465870
--- /dev/null
+++ b/examples/market-information/code/market-holidays.md
@@ -0,0 +1,47 @@
+## Get market holidays for current year
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetHolidayResponse;
+import io.swagger.client.api.MarketHolidaysAndTimingsApi;
+
+public class Main {
+ public static void main(String[] args) {
+ MarketHolidaysAndTimingsApi apiInstance = new MarketHolidaysAndTimingsApi();
+
+ try {
+ GetHolidayResponse result = apiInstance.getHolidays();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling API= " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get market holiday status of a date
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetHolidayResponse;
+import io.swagger.client.api.MarketHolidaysAndTimingsApi;
+
+public class Main {
+ public static void main(String[] args) {
+ MarketHolidaysAndTimingsApi apiInstance = new MarketHolidaysAndTimingsApi();
+
+ try {
+ GetHolidayResponse result = apiInstance.getHoliday("2024-01-22");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling API= " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-information/code/market-timings.md b/examples/market-information/code/market-timings.md
new file mode 100644
index 0000000..4472868
--- /dev/null
+++ b/examples/market-information/code/market-timings.md
@@ -0,0 +1,21 @@
+## Get market timings of a date
+
+```java
+import com.upstox.ApiException;
+import com.upstox.api.GetExchangeTimingResponse;
+import io.swagger.client.api.MarketHolidaysAndTimingsApi;
+
+public class Main {
+ public static void main(String[] args) {
+ MarketHolidaysAndTimingsApi apiInstance = new MarketHolidaysAndTimingsApi();
+
+ try {
+ GetExchangeTimingResponse result = apiInstance.getExchangeTimings("2024-01-22");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling API= " + e.getResponseBody());
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-quote/README.md b/examples/market-quote/README.md
new file mode 100644
index 0000000..6b45cde
--- /dev/null
+++ b/examples/market-quote/README.md
@@ -0,0 +1,33 @@
+# Market Quote – Example code
+
+Links to all market-quote-related examples in the `code/` folder.
+
+## 1. LTP Quotes V3
+
+- 1.1 [Get ltp (last traded price) market quotes](code/ltp-quotes-v3.md#get-ltp-last-traded-price-market-quotes)
+- 1.2 [Get ltp (last traded price) market quotes for multiple instruments keys](code/ltp-quotes-v3.md#get-ltp-last-traded-price-market-quotes-for-multiple-instruments-keys)
+
+## 2. OHLC Quotes V3
+
+- 2.1 [Get ohlc market quotes](code/ohlc-quotes-v3.md#get-ohlc-market-quotes)
+- 2.2 [Get ohlc market quotes for multiple instrument keys](code/ohlc-quotes-v3.md#get-ohlc-market-quotes-for-multiple-instrument-keys)
+
+## 3. Option Greek
+
+- 3.1 [Get Option Greek fields](code/option-greek.md#get-option-greek-fields)
+- 3.2 [Get Option Greek fields for multiple instruments keys](code/option-greek.md#get-option-greek-fields-for-multiple-instruments-keys)
+
+## 4. Full Market Quotes
+
+- 4.1 [Get full market quote](code/full-market-quotes.md#get-full-market-quote)
+- 4.2 [Get full market quote for multiple instrument keys](code/full-market-quotes.md#get-full-market-quote-for-multiple-instrument-keys)
+
+## 5. LTP Quotes
+
+- 5.1 [Get ltp (last traded price) market quotes](code/ltp-quotes.md#get-ltp-last-traded-price-market-quotes)
+- 5.2 [Get ltp (last traded price) market quotes for multiple instruments keys](code/ltp-quotes.md#get-ltp-last-traded-price-market-quotes-for-multiple-instruments-keys)
+
+## 6. OHLC Quotes
+
+- 6.1 [Get ohlc market quotes](code/ohlc-quotes.md#get-ohlc-market-quotes)
+- 6.2 [Get ohlc market quotes for multiple instrument keys](code/ohlc-quotes.md#get-ohlc-market-quotes-for-multiple-instrument-keys)
diff --git a/examples/market-quote/code/full-market-quotes.md b/examples/market-quote/code/full-market-quotes.md
new file mode 100644
index 0000000..2d4d7ef
--- /dev/null
+++ b/examples/market-quote/code/full-market-quotes.md
@@ -0,0 +1,63 @@
+## Get full market quote
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetFullMarketQuoteResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016";
+ String apiVersion = "2.0";
+
+ try {
+ GetFullMarketQuoteResponse result = apiInstance.getFullMarketQuote(symbol, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#getFullMarketQuote");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get full market quote for multiple instrument keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetFullMarketQuoteResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016,NSE_EQ|INE669E01016";
+ String apiVersion = "2.0";
+
+ try {
+ GetFullMarketQuoteResponse result = apiInstance.getFullMarketQuote(symbol, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#getFullMarketQuote");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-quote/code/ltp-quotes-v3.md b/examples/market-quote/code/ltp-quotes-v3.md
new file mode 100644
index 0000000..06dcfd7
--- /dev/null
+++ b/examples/market-quote/code/ltp-quotes-v3.md
@@ -0,0 +1,51 @@
+## Get ltp (last traded price) market quotes
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteLastTradedPriceResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteLastTradedPriceResponse result = apiInstance.getLtp("NSE_EQ|INE848E01016");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getLtp: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Get ltp (last traded price) market quotes for multiple instruments keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteLastTradedPriceResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteLastTradedPriceResponse result = apiInstance.getLtp("NSE_EQ|INE848E01016,NSE_EQ|INE669E01016");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getLtp: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/market-quote/code/ltp-quotes.md b/examples/market-quote/code/ltp-quotes.md
new file mode 100644
index 0000000..ddda7ff
--- /dev/null
+++ b/examples/market-quote/code/ltp-quotes.md
@@ -0,0 +1,63 @@
+## Get ltp (last traded price) market quotes
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteLastTradedPriceResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016";
+ String apiVersion = "2.0";
+
+ try {
+ GetMarketQuoteLastTradedPriceResponse result = apiInstance.ltp(symbol, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#ltp");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get ltp (last traded price) market quotes for multiple instruments keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteLastTradedPriceResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016,NSE_EQ|INE669E01016";
+ String apiVersion = "2.0";
+
+ try {
+ GetMarketQuoteLastTradedPriceResponse result = apiInstance.ltp(symbol, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#ltp");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-quote/code/ohlc-quotes-v3.md b/examples/market-quote/code/ohlc-quotes-v3.md
new file mode 100644
index 0000000..13e51ad
--- /dev/null
+++ b/examples/market-quote/code/ohlc-quotes-v3.md
@@ -0,0 +1,51 @@
+## Get ohlc market quotes
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOHLCResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteOHLCResponse result = apiInstance.getMarketQuoteOHLC("1d", "NSE_EQ|INE669E01016");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getMarketQuoteOHLC: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Get ohlc market quotes for multiple instrument keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOHLCResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteOHLCResponse result = apiInstance.getMarketQuoteOHLC("1d", "NSE_EQ|INE669E01016,NSE_EQ|INE848E01016");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getMarketQuoteOHLC: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/market-quote/code/ohlc-quotes.md b/examples/market-quote/code/ohlc-quotes.md
new file mode 100644
index 0000000..2e7cdc8
--- /dev/null
+++ b/examples/market-quote/code/ohlc-quotes.md
@@ -0,0 +1,65 @@
+## Get ohlc market quotes
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOHLCResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016";
+ String interval = "1d";
+ String apiVersion = "2.0";
+
+ try {
+ GetMarketQuoteOHLCResponse result = apiInstance.getMarketQuoteOHLC(symbol, interval, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#getMarketQuoteOHLC");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get ohlc market quotes for multiple instrument keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOHLCResponse;
+import com.upstox.api.MarketQuoteApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ MarketQuoteApi apiInstance = new MarketQuoteApi();
+ String symbol = "NSE_EQ|INE848E01016,NSE_EQ|INE669E01016";
+ String interval = "1d";
+ String apiVersion = "2.0";
+
+ try {
+ GetMarketQuoteOHLCResponse result = apiInstance.getMarketQuoteOHLC(symbol, interval, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteApi#getMarketQuoteOHLC");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/market-quote/code/option-greek.md b/examples/market-quote/code/option-greek.md
new file mode 100644
index 0000000..4d03785
--- /dev/null
+++ b/examples/market-quote/code/option-greek.md
@@ -0,0 +1,51 @@
+## Get Option Greek fields
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOptionGreekResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteOptionGreekResponse result = apiInstance.getMarketQuoteOptionGreek("NSE_FO|43885");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getMarketQuoteOptionGreek: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Get Option Greek fields for multiple instruments keys
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetMarketQuoteOptionGreekResponse;
+import com.upstox.api.MarketQuoteV3Api;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ MarketQuoteV3Api apiInstance = new MarketQuoteV3Api();
+
+ try {
+ GetMarketQuoteOptionGreekResponse result = apiInstance.getMarketQuoteOptionGreek("NSE_FO|38604,NSE_FO|49210");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling MarketQuoteV3Api->getMarketQuoteOptionGreek: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/option-chain/README.md b/examples/option-chain/README.md
new file mode 100644
index 0000000..6e21abb
--- /dev/null
+++ b/examples/option-chain/README.md
@@ -0,0 +1,12 @@
+# Option Chain – Example code
+
+Links to all option-chain-related examples in the `code/` folder.
+
+## 1. Option Contracts
+
+- 1.1 [Get option contracts of an instrument key](code/option-contracts.md#get-option-contracts-of-an-instrument-key)
+- 1.2 [Get option contracts of an instrument key with expiry date](code/option-contracts.md#get-option-contracts-of-an-instrument-key-with-expiry-date)
+
+## 2. Put/Call Option Chain
+
+- 2.1 [Get put/call option chain](code/put-call-option-chain.md#get-putcall-option-chain)
diff --git a/examples/option-chain/code/option-contracts.md b/examples/option-chain/code/option-contracts.md
new file mode 100644
index 0000000..694dce4
--- /dev/null
+++ b/examples/option-chain/code/option-contracts.md
@@ -0,0 +1,59 @@
+## Get option contracts of an instrument key
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetOptionContractResponse;
+import com.upstox.api.OptionsApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OptionsApi apiInstance = new OptionsApi();
+
+ try {
+ GetOptionContractResponse result = apiInstance.getOptionContracts("NSE_INDEX|Nifty 50", null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OptionsApi#getOptionContracts");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get option contracts of an instrument key with expiry date
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetOptionContractResponse;
+import com.upstox.api.OptionsApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OptionsApi apiInstance = new OptionsApi();
+
+ try {
+ GetOptionContractResponse result = apiInstance.getOptionContracts("NSE_INDEX|Nifty 50", "2024-10-31");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OptionsApi#getOptionContracts");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/option-chain/code/put-call-option-chain.md b/examples/option-chain/code/put-call-option-chain.md
new file mode 100644
index 0000000..b3981a0
--- /dev/null
+++ b/examples/option-chain/code/put-call-option-chain.md
@@ -0,0 +1,29 @@
+## Get put/call option chain
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetPutCallOptionChainResponse;
+import com.upstox.api.OptionsApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OptionsApi apiInstance = new OptionsApi();
+
+ try {
+ GetPutCallOptionChainResponse result = apiInstance.getPutCallOptionChain("NSE_INDEX|Nifty 50", "2024-10-31");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OptionsApi#getPutCallOptionChain");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/README.md b/examples/orders/README.md
new file mode 100644
index 0000000..4020c52
--- /dev/null
+++ b/examples/orders/README.md
@@ -0,0 +1,72 @@
+# Orders – Example code
+
+Links to all order-related examples in the `code/` folder.
+
+## 1. Place Order V3
+
+- 1.1 [Place an order with slicing enabled](code/place-order-v3.md#place-an-order-with-slicing-enabled)
+- 1.2 [Place an order with slicing disabled](code/place-order-v3.md#place-an-order-with-slicing-disabled)
+
+## 2. Place Multi Order
+
+- 2.1 [Place a multi order](code/place-multi-order.md#place-a-multi-order)
+- 2.2 [Place Multiple BUY and SELL Orders](code/place-multi-order.md#place-multiple-buy-and-sell-orders)
+- 2.3 [Place Multiple Orders with Auto Slicing enabled](code/place-multi-order.md#place-multiple-orders-with-auto-slicing-enabled)
+
+## 3. Modify Order V3
+
+- 3.1 [Modify a delivery order](code/modify-order-v3.md#modify-a-delivery-order)
+
+## 4. Cancel Order V3
+
+- 4.1 [Cancel an open order](code/cancel-order-v3.md#cancel-an-open-order)
+
+## 5. Cancel Multi Order
+
+- 5.1 [Cancel all the open orders](code/cancel-multi-order.md#cancel-all-the-open-orders)
+- 5.2 [Cancel all the open orders for a given segment](code/cancel-multi-order.md#cancel-all-the-open-orders-for-a-given-segment)
+- 5.3 [Cancel all the open orders for a given tag](code/cancel-multi-order.md#cancel-all-the-open-orders-for-a-given-tag)
+
+## 6. Exit All Positions
+
+- 6.1 [Exit all the open positions](code/exit-all-positions.md#exit-all-the-open-positions)
+- 6.2 [Exit all the open positions for a given segment](code/exit-all-positions.md#exit-all-the-open-positions-for-a-given-segment)
+- 6.3 [Exit all the open positions for a given tag](code/exit-all-positions.md#exit-all-the-open-positions-for-a-given-tag)
+
+## 7. Get Order Details
+
+- 7.1 [Get order details for an order number](code/get-order-details.md#get-order-details-for-an-order-number)
+
+## 8. Get Order History
+
+- 8.1 [Get order history for an order number](code/get-order-history.md#get-order-history-for-an-order-number)
+
+## 9. Get Order Book
+
+- 9.1 [Get all orders for the day](code/get-order-book.md#get-all-orders-for-the-day)
+
+## 10. Get Trades
+
+- 10.1 [Get all trades for the day](code/get-trades.md#get-all-trades-for-the-day)
+
+## 11. Get Order Trades
+
+- 11.1 [Get trades for an order number](code/get-order-trades.md#get-trades-for-an-order-number)
+
+## 12. Get Historical Trades
+
+- 12.1 [Get trade history for equity segment](code/get-historical-trades.md#get-trade-history-for-equity-segment)
+- 12.2 [Get trade history for futures and options segment](code/get-historical-trades.md#get-trade-history-for-futures-and-options-segment)
+
+## 13. Place Order
+
+- 13.1 [Place a delivery market order](code/place-order.md#place-a-delivery-market-order)
+- 13.2 [Place a delivery limit order](code/place-order.md#place-a-delivery-limit-order)
+
+## 14. Modify Order
+
+- 14.1 [Modify a delivery order](code/modify-order.md#modify-a-delivery-order)
+
+## 15. Cancel Order
+
+- 15.1 [Cancel an open order](code/cancel-order.md#cancel-an-open-order)
diff --git a/examples/orders/code/cancel-multi-order.md b/examples/orders/code/cancel-multi-order.md
new file mode 100644
index 0000000..004c9f8
--- /dev/null
+++ b/examples/orders/code/cancel-multi-order.md
@@ -0,0 +1,86 @@
+## Cancel all the open orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.cancelMultiOrder(null, null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->cancelMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Cancel all the open orders for a given segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.cancelMultiOrder(null, "NSE_FO");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->cancelMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Cancel all the open orders for a given tag
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.cancelMultiOrder("xyz", null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->cancelMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/cancel-order-v3.md b/examples/orders/code/cancel-order-v3.md
new file mode 100644
index 0000000..5262eb7
--- /dev/null
+++ b/examples/orders/code/cancel-order-v3.md
@@ -0,0 +1,25 @@
+## Cancel an open order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApiV3;
+import com.upstox.api.CancelOrderV3Response;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+
+ try {
+ CancelOrderV3Response result = apiInstance.cancelOrder("250128010534339");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApiV3->cancelOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/cancel-order.md b/examples/orders/code/cancel-order.md
new file mode 100644
index 0000000..2e47065
--- /dev/null
+++ b/examples/orders/code/cancel-order.md
@@ -0,0 +1,31 @@
+## Cancel an open order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.CancelOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ String orderId = "240108010918222";
+
+ try {
+ CancelOrderResponse result = apiInstance.cancelOrder(orderId, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#cancelOrder");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/exit-all-positions.md b/examples/orders/code/exit-all-positions.md
new file mode 100644
index 0000000..7c4cd06
--- /dev/null
+++ b/examples/orders/code/exit-all-positions.md
@@ -0,0 +1,86 @@
+## Exit all the open positions
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.exitPositions(null, null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->exitPositions: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Exit all the open positions for a given segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.exitPositions(null, "NSE_FO");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->exitPositions: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Exit all the open positions for a given tag
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ MultiOrderResponse result = apiInstance.exitPositions("xyz", null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->exitPositions: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-historical-trades.md b/examples/orders/code/get-historical-trades.md
new file mode 100644
index 0000000..75d24d0
--- /dev/null
+++ b/examples/orders/code/get-historical-trades.md
@@ -0,0 +1,67 @@
+## Get trade history for equity segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseMetaDataResponse;
+import com.upstox.api.PostTradeApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PostTradeApi apiInstance = new PostTradeApi();
+ String segment = "EQ";
+ String startDate = "02-04-2023";
+ String endDate = "20-03-2024";
+ String apiVersion = "2.0";
+
+ try {
+ GetTradeWiseMetaDataResponse result = apiInstance.getTradesByDateRange(segment, startDate, endDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PostTradeApi#getTradesByDateRange");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get trade history for futures and options segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseMetaDataResponse;
+import com.upstox.api.PostTradeApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PostTradeApi apiInstance = new PostTradeApi();
+ String segment = "FO";
+ String startDate = "02-04-2023";
+ String endDate = "20-03-2024";
+ String apiVersion = "2.0";
+
+ try {
+ GetTradeWiseMetaDataResponse result = apiInstance.getTradesByDateRange(segment, startDate, endDate, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PostTradeApi#getTradesByDateRange");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-order-book.md b/examples/orders/code/get-order-book.md
new file mode 100644
index 0000000..b39a4b6
--- /dev/null
+++ b/examples/orders/code/get-order-book.md
@@ -0,0 +1,30 @@
+## Get all orders for the day
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetOrderBookResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetOrderBookResponse result = apiInstance.getOrderBook(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#getOrderBook");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-order-details.md b/examples/orders/code/get-order-details.md
new file mode 100644
index 0000000..ecec568
--- /dev/null
+++ b/examples/orders/code/get-order-details.md
@@ -0,0 +1,28 @@
+## Get order details for an order number
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetOrderDetailsResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+
+ try {
+ GetOrderDetailsResponse result = apiInstance.getOrderStatus("241017010620466");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->getOrderStatus: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-order-history.md b/examples/orders/code/get-order-history.md
new file mode 100644
index 0000000..e1065b1
--- /dev/null
+++ b/examples/orders/code/get-order-history.md
@@ -0,0 +1,32 @@
+## Get order history for an order number
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ String orderId = "240108010918222";
+ String tag = null;
+
+ try {
+ GetOrderResponse result = apiInstance.getOrderDetails(apiVersion, orderId, tag);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#getOrderDetails");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-order-trades.md b/examples/orders/code/get-order-trades.md
new file mode 100644
index 0000000..052f9eb
--- /dev/null
+++ b/examples/orders/code/get-order-trades.md
@@ -0,0 +1,31 @@
+## Get trades for an order number
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ String orderId = "240108010918222";
+
+ try {
+ GetTradeResponse result = apiInstance.getTradesByOrder(orderId, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#getTradesByOrder");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/get-trades.md b/examples/orders/code/get-trades.md
new file mode 100644
index 0000000..21a391d
--- /dev/null
+++ b/examples/orders/code/get-trades.md
@@ -0,0 +1,30 @@
+## Get all trades for the day
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetTradeResponse result = apiInstance.getTradeHistory(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#getTradeHistory");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/modify-order-v3.md b/examples/orders/code/modify-order-v3.md
new file mode 100644
index 0000000..6aede3e
--- /dev/null
+++ b/examples/orders/code/modify-order-v3.md
@@ -0,0 +1,34 @@
+## Modify a delivery order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApiV3;
+import com.upstox.api.ModifyOrderRequest;
+import com.upstox.api.ModifyOrderV3Response;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ ModifyOrderRequest modifyOrderRequest1 = new ModifyOrderRequest();
+ modifyOrderRequest1.setQuantity(2);
+ modifyOrderRequest1.setValidity(ModifyOrderRequest.ValidityEnum.DAY);
+ modifyOrderRequest1.setPrice(9F);
+ modifyOrderRequest1.setDisclosedQuantity(0);
+ modifyOrderRequest1.setTriggerPrice(0F);
+ modifyOrderRequest1.setOrderType(ModifyOrderRequest.OrderTypeEnum.LIMIT);
+ modifyOrderRequest1.setOrderId("250128010532402");
+
+ try {
+ ModifyOrderV3Response result = apiInstance.modifyOrder(modifyOrderRequest1);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApiV3->modifyOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/modify-order.md b/examples/orders/code/modify-order.md
new file mode 100644
index 0000000..c517567
--- /dev/null
+++ b/examples/orders/code/modify-order.md
@@ -0,0 +1,39 @@
+## Modify a delivery order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.ModifyOrderRequest;
+import com.upstox.api.ModifyOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ ModifyOrderRequest body = new ModifyOrderRequest();
+ body.setQuantity(2);
+ body.setValidity(ModifyOrderRequest.ValidityEnum.DAY);
+ body.setPrice(16.8F);
+ body.setOrderId("240108010918222");
+ body.setOrderType(ModifyOrderRequest.OrderTypeEnum.LIMIT);
+ body.setDisclosedQuantity(0);
+ body.setTriggerPrice(16.9F);
+
+ try {
+ ModifyOrderResponse result = apiInstance.modifyOrder(body, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#modifyOrder");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/orders/code/place-multi-order.md b/examples/orders/code/place-multi-order.md
new file mode 100644
index 0000000..566721e
--- /dev/null
+++ b/examples/orders/code/place-multi-order.md
@@ -0,0 +1,149 @@
+## Place a multi order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderData;
+import com.upstox.api.MultiOrderRequest;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+import java.util.Arrays;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ MultiOrderRequest multiOrderRequest = new MultiOrderRequest();
+ MultiOrderData order = new MultiOrderData();
+ order.setQuantity(1);
+ order.setProduct(MultiOrderData.ProductEnum.D);
+ order.setValidity(MultiOrderData.ValidityEnum.DAY);
+ order.setPrice(0F);
+ order.setInstrumentToken("NSE_EQ|INE848E01016");
+ order.setOrderType(MultiOrderData.OrderTypeEnum.MARKET);
+ order.setTransactionType(MultiOrderData.TransactionTypeEnum.BUY);
+ order.setDisclosedQuantity(0);
+ order.setTriggerPrice(0F);
+ order.setIsAmo(false);
+ multiOrderRequest.setOrders(Arrays.asList(order));
+
+ try {
+ MultiOrderResponse result = apiInstance.placeMultiOrder(multiOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->placeMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Place Multiple BUY and SELL Orders
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderData;
+import com.upstox.api.MultiOrderRequest;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+import java.util.Arrays;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ MultiOrderRequest multiOrderRequest = new MultiOrderRequest();
+
+ MultiOrderData buyOrder = new MultiOrderData();
+ buyOrder.setQuantity(1);
+ buyOrder.setProduct(MultiOrderData.ProductEnum.D);
+ buyOrder.setValidity(MultiOrderData.ValidityEnum.DAY);
+ buyOrder.setPrice(0F);
+ buyOrder.setInstrumentToken("NSE_EQ|INE848E01016");
+ buyOrder.setOrderType(MultiOrderData.OrderTypeEnum.MARKET);
+ buyOrder.setTransactionType(MultiOrderData.TransactionTypeEnum.BUY);
+ buyOrder.setDisclosedQuantity(0);
+ buyOrder.setTriggerPrice(0F);
+ buyOrder.setIsAmo(false);
+
+ MultiOrderData sellOrder = new MultiOrderData();
+ sellOrder.setQuantity(1);
+ sellOrder.setProduct(MultiOrderData.ProductEnum.D);
+ sellOrder.setValidity(MultiOrderData.ValidityEnum.DAY);
+ sellOrder.setPrice(0F);
+ sellOrder.setInstrumentToken("NSE_EQ|INE669E01016");
+ sellOrder.setOrderType(MultiOrderData.OrderTypeEnum.MARKET);
+ sellOrder.setTransactionType(MultiOrderData.TransactionTypeEnum.SELL);
+ sellOrder.setDisclosedQuantity(0);
+ sellOrder.setTriggerPrice(0F);
+ sellOrder.setIsAmo(false);
+
+ multiOrderRequest.setOrders(Arrays.asList(buyOrder, sellOrder));
+
+ try {
+ MultiOrderResponse result = apiInstance.placeMultiOrder(multiOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->placeMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Place Multiple Orders with Auto Slicing enabled
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.MultiOrderData;
+import com.upstox.api.MultiOrderRequest;
+import com.upstox.api.MultiOrderResponse;
+import com.upstox.api.OrderApi;
+import com.upstox.auth.*;
+import java.util.Arrays;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ MultiOrderRequest multiOrderRequest = new MultiOrderRequest();
+ MultiOrderData order = new MultiOrderData();
+ order.setQuantity(1);
+ order.setProduct(MultiOrderData.ProductEnum.D);
+ order.setValidity(MultiOrderData.ValidityEnum.DAY);
+ order.setPrice(0F);
+ order.setInstrumentToken("NSE_EQ|INE848E01016");
+ order.setOrderType(MultiOrderData.OrderTypeEnum.MARKET);
+ order.setTransactionType(MultiOrderData.TransactionTypeEnum.BUY);
+ order.setDisclosedQuantity(0);
+ order.setTriggerPrice(0F);
+ order.setIsAmo(false);
+ order.setSliceOrder(true);
+ multiOrderRequest.setOrders(Arrays.asList(order));
+
+ try {
+ MultiOrderResponse result = apiInstance.placeMultiOrder(multiOrderRequest);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi->placeMultiOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/place-order-v3.md b/examples/orders/code/place-order-v3.md
new file mode 100644
index 0000000..902d86c
--- /dev/null
+++ b/examples/orders/code/place-order-v3.md
@@ -0,0 +1,77 @@
+## Place an order with slicing enabled
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApiV3;
+import com.upstox.api.PlaceOrderV3Request;
+import com.upstox.api.PlaceOrderV3Response;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ PlaceOrderV3Request body = new PlaceOrderV3Request();
+ body.setQuantity(1);
+ body.setProduct(PlaceOrderV3Request.ProductEnum.D);
+ body.setValidity(PlaceOrderV3Request.ValidityEnum.DAY);
+ body.setPrice(0F);
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setOrderType(PlaceOrderV3Request.OrderTypeEnum.MARKET);
+ body.setTransactionType(PlaceOrderV3Request.TransactionTypeEnum.BUY);
+ body.setDisclosedQuantity(0);
+ body.setTriggerPrice(0F);
+ body.setIsAmo(false);
+ body.setSliceOrder(true);
+
+ try {
+ PlaceOrderV3Response result = apiInstance.placeOrder(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApiV3->placeOrder: " + e.getMessage());
+ }
+ }
+}
+```
+
+## Place an order with slicing disabled
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApiV3;
+import com.upstox.api.PlaceOrderV3Request;
+import com.upstox.api.PlaceOrderV3Response;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ OrderApiV3 apiInstance = new OrderApiV3();
+ PlaceOrderV3Request body = new PlaceOrderV3Request();
+ body.setQuantity(1);
+ body.setProduct(PlaceOrderV3Request.ProductEnum.D);
+ body.setValidity(PlaceOrderV3Request.ValidityEnum.DAY);
+ body.setPrice(0F);
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setOrderType(PlaceOrderV3Request.OrderTypeEnum.MARKET);
+ body.setTransactionType(PlaceOrderV3Request.TransactionTypeEnum.BUY);
+ body.setDisclosedQuantity(0);
+ body.setTriggerPrice(0F);
+ body.setIsAmo(false);
+ body.setSliceOrder(false);
+
+ try {
+ PlaceOrderV3Response result = apiInstance.placeOrder(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApiV3->placeOrder: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/orders/code/place-order.md b/examples/orders/code/place-order.md
new file mode 100644
index 0000000..9d7f736
--- /dev/null
+++ b/examples/orders/code/place-order.md
@@ -0,0 +1,87 @@
+## Place a delivery market order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApi;
+import com.upstox.api.PlaceOrderRequest;
+import com.upstox.api.PlaceOrderResponse;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ PlaceOrderRequest body = new PlaceOrderRequest();
+ body.setQuantity(1);
+ body.setProduct(PlaceOrderRequest.ProductEnum.D);
+ body.setValidity(PlaceOrderRequest.ValidityEnum.DAY);
+ body.setPrice(0F);
+ body.setTag("string");
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setOrderType(PlaceOrderRequest.OrderTypeEnum.MARKET);
+ body.setTransactionType(PlaceOrderRequest.TransactionTypeEnum.BUY);
+ body.setDisclosedQuantity(0);
+ body.setTriggerPrice(0F);
+ body.setIsAmo(false);
+
+ try {
+ PlaceOrderResponse result = apiInstance.placeOrder(body, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#placeOrder");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Place a delivery limit order
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.OrderApi;
+import com.upstox.api.PlaceOrderRequest;
+import com.upstox.api.PlaceOrderResponse;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ OrderApi apiInstance = new OrderApi();
+ String apiVersion = "2.0";
+ PlaceOrderRequest body = new PlaceOrderRequest();
+ body.setQuantity(1);
+ body.setProduct(PlaceOrderRequest.ProductEnum.D);
+ body.setValidity(PlaceOrderRequest.ValidityEnum.DAY);
+ body.setPrice(16.8F);
+ body.setTag("string");
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setOrderType(PlaceOrderRequest.OrderTypeEnum.LIMIT);
+ body.setTransactionType(PlaceOrderRequest.TransactionTypeEnum.BUY);
+ body.setDisclosedQuantity(0);
+ body.setTriggerPrice(0F);
+ body.setIsAmo(false);
+
+ try {
+ PlaceOrderResponse result = apiInstance.placeOrder(body, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OrderApi#placeOrder");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/portfolio/README.md b/examples/portfolio/README.md
new file mode 100644
index 0000000..0c8a2e8
--- /dev/null
+++ b/examples/portfolio/README.md
@@ -0,0 +1,20 @@
+# Portfolio – Example code
+
+Links to all portfolio-related examples in the `code/` folder.
+
+## 1. Get Positions
+
+- 1.1 [Get user positions](code/get-positions.md#get-user-positions)
+
+## 2. Get Holdings
+
+- 2.1 [Get user holdings](code/get-holdings.md#get-user-holdings)
+
+## 3. Get MTF Positions
+
+- 3.1 [Get user MTF positions](code/get-mtf-positions.md#get-user-mtf-positions)
+
+## 4. Convert Positions
+
+- 4.1 [Convert a position from intraday to delivery](code/convert-positions.md#convert-a-position-from-intraday-to-delivery)
+- 4.2 [Convert a position from delivery to intraday](code/convert-positions.md#convert-a-position-from-delivery-to-intraday)
diff --git a/examples/portfolio/code/convert-positions.md b/examples/portfolio/code/convert-positions.md
new file mode 100644
index 0000000..4fb8c9f
--- /dev/null
+++ b/examples/portfolio/code/convert-positions.md
@@ -0,0 +1,75 @@
+## Convert a position from intraday to delivery
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.ConvertPositionRequest;
+import com.upstox.api.ConvertPositionResponse;
+import com.upstox.api.PortfolioApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PortfolioApi apiInstance = new PortfolioApi();
+ String apiVersion = "2.0";
+ ConvertPositionRequest body = new ConvertPositionRequest();
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setNewProduct(ConvertPositionRequest.NewProductEnum.D);
+ body.setOldProduct(ConvertPositionRequest.OldProductEnum.I);
+ body.setTransactionType(ConvertPositionRequest.TransactionTypeEnum.BUY);
+ body.setQuantity(1);
+
+ try {
+ ConvertPositionResponse result = apiInstance.convertPositions(body, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PortfolioApi#convertPositions");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Convert a position from delivery to intraday
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.ConvertPositionRequest;
+import com.upstox.api.ConvertPositionResponse;
+import com.upstox.api.PortfolioApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PortfolioApi apiInstance = new PortfolioApi();
+ String apiVersion = "2.0";
+ ConvertPositionRequest body = new ConvertPositionRequest();
+ body.setInstrumentToken("NSE_EQ|INE848E01016");
+ body.setNewProduct(ConvertPositionRequest.NewProductEnum.I);
+ body.setOldProduct(ConvertPositionRequest.OldProductEnum.D);
+ body.setTransactionType(ConvertPositionRequest.TransactionTypeEnum.BUY);
+ body.setQuantity(1);
+
+ try {
+ ConvertPositionResponse result = apiInstance.convertPositions(body, apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PortfolioApi#convertPositions");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/portfolio/code/get-holdings.md b/examples/portfolio/code/get-holdings.md
new file mode 100644
index 0000000..3dfbde7
--- /dev/null
+++ b/examples/portfolio/code/get-holdings.md
@@ -0,0 +1,30 @@
+## Get user holdings
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetHoldingsResponse;
+import com.upstox.api.PortfolioApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PortfolioApi apiInstance = new PortfolioApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetHoldingsResponse result = apiInstance.getHoldings(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PortfolioApi#getHoldings");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/portfolio/code/get-mtf-positions.md b/examples/portfolio/code/get-mtf-positions.md
new file mode 100644
index 0000000..951166c
--- /dev/null
+++ b/examples/portfolio/code/get-mtf-positions.md
@@ -0,0 +1,23 @@
+## Get user MTF positions
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setAccessToken("{your_access_token}");
+
+ PortfolioApi portfolioApi = new PortfolioApi();
+ try {
+ GetPositionResponse result = portfolioApi.getMtfPositions();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PortfolioApi->getMtfPositions: " + e.getMessage());
+ }
+ }
+}
+```
diff --git a/examples/portfolio/code/get-positions.md b/examples/portfolio/code/get-positions.md
new file mode 100644
index 0000000..7e48d0b
--- /dev/null
+++ b/examples/portfolio/code/get-positions.md
@@ -0,0 +1,30 @@
+## Get user positions
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetPositionResponse;
+import com.upstox.api.PortfolioApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ PortfolioApi apiInstance = new PortfolioApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetPositionResponse result = apiInstance.getPositions(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling PortfolioApi#getPositions");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/trade-profit-and-loss/README.md b/examples/trade-profit-and-loss/README.md
new file mode 100644
index 0000000..fb99a5d
--- /dev/null
+++ b/examples/trade-profit-and-loss/README.md
@@ -0,0 +1,18 @@
+# Trade Profit and Loss – Example code
+
+Links to all trade-profit-and-loss-related examples in the `code/` folder.
+
+## 1. Get Profit Loss Report
+
+- 1.1 [Get profit loss report for equity segment](code/get-profit-loss-report.md#get-profit-loss-report-for-equity-segment)
+- 1.2 [Get profit loss report for futures and options segment](code/get-profit-loss-report.md#get-profit-loss-report-for-futures-and-options-segment)
+
+## 2. Get Report Meta Data
+
+- 2.1 [Get report meta data for equity segment](code/get-report-meta-data.md#get-report-meta-data-for-equity-segment)
+- 2.2 [Get report meta data for futures and options segment](code/get-report-meta-data.md#get-report-meta-data-for-futures-and-options-segment)
+
+## 3. Get Trade Charges
+
+- 3.1 [Get trade charges for equity segment](code/get-trade-charges.md#get-trade-charges-for-equity-segment)
+- 3.2 [Get trade charges for futures and options segment](code/get-trade-charges.md#get-trade-charges-for-futures-and-options-segment)
diff --git a/examples/trade-profit-and-loss/code/get-profit-loss-report.md b/examples/trade-profit-and-loss/code/get-profit-loss-report.md
new file mode 100644
index 0000000..4b75715
--- /dev/null
+++ b/examples/trade-profit-and-loss/code/get-profit-loss-report.md
@@ -0,0 +1,69 @@
+## Get profit loss report for equity segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseProfitAndLossDataResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "EQ";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ Integer pageNumber = 1;
+ Integer pageSize = 5;
+ try {
+ GetTradeWiseProfitAndLossDataResponse result = apiInstance.getTradeWiseProfitAndLossData(segment, financialYear, pageNumber, pageSize, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getTradeWiseProfitAndLossData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get profit loss report for futures and options segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseProfitAndLossDataResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "FO";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ Integer pageNumber = 1;
+ Integer pageSize = 5;
+ try {
+ GetTradeWiseProfitAndLossDataResponse result = apiInstance.getTradeWiseProfitAndLossData(segment, financialYear, pageNumber, pageSize, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getTradeWiseProfitAndLossData");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/trade-profit-and-loss/code/get-report-meta-data.md b/examples/trade-profit-and-loss/code/get-report-meta-data.md
new file mode 100644
index 0000000..102ae88
--- /dev/null
+++ b/examples/trade-profit-and-loss/code/get-report-meta-data.md
@@ -0,0 +1,63 @@
+## Get report meta data for equity segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "EQ";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ try {
+ GetTradeWiseProfitAndLossMetaDataResponse result = apiInstance.getTradeWiseProfitAndLossMetaData(segment, financialYear, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getTradeWiseProfitAndLossMetaData");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get report meta data for futures and options segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "FO";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ try {
+ GetTradeWiseProfitAndLossMetaDataResponse result = apiInstance.getTradeWiseProfitAndLossMetaData(segment, financialYear, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getTradeWiseProfitAndLossMetaData");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/trade-profit-and-loss/code/get-trade-charges.md b/examples/trade-profit-and-loss/code/get-trade-charges.md
new file mode 100644
index 0000000..b486577
--- /dev/null
+++ b/examples/trade-profit-and-loss/code/get-trade-charges.md
@@ -0,0 +1,67 @@
+## Get trade charges for equity segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetProfitAndLossChargesResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossDataResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "EQ";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ try {
+ GetProfitAndLossChargesResponse result = apiInstance.getProfitAndLossCharges(segment, financialYear, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getProfitAndLossCharges");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get trade charges for futures and options segment
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetProfitAndLossChargesResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossDataResponse;
+import com.upstox.api.GetTradeWiseProfitAndLossMetaDataResponse;
+import com.upstox.auth.*;
+import io.swagger.client.api.TradeProfitAndLossApi;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+ TradeProfitAndLossApi apiInstance = new TradeProfitAndLossApi();
+ String segment = "FO";
+ String financialYear = "2324";
+ String apiVersion = "2.0";
+ String fromDate = "02-04-2023";
+ String toDate = "20-03-2024";
+ try {
+ GetProfitAndLossChargesResponse result = apiInstance.getProfitAndLossCharges(segment, financialYear, apiVersion, fromDate, toDate);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradeProfitAndLossApi#getProfitAndLossCharges");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/user/README.md b/examples/user/README.md
new file mode 100644
index 0000000..0809faf
--- /dev/null
+++ b/examples/user/README.md
@@ -0,0 +1,13 @@
+# User – Example code
+
+Links to all user-related examples in the `code/` folder.
+
+## 1. Get Profile
+
+- 1.1 [Get user profile information using access token](code/get-profile.md#get-user-profile-information-using-access-token)
+
+## 2. Get Fund and Margin
+
+- 2.1 [Get equity and commodity funds](code/get-fund-and-margin.md#get-equity-and-commodity-funds)
+- 2.2 [Get equity funds](code/get-fund-and-margin.md#get-equity-funds)
+- 2.3 [Get commodity funds](code/get-fund-and-margin.md#get-commodity-funds)
diff --git a/examples/user/code/get-fund-and-margin.md b/examples/user/code/get-fund-and-margin.md
new file mode 100644
index 0000000..43bfb8c
--- /dev/null
+++ b/examples/user/code/get-fund-and-margin.md
@@ -0,0 +1,94 @@
+## Get equity and commodity funds
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetUserFundMarginResponse;
+import com.upstox.api.UserApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ UserApi apiInstance = new UserApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetUserFundMarginResponse result = apiInstance.getUserFundMargin(apiVersion, null);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling UserApi#getUserFundMargin");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get equity funds
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetUserFundMarginResponse;
+import com.upstox.api.UserApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ UserApi apiInstance = new UserApi();
+ String apiVersion = "2.0";
+ String segment = "SEC";
+
+ try {
+ GetUserFundMarginResponse result = apiInstance.getUserFundMargin(apiVersion, segment);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling UserApi#getUserFundMargin");
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+## Get commodity funds
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetUserFundMarginResponse;
+import com.upstox.api.UserApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ UserApi apiInstance = new UserApi();
+ String apiVersion = "2.0";
+ String segment = "COM";
+
+ try {
+ GetUserFundMarginResponse result = apiInstance.getUserFundMargin(apiVersion, segment);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling UserApi#getUserFundMargin");
+ e.printStackTrace();
+ }
+ }
+}
+```
diff --git a/examples/user/code/get-profile.md b/examples/user/code/get-profile.md
new file mode 100644
index 0000000..6afd318
--- /dev/null
+++ b/examples/user/code/get-profile.md
@@ -0,0 +1,30 @@
+## Get user profile information using access token
+
+```java
+import com.upstox.ApiClient;
+import com.upstox.ApiException;
+import com.upstox.Configuration;
+import com.upstox.api.GetProfileResponse;
+import com.upstox.api.UserApi;
+import com.upstox.auth.*;
+
+public class Main {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+ OAuth OAUTH2 = (OAuth) defaultClient.getAuthentication("OAUTH2");
+ OAUTH2.setAccessToken("{your_access_token}");
+
+ UserApi apiInstance = new UserApi();
+ String apiVersion = "2.0";
+
+ try {
+ GetProfileResponse result = apiInstance.getProfile(apiVersion);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling UserApi#getProfile");
+ e.printStackTrace();
+ }
+ }
+}
+```