API documentation

eosMate comes up with a mobile-friendly JSON REST API for communicating with the client apps

Knowledgebase

eosMate API is used to interact with client apps.

For security reasons, it is necessary to create an account first. All API endpoints are authenticated with the Bearer token that is generated for you after the signup. If you forget the token it can be retrieved via the Token Request endpoint.

When a client adds an account to the eosMate app it is automatically subscribed for receieving notifications about sent transaction requests. No need to say, that transactions can be signed only after the user has added the private key for the account in the app. Client app lists all receieved transaction requests and user can sign the requested transaction or delete it.

Transaction requests are very generic. For better app UX please specify the type of the transaction viz Transaction Request. Smart contract function parameters are being passed within the JSON as a string that is how they are then also signed and broadcasted on the blockchain.

If some account will spam clients with too many transaction requests it will be baned.

All requests are accepted only via https protocol.

The API is still under development if you have a feature request or found a bug please contact us directly.

BASE API URL: https://eosmate.io/api/v1/

Sign Up

First, create your account for interacting with the API.

POST: eosmate.io/api/v1/sign-up

JSON Parameters

Parameter Type Position Description
firstName string Body Accounts first name
lastName string Body Accounts last name
password string Body Password used for the account
email string Body Email address that will be used as accounts ID
website string Body Email of the account, can be left blank if account does not have a website
companyName string Body If the account belongs to a company please provide company name

JSON Example

JSON Response

The response is a BEARER token that is later used to authenticate requests

Token request

Get your token if you have forgotten it

POST: eosmate.io/api/v1/token

JSON Parameters

Parameter Type Position Description
password string Body Password used for the account
email string Body Email address that will be used as accounts ID

JSON Example

JSON Response

The response is a BEARER token that is later used to authenticate requests

Send Transaction

Send a transaction request to a client

POST: eosmate.io/api/v1/transaction

JSON Parameters

Parameter Type Position Description
Authorization string Headers Bearer token is used to authenticate the request
accountName string Body Account that is required to sign the transaction
tableName string Body Name of the table on EOS blockchain
action string Body Action that is going to be performed on the targeting smart contract
transactionName string Body User displayed value for this transaction request
type string Body Currently supported types are tokens, ram, stake, custom. For better UX provide a transaction request type if it is a custom developed contract specify it with custom
parameters string Body A base64 encoded string representation of the action parameters on the smart contract. Parametrs showacase is in example below however, it needs to be encoded with base64 for real use.

JSON Example

JSON Response

Get transactions list

Get all pending transactions for an account

GET: eosmate.io/api/v1/transactions

JSON Parameters

Parameter Type Position Description
accountName string Query Account that is required to sign the transaction

JSON Example

GET: eosmate.io/api/v1/transactions?accountName=achievemeapp

JSON Response

Delete transaction

Delete a transaction that was sent to a user to be signed

DELETE: eosmate.io/api/v1/transaction

JSON Parameters

Authorization string Headers Bearer token is used to authenticate the request
accountName string Body Account that is required to sign the transaction
tableName string Body Name of the table on EOS blockchain
action string Body Action that is going to be performed on the targeting smart contract
transactionName string Body User displayed value for this transaction request
type string Body Currently supported types are tokens, ram, stake, custom. For better UX provide a transaction request type if it is a custom developed contract specify it with custom
parameters string Body A string representation of the action parameters on the smart contract
accountName string Query Account that is required to sign the transaction

Response

200 OK