Skip to content
Golang library to interact with the TRTL Services API.
Branch: master
Clone or download
Pull request Compare This branch is even with rashedmyt:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
README.md
ts-api.go

README.md

Go Report Card GoDoc

TRTL Service Golang API Interface

This wrapper allows you to easily interact with the TRTL Services 0.9.0 API to quickly develop applications that interact with the TurtleCoin Network.

Table of Contents

  1. Installation
  2. Intialization
  3. Documentation
    1. Methods

Installation

go get github.com/trtl-services/ts-api-go

Intialization

import (
    "fmt"

    "github.com/trtl-services/ts-api-go"
)

TS := TRTLServices.TSwrapper {
    token: "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoidGVzdCIsImFwcElkIjo0LCJ1c2VySWQiOjYsInBlcm1pc3Npb25zIjpbImFkZHJlc3M6bmV3Il0sImlhdCI6MTUzNjU4NTM2NywiZXhwIjoxNTM5MTc3MzY3LCJhdWQiOiJ0dXJ0bGV3YWxsZXQuaW8iLCJpc3MiOiJUUlRMIFNlcnZpY2VzIiwianRpIjoiMzMifQ.AEHXmvTo8RfNuZ15Y3IGPRhZPaJxFSmOZvVv2YGN9L4We7bXslIPxhMv_n_5cNW8sIgE2Fr-46OTb5H5AFgpjA",
    timeout: 2000
}

Documentation

API documentation is available at https://trtl.services/documentation

Methods

createAddress()

Create a new TRTL addresses

response, err := TS.createAddress()
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getAddress(address)

Get address details by address

response, err := TS.getAddress("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

deleteAddress(address)

Delete a selected TRTL address

response, err := TS.deleteAddress("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getAddresses()

View all addresses.

response, err := TS.getAddresses()
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

scanAddress(address, blockIndex)

Scan an address for transactions between a 100 block range starting from the specified blockIndex.

response, err := TS.scanAddress("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A", 899093)
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getAddressKeys(address)

Get the public and secret spend key of an address.

response, err := TS.getAddressKeys("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

integrateAddress(address, paymentId)

Create an integrated address with an address and payment ID.

response, err := TS.getAddressKeys("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A", "7d89a2d16365a1198c46db5bbe1af03d2b503a06404f39496d1d94a0a46f8804")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getIntegratedAddresses(address)

Get all integrated addresses by address.

response, err := TS.getIntegratedAddresses("TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A", "7d89a2d16365a1198c46db5bbe1af03d2b503a06404f39496d1d94a0a46f8804")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getFee(amount)

Calculate the TRTL Services fee for an amount specified in TRTL with two decimal points.

response, err := TS.getFee(1092.19)
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

createTransfer()

Send a TRTL transaction with an address with the amount specified two decimal points.

response, err := TS.createTransfer(
    "TRTLuxH78akDMCsXycnU5HjJE6zPCgM4KRNNQSboqh1yiTnvxuhNVUL9tK92j9kurSKdXVHFmjSRkaNBxM6Nb3G8eQGL7aj113A", "TRTLuzAzNs1E1RBFhteX56A5353vyHuSJ5AYYQfoN97PNbcMDvwQo4pUWHs7SYpuD9ThvA7AD3r742kwTmWh5o9WFaB9JXH8evP",
    1000.00,
    1.00,
    "",
    "",
)
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getTransfer()

Get a transaction details specified by transaction hash.

response, err := TS.getTransfer("EohMUzR1DELyeQM9RVVwpmn5Y1DP0lh1b1ZpLQrfXQsgtvGHnDdJSG31nX2yESYZ")
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getWallet()

Get wallet container info and health check.

response, err := TS.getWallet()
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

getStatus()

Get the current status of the TRTL Services infrastructure.

response, err := TS.getStatus()
if err != nil {
    fmt.Println(err)
} else {
    fmt.Println(response)
}

License

Copyright (C) 2018 Rashed Mohammed, Fexra, The TurtleCoin Developers

Please see the included LICENSE file for more information.
You can’t perform that action at this time.