Track GST Return API
 
API Method: GET
 
URL For Production : https://gstapi.charteredinfo.com/commonapi/v1.0/Returns
URL For Sandbox : https://gstsandbox.charteredinfo.com/commonapi/v1.0/Returns
 
 
Headers Parameters
 
| 
 Property 
 | 
 Description  
 | 
 Data Type  
 | 
| 
 aspid 
 | 
 AspUserId provided by GSP. 
 | 
 String  
 | 
| 
 asp-secret 
 | 
Encrypt AspPassword (Asp Secret Key) provided by GSP for pass through API access, Encrypted using AspEK (received in GetKey API) 
Sample:  
request.AddHeader("asp-secret", AesEncryptBase64(“Asp Secret Key”,AspEK))  [Algorithm: AES/ECB/PKCS7] 
 | 
 String 
 | 
| 
 session-id 
 | 
 SessionID.  ASP may create multiple Sessions. 
 | 
 string 
 | 
| 
 txn 
 | 
 Unique Transaction ID even if calling GSP Service API. (Requires only once, which you are already passing as requirement for GST API.) 
 | 
 string 
 | 
| 
 appver 
 | 
 Application Name and Version calling API. (Optional but Recommended) 
 | 
 string 
 | 
| 
 Content-Type 
 | 
 application/json; charset=utf-8 
 | 
 string 
 | 
| 
 ip-usr 
 | 
 123.123.123.123 
 | 
 string 
 | 
 
 
Query Parameters
| 
 Property 
 | 
 Description  
 | 
 Data Type  
 | 
| 
 action 
 | 
 "RETTRACK" 
 | 
 String  
 | 
| 
 gstin 
 | 
 GSTIN of TaxPayer to Search for. 
 | 
 String 
 | 
| 
 fy 
 | 
 Financial Year (YYYY-YY) 
 | 
 String 
 | 
| 
 type (Optional) 
 | 
 R1 or R2, etc 
 | 
 String 
 | 
 
 
Sample for URL Based API:
https://gstapi.charteredinfo.com/commonapi/v1.0/returns?Action=RETTRACK&Gstin=GSTINOfTaxPayerToSearch&fy=2017-18
Header Parameter: 
request.AddHeader("asp-secret", AesEncryptBase64(“Asp Secret Key”,AspEK))  [Algorithm: AES/ECB/PKCS7]
request.AddHeader("session-id", “session_id Received in GetKey API Response”);
request.AddHeader("aspid", "ASPID");
request.AddHeader("txn", "Unique Transaction ID");
request.AddHeader("Content-Type", "application/json; charset=utf-8");
 
Method in TaxProGST.API Lib:
public async static Task<TxnRespWithObj<EFiledReturn>> ViewAndTrackAllReturnAsync(APISession ApiSession, string FinancialYear, bool LogResponseJson = false)
 
//================================================
//AES Encrypt Payload - Payload  (Sample C# Code)  
//================================================
public static string AesEncryptBase64(string payLoad, string key)
        {
            using(AesManaged AesM = new AesManaged())
            {
                AesM.Key = Convert.FromBase64String(key);    
                AesM.Mode = CipherMode.ECB;
                AesM.Padding = PaddingMode.PKCS7;
                byte[] bytPayload = Convert.FromBase64String(payLoad);
                ICryptoTransform crypt = AesM.CreateEncryptor();
                return Convert.ToBase64String(crypt.TransformFinalBlock(bytPayload, 0, bytPayload.Length));
            }
        }