# GetTransactionInfo()

### Summary <a href="#summary" id="summary"></a>

| Route                       | Type | Example                                                    |
| --------------------------- | ---- | ---------------------------------------------------------- |
| /monitor/gettransactioninfo | POST | <http://176.113.80.7:62000/api/monitor/gettransactioninfo> |

### Description <a href="#description" id="description"></a>

Gets all transaction fields for a particular transaction.

### Request <a href="#request" id="request"></a>

#### Request Structure <a href="#request-structure" id="request-structure"></a>

```json
{

// Parameters common for all requests

// Wallet address

"transactionId": "string_value"

}
```

#### Request Parameters <a href="#request-parameters" id="request-parameters"></a>

string: **transactionId** - Transaction identifier in the form block\_number.transaction\_number

### Response <a href="#response" id="response"></a>

#### Response Structure <a href="#response-structure" id="response-structure"></a>

All transaction attributes

```json
{
    "transactions": [
        {
            "id": "String", // TransactionID
            "fromAccount": "Base58_String", // Publickey of the Sender
            "toAccount": "Base58_String", //Publickey of the Receiver
            "time": "Datetime_String", // Storetime of Transaction in String Value
            "value": "String", // Amount of currency transfered in String Value
            "val": "0", // Amount of currency transfered in String Value
            "fee": "Decimal_String", // Amount Fee it needed for transaction in String Value
            "currency": "String", // Type of currency in String Value
            "innerId": "0", // innerID of a transaction in Integer Value
            "index": "0", //Abbreviated name of the token
            "status": "String" // Shows status of the Transaction in String Value
            "transactionType": "0", "Integer", // Transaction type
            "transactionTypeDescription": "String", // Transaction type decoding
            "blockNum": "String", // The block number in which the transaction took place
            "found": "Bool", 
            "userData": "String", 
            "signature": "String", 
            //Additional fee (list) paid for services called by the transaction
            "extraFee": [ 
    {
      "fee": "string",
      "comment": "string"
    }
  ],
  "bundle": {
    "contract": {
      "forgetNewState": true,
      "execute": {
        "method": "string",
        "params": [
          "string"
        ]
      },
      "deploy": {
        "sourceCode": "string",
        "tokenStandard": 0,
        "hashState": "string"
      }
    },
    "contractInfo": {}
  }
}
```

### Example Code <a href="#example-code" id="example-code"></a>

#### Python <a href="#example-code" id="example-code"></a>

```python
import requests
import json
def gettransactioninfo():
    url =  'http://176.113.80.7:62000/api/monitor/gettransactioninfo'
    headers = {
        'Content-type': 'application/json'
        , 'Accept': 'application/json'
        , 'Content-Encoding': 'utf-8'
        }
    data = {
        "authKey":""
        , "NetworkAlias":"Mainnet"
        , "PublicKey":"QTRbkssQSGLdKs94khX7i858YcBAhjg6wj48F7FTr8H"
        , "transactionId":"22863295.1" 
        }
    answer = requests.post(url, data=json.dumps(data), headers=headers)
    response = answer.json()
    print(response)
gettransactioninfo()
```

#### C++

```cpp
#include <iostream>

#include <cpprest/http_client.h>
#include <cpprest/filestream.h>

using namespace utility;                    // Common utilities like string conversions
using namespace web;                        // Common features like URIs.
using namespace web::http;                  // Common HTTP functionality
using namespace web::http::client;          // HTTP client features
using namespace concurrency::streams;       // Asynchronous streams
using namespace web::json;

int main(int argc, char* argv[])
{
    web::json::value json_v;
    web::json::value json_return;
    json_v[L"authKey"] = web::json::value::string(L"");
    json_v[L"NetworkAlias"] = web::json::value::string(L"Mainnet");
    json_v[L"PublicKey"] = web::json::value::string(L"QTRbkssQSGLdKs94khX7i858YcBAhjg6wj48F7FTr8H");
    json_v[L"transactionId"] = web::json::value::string(L"22863295.11");
    http_client client(U("http://176.113.80.7:62000"));

    client.request(web::http::methods::POST, U("/api/monitor/gettransactioninfo"), json_v)
        .then([](const web::http::http_response& response) {
        return response.extract_json();
    })
        .then([&json_return](const pplx::task<web::json::value>& task) {
        try {
            json_return = task.get();
        }
        catch (const web::http::http_exception& e) {
            std::cout << "error " << e.what() << std::endl;
        }
    })
        .wait();

    std::wcout << json_return.serialize() << std::endl;

    return 0;
}
```

#### C\#

```csharp
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace Program.Getinfo
{
    public class gettransactioninfo
    {
        static readonly HttpClient client = new HttpClient();
        public class body
        {
            public string authKey { get; set; }
            public string networkAlias { get; set; }
            public string PublicKey { get; set; }
            public string transactionId { get; set; }
        }
        public static async Task Main()
        {
            try
            {
                var body = new body
                {
                    authKey = "",
                    networkAlias = "Mainnet",
                    PublicKey = "QTRbkssQSGLdKs94khX7i858YcBAhjg6wj48F7FTr8H",
                    transactionId = "22863295.1"
                };
                var httpContent = new StringContent(JsonConvert.SerializeObject(body),
                    Encoding.UTF8, "application/json");
                var response = await client.PostAsync("http://176.113.80.7:62000/api/monitor/gettransactioninfo",
                    httpContent);
                Console.WriteLine("RESPONSE=" +
                    await response.Content.ReadAsStringAsync());
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
    }
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.swttoken.com/api-reference/rest-api/gettransactioninfo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
