/
Bahamas - Release Summary

Bahamas - Release Summary

Action/Endpoint

Details

Tests

Action/Endpoint

Details

Tests

New API Endpoints

 

 

/transfer_fio_address (FIP-1.b)

  • Creates a new account if necessary

  • Updates table: fio.address fionames

    • Updates owner_account to new owner

  • All existing Other Blockchain Public Addresses (OBPA) mappings for the FIO Address are purged.

  • new_owner_fio_public_key is set as the chain_code:FIO, token_code:FIO of the transferred FIO Address

/transfer_locked_tokens (FIP-6)

  • Creates a new “locktokens” table that is different from the genesis ”lockedtokens” table

  • Creates a new account

  • Adds a lock entry into the fio.system > locktokens table:

{ "id": 17, "owner_account": "aeytjwmiuc4v", "lock_amount": 500000000000, "payouts_performed": 0, "can_vote": 0, "periods": [{ "duration": 3600, "percent": "30.00000000000000000" },{ "duration": 3640, "percent": "70.00000000000000000" } ], "remaining_lock_amount": 500000000000, "timestamp": 1607442494 } ], "more": false
fio.test - transfer-locked-tokens.js, transfer-locked-tokens-account-tests.js, transfer-locked-tokens-large-grans.js

/get_locks (FIP-6)

  • Pass in FIO Public Key, returns lock periods for that account.

fio.test - getLocks Tested in transfer-locked-tokens.js

/burn_fio_address (FIP-7)

  • Removes the fio_address from the fionames table.

  • Removes the TPID entry inside the tpid index table.

  • All entries associated with this address in the keynames table will be removed.

  • The account on the fio chain, and the binding for this account in the eosionames table will remain.

  • Also remaining will be all requests for funds that have this address as a payee or payer will remain in the fioreqctxts index table

Typescript SDK - burn-address.js > E. Test burnfioaddress SDK call (uses chain/burn_fio_address endpoint)
fio.test - burn-address.js

/compute_fees (FIP-10)

  • Computes endpoint Fees according to the multiplier and ratio settings from the BPs.

Typescript SDK - N/A. Producer action only.
Kotlin SDK - N/A. Producer action only.
fio.test - producer-fee-setting.js

/add_bundled_transactions (FIP-11.a)

  • Updates table: fio.address fionames

    • Adds bundle count to bundleeligiblecountdown

/get_pub_addresses (FIP-13)

  • Returns all public addresses for specified FIO Address.

  • “limit” and “offset” are supported

/get_received_fio_requests (FIP-19)

  • All FIO Requests received by any FIO Address owned by account hashed down from the supplied fio_public_key is returned

Modified API endpoints

 

 

/get_obt_data (FIP-1)

  • Modified to only return OBT records which include the provided FIO Public Key. (It currently returns records which include all FIO Addresses owned by the provided key at the time of query This would cause new owner to see old requests, even though they could not decrypt the contents.)

Typescript SDK - N/A no change to SDK
Kotlin SDK - N/A no change to SDK
fio.test - fio-request.js

/get_pending_fio_requests (FIP-1)

  • Modified to only FIO Requests which include the provided FIO Public Key. (It currently returns records which include all FIO Addresses owned by the provided key at the time of query This would cause new owner to see old requests, even though they could not decrypt the contents.)

Typescript SDK - N/A no change to SDK
Kotlin SDK - N/A no change to SDK
fio.test - fio-request.js

/get_sent_fio_requests (FIP-1)

  • Modified to only FIO Requests which include the provided FIO Public Key. (It currently returns records which include all FIO Addresses owned by the provided key at the time of query This would cause new owner to see old requests, even though they could not decrypt the contents.)

Typescript SDK - N/A no change to SDK
Kotlin SDK - N/A no change to SDK
fio.test - fio-request.js

/get_cancelled_fio_requests (FIP-1)

  • Modified to only FIO Requests which include the provided FIO Public Key. (It currently returns records which include all FIO Addresses owned by the provided key at the time of query This would cause new owner to see old requests, even though they could not decrypt the contents.)

Typescript SDK - N/A no change to SDK
Kotlin SDK - N/A no change to SDK
fio.test - fio-request.js

/get_fio_balance (FIP-6)

  • “available” is added to response and includes only tokens which are not locked.

{ "balance": 100000000000, "available": 100000000000 }
Typescript SDK - N/A
Kotlin SDK - N/A
fio.test - In tests

/vote_producer (FIP-9)

  • FIO Address field can now be left blank

Typescript SDK - N/A there is no vote producer SDK call
Kotlin SDK - N/A there is no vote producer SDK call
fio.test - vote.js > FIP-9: G.2 Test vote_producer with and without FIO Address

/proxy_vote (FIP-9)

  • FIO Address field can now be left blank

Typescript SDK - N/A there is no vote proxy SDK call
Kotlin SDK - N/A there is no vote proxy SDK call
fio.test - FIP-9: G.3 Test proxy_vote with and without FIO Address

/submit_fee_ratios (FIP-10)

  • Modified to store submitted value, but not calculate fees.

  • Uses the new fees table and set the votesPending to 1.

  • Allows only top 150 block producers to call it.

  • Charges a fee.

Typescript SDK - N/A no changes to sdk
Kotlin SDK - N/A no changes to sdk
fio.test - producer-fee-setting.js

/submit_fee_multiplier (FIP-10)

  • Modified to use the new fees table and set the votesPending to 1.

  • Allows only top 150 block producers to call it.

  • Charges a fee.

Typescript SDK - N/A no changes to sdk
Kotlin SDK - N/A no changes to sdk
fio.test - producer-fee-setting.js

/submit_bundled_transaction (FIP-10)

  • Allows only top 150 block producers to call it.

  • Charges a fee.

Typescript SDK- N/A no changes to sdk
Kotlin SDK- N/A no changes to sdk
fio.test - No current tests for submit_bundled_transaction

/add_pub_address (FIP-18)

  • Specifying * as token code is allowed. This maps the given public_address to all tokens for the given chain.

{ "chain_code": "ETH", "token_code": "*", "public_address": "0xab5801a7d398351b8be11c439e05c5b3259aec9b" }
Typescript SDK - Tested
fio.test - addaddress.js > FIP18. Chain-level addressing

/get_pub_address (FIP-18)

  • Specifying * as token code is allowed when retrieving mapped addresses.

Typescript SDK - Tested
fio.test - addaddress.js > FIP18. Chain-level addressing

/remove_pub_address (FIP-18)

  • Specifying * as token code is allowed when removing an address.

Typescript SDK - Tested
fio.test - addaddress.js > FIP18. Chain-level addressing

/get_fio_names (FIP-25)

/get_fio_addresses (FIP-25)

  • Modified to add remaining bundled transaction count.

Example:

{ "fio_domains": [ { "fio_domain": "alice", "expiration": "2020-09-11T18:30:56", "is_public": 0 } ], "fio_addresses": [ { "fio_address": "purse@alice", "expiration": "2020-09-11T18:30:56", "remaining_bundled_tx": 98 } ] }
Typescript SDK - Tested
fio.test - addbundles.js > updated to use getFioNames

Related content