Previous versions (not supported)
Last updated
Was this helpful?
Last updated
Was this helpful?
Out of date, not supported
Now most of the TEOS API functionality is available with TEOS API key. Swagger clearly states which endpoints can't be called using TEOS API key.
The list of the endpoints which still can be called only with user token are:
GET /odata/v0.8/Assets/My
GET /odata/v0.8/Balances/My
GET /odata/v0.8/Transactions/My
GET /odata/v0.8/Wallets/My
DELETE /odata/v0.8/Users({key})
POST /odata/v0.8/Wallets/InitWalletRegistration
In order to introduce the support of api key for following changes were done:
when transaction is posted, the SigningParameters are returned
an endpoint to get SigningParamters is introduced: GET /odata/v0.8/Transactions({key})/GetSigningParameters
check for the address ownership is removed for all endpoints except for the ones mentioned in the list of calling with user token
an endpoint to submit a signed transaction: POST /odata/v0.8/Transactions/{key}/Submit
New endpoint is added to add the wallet to TEOS to have the possibility to use it afterwards POST /odata/v0.8/Wallets
New endpoint is added to retrieve transactions with TEOS API key. Don't forget to use odata technology to filter the list according to your business case needs GET /odata/v0.8/Transactions
We created methods which have the logic for filtering corresponding data by user (they end with .../My), thus they can be used with user token only
GET /odata/v0.8/Assets/My
GET /odata/v0.8/Balances/My
GET /odata/v0.8/Transactions/My
GET /odata/v0.8/Wallets/My
Asset object was changed:
section "Translations" was added. Now asset data can be retrieved with translations. Don't forget to use odata technology to filter the list of languages when retrieving asset data according to your business case
new parameter "createdInTeosOn" was introduced - date of asset creation in TEOS, defined when asset is created in TEOS and never changes afterwards
The type of the property TypeId is changed from int to enum TransactionType
Following properties are removed:
The transaction metadata has now property UniqueAssetId when it is created in TEOS API
GET /odata/v0.8/Balances/GetAssetsBalances(addresses={addresses},uniqueAssetIds={uniqueAssetIds}) was added to get array of addresses and uniqueAssetIds as request parameters
Breaking changes:
POST /odata/v0.8/Assets: the posted transaction is returned instead of Asset
Asset model was changed: parameter "createdOn" was changed to "createdInBlockchainOn", parameter "updatedOn" was changed to "amendedInBlockchainOn" (check their description above)
Transaction model was changed (check the changes above)
GET /odata/v0.8/Wallets use forced pagination, each page has a maximum size of 50 lines, this is a change relevant for all versions
GET Balances was renamed to GET Balances/My
We eliminated the performance problem with assets retrieval. Now GET /odata/v0.8/Assets and GET /odata/v0.8/Assets/My work faster
Attribute entities and their endpoints are introduced:
Country
Currency
Unit
Language
Asset Class
Asset Detail Class
Search Property
Method to retrieve ETH balances of addresses
Method to retrieve external wallets saved in WLM
All responses with asset data contain uniqueAssetId in hex format, now with leading 0x
Asset entity structure is changed, to reflect referenced attribute entities
CreateUnits, DestroyUnits, TransferUnits methods have "type" parameter as part of the response. Starting from v0.7 value of this parameter is case-sensitive and must start with capital letter, i.e. "type": "Sparks"
Breaking changes:
UniqueAssetId values are now prefixed with "0x"
Asset properties are renamed
Language -> LanguageCode
Jurisdiction -> JurisdictionCode
UnitOfMeasure -> UnitOfMeasureCode
Currency -> CurrencyCode
AssetClass -> AssetClassCode
CreateUnits, DestroyUnits, TransferUnits methods have "type" parameter as part of the response. Starting from v0.7 value of this parameter is case-sensitive and must start with capital letter, i.e. "type": "Sparks"
Teosapi wallets/InitWalletRegistration throws 500 when called with api key
Create invoice
Retrieve invoice details
Cancel invoice
Pay invoice
Link assets updated: check whether asset exists is removed
SparkOperation method getting 500 error for specific addresses
Transfer units - Missleading error message
Incorrect message for Transfer/Destroy units in the Transaction method
GET Methods return incorrect Time or no Timezone
User data deletion from WLM and TEOS API
New endpoint for connecting to RabbitMQ with TLS encryption
Existing RabbitMQ connection endpoints without TLS encryption will be removed when TEOS API v0.4 support is over
OData standard is enforced more in the area of function parameters and custom types
UniqueAssetId, Address and AssetId type constants should be obligatory in single quotes now, e.g. '0x094b3c71f99d3eccc5c3c0001'
Resource path should be composed, using entity key in parenthesis, e.g. /assets('0x094b3c71f99d3eccc5c3c0001')
Deprecated: The asset referencing using "resource/key" style
Retrieve transactions
GET /transactions - transaction retrieval request with filter possibility
Retrieve Spark Operations
POST /sparkoperations/search - initiates a search for spark operations
Balances
GET /balances(Address='xxx',UniqueAssetId='yyy') - return a balance for specific address-asset combination without restriction per tenant/user. xxx - valid address hex representation (case-insensitive, with or without 0x prefix), yyy - valid unique asset id hex representation (case-insensitive)
Warps
POST /warps/search - initiates a warp-search
POST /warps/execute - executes a warp
POST /assets('{key}')/linkasset - links an asset
TEOS Events through RabbitMQ
Link Assets
Assets
POST /assets('{key}')/createunits - creates asset units (sparks)
POST /assets('{key}')/transferunits - transfers sparks between two addresses
POST /assets('{key}')/destroyunits - destroys sparks for an asset
Balances
GET /balances - get balances of all own wallets
Parameter validation and error handling are significantly improved
Unbound action "DocumentDbRecord" now is a bound function on assets entity set
Unbound action "Search" now is a bound function on assets entity set and is a GET function that accepts search parameters
Asset structure is changed
Mandatory 'Data' and optional documentation fields are removed
new mandatory and optional fields are added
Added a possibility to define custom item definitions and their values
This is CoreLedger's first new API, intended to consolidate all existing functionalities and microservices and provide standartized consistent way to use them. Provides MVP functions with limited parametrization possibilities.
Wallets
GET /wallets/{key} - returns specific wallet information
DELETE /wallets/{key} - deletes specific wallet
POST /InitWalletRegistration - initiates signable address creation and linking with tx server provider
Assets
GET /assets/{key} - returns specific asset information
POST /assets (Body: Asset) - creates an asset creation transaction. Asset object in the body describes essential fields, like Name or Issuer. Multiple other document fields are hardcoded in this version of API
GET /DocumentDbRecord/{assetId} - returns asset details in json format
POST /search (Body: AssetSearchInput) - searches for assets using issuer address or asset name and returns list of found assets
Transactions
GET /transactions/{key} - returns specific transaction information
System
GET /version - returns current api version
Signing flow with user token is changed according to the description in
POST /odata/v0.8/Assets: the posted transaction is returned instead of asset
parameter "createdOn" was changed to "createdInBlockchainOn - date of asset creation in blockchain (block date), at first is NULL, defined when asset is created in blockchain and never changes afterwards
parameter "updatedOn" was changed to "amendedInBlockchainOn" - date of asset amendment writing to blockchain, at first is NULL, only if amendment is added and written to blockchain this property is filled
Transaction model is changed
GET /odata/v0.8/Wallets GET /odata/v0.8/Wallets/My these endpoints use forced pagination, each page has a maximum size of 50 lines
GET Balances was renamed to GET Balances/My
Signing flow with user token is changed according to the description in
Asset of type 'currency' (cash and cash equivalent) can be created with currencyCode parameter instead of unitOfMeasureCode. Check the
Invoice state changes events are delivered. More details
Routing keys of all events produced by TEOS API have prefix tenant-id which is taken from
New concept "Invoices" is introduced. Concept description can be found . Functionality introduced:
GET /wallets - returns all signable wallets of the current user or signable wallets of all users, if the token is the
GET /assets - returns all assets of the current user, where one of the current user signable addresses is issuer of an asset. Or it returns assets of all users, if the token is the , by matching user signable addresses to asset issuer.