{"files":{"SKILL.md":"---\nname: apidapp\ndescription: \"ApiDapp API skill. Use when working with ApiDapp for root, account, block. Covers 54 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# ApiDapp\nAPI version: 2019-02-14T16:47:01Z\n\n## Auth\nApiKey X-Api-Key in header\n\n## Base URL\nhttps://ethereum.apidapp.com/1\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /block -- access detailed block information\n3. POST /account -- create first account\n\n## Endpoints\n54 endpoints across 11 groups. See references/api-spec.lap for full details.\n\n### Root\n| Method | Path | Description |\n|--------|------|-------------|\n| OPTIONS | / |  |\n\n### Account\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /account | Create new account |\n| OPTIONS | /account |  |\n| GET | /account/{id} | Get account balance |\n| OPTIONS | /account/{id} |  |\n\n### Block\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /block | Access detailed block information |\n| OPTIONS | /block |  |\n| GET | /block/{id} | Get information about particular block |\n| OPTIONS | /block/{id} |  |\n| GET | /block/{id}/transaction | Get transaction count within block |\n| OPTIONS | /block/{id}/transaction |  |\n| GET | /block/{id}/transaction/{index} | Get information about particular transaction within block |\n| OPTIONS | /block/{id}/transaction/{index} |  |\n\n### Blockchain\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /blockchain | Get a list of supported blockchains |\n| OPTIONS | /blockchain |  |\n| GET | /blockchain/{id} | Get information about blockchain woth given id |\n| OPTIONS | /blockchain/{id} |  |\n\n### Contract\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /contract | Create a new smart contract |\n| OPTIONS | /contract |  |\n| GET | /contract/{id} | Get contract balance |\n| POST | /contract/{id} | Call the contract |\n| OPTIONS | /contract/{id} |  |\n\n### Echo\n| Method | Path | Description |\n|--------|------|-------------|\n| OPTIONS | /echo |  |\n\n### Erc20\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /erc20 | Get token information such as name, total amount in circulation, etc |\n| POST | /erc20 |  |\n| OPTIONS | /erc20 |  |\n| GET | /erc20/{address} | Get information amout token balance in the account |\n| POST | /erc20/{address} | Transfer tokens to another account |\n| OPTIONS | /erc20/{address} |  |\n\n### Key\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /key |  |\n| POST | /key |  |\n| OPTIONS | /key |  |\n| DELETE | /key/{key} |  |\n| OPTIONS | /key/{key} |  |\n\n### Transaction\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /transaction | Create a new transaction. Transfer Ether between accounts |\n| OPTIONS | /transaction |  |\n| GET | /transaction/{hash} | Get information about transaction by the transaction hash value |\n| OPTIONS | /transaction/{hash} |  |\n| GET | /transaction/{hash}/receipt | Get receipt detail information |\n| OPTIONS | /transaction/{hash}/receipt |  |\n\n### Version\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /version | Get API version info |\n| OPTIONS | /version |  |\n\n### Wallet\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /wallet | Get current account balance |\n| POST | /wallet | Create personal wallet |\n| OPTIONS | /wallet |  |\n| GET | /wallet/account |  |\n| POST | /wallet/account |  |\n| OPTIONS | /wallet/account |  |\n| GET | /wallet/account/{id} | Get account balance |\n| OPTIONS | /wallet/account/{id} |  |\n| POST | /wallet/account/{id}/contract |  |\n| POST | /wallet/account/{id}/erc20 |  |\n| POST | /wallet/account/{id}/pay | Send payment from the account held within the wallet |\n| OPTIONS | /wallet/account/{id}/pay |  |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a account?\" -> POST /account\n- \"Get account details?\" -> GET /account/{id}\n- \"List all block?\" -> GET /block\n- \"Get block details?\" -> GET /block/{id}\n- \"List all transaction?\" -> GET /block/{id}/transaction\n- \"Get transaction details?\" -> GET /block/{id}/transaction/{index}\n- \"List all blockchain?\" -> GET /blockchain\n- \"Get blockchain details?\" -> GET /blockchain/{id}\n- \"Create a contract?\" -> POST /contract\n- \"Get contract details?\" -> GET /contract/{id}\n- \"List all erc20?\" -> GET /erc20\n- \"Create a erc20?\" -> POST /erc20\n- \"Get erc20 details?\" -> GET /erc20/{address}\n- \"List all key?\" -> GET /key\n- \"Create a key?\" -> POST /key\n- \"Delete a key?\" -> DELETE /key/{key}\n- \"Create a transaction?\" -> POST /transaction\n- \"List all receipt?\" -> GET /transaction/{hash}/receipt\n- \"List all version?\" -> GET /version\n- \"List all wallet?\" -> GET /wallet\n- \"Create a wallet?\" -> POST /wallet\n- \"List all account?\" -> GET /wallet/account\n- \"Create a pay?\" -> POST /wallet/account/{id}/pay\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api ApiDapp\n@base https://ethereum.apidapp.com/1\n@version 2019-02-14T16:47:01Z\n@auth ApiKey X-Api-Key in header\n@endpoints 54\n@hint download_for_search\n@toc root(1), account(4), block(8), blockchain(4), contract(5), echo(1), erc20(6), key(5), transaction(6), version(2), wallet(12)\n\n@group root\n@endpoint OPTIONS /\n@returns(200) 200 response\n\n@endgroup\n\n@group account\n@endpoint POST /account\n@desc Create new account\n@returns(200) 200 response\n\n@endpoint OPTIONS /account\n@returns(200) 200 response\n\n@endpoint GET /account/{id}\n@desc Get account balance\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /account/{id}\n@returns(200) 200 response\n\n@endgroup\n\n@group block\n@endpoint GET /block\n@desc Access detailed block information\n@returns(200) 200 response\n\n@endpoint OPTIONS /block\n@returns(200) 200 response\n\n@endpoint GET /block/{id}\n@desc Get information about particular block\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /block/{id}\n@returns(200) 200 response\n\n@endpoint GET /block/{id}/transaction\n@desc Get transaction count within block\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /block/{id}/transaction\n@returns(200) 200 response\n\n@endpoint GET /block/{id}/transaction/{index}\n@desc Get information about particular transaction within block\n@required {index: any, id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /block/{id}/transaction/{index}\n@returns(200) 200 response\n\n@endgroup\n\n@group blockchain\n@endpoint GET /blockchain\n@desc Get a list of supported blockchains\n@returns(200) 200 response\n\n@endpoint OPTIONS /blockchain\n@returns(200) 200 response\n\n@endpoint GET /blockchain/{id}\n@desc Get information about blockchain woth given id\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /blockchain/{id}\n@returns(200) 200 response\n\n@endgroup\n\n@group contract\n@endpoint POST /contract\n@desc Create a new smart contract\n@returns(200) 200 response\n\n@endpoint OPTIONS /contract\n@returns(200) 200 response\n\n@endpoint GET /contract/{id}\n@desc Get contract balance\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint POST /contract/{id}\n@desc Call the contract\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /contract/{id}\n@returns(200) 200 response\n\n@endgroup\n\n@group echo\n@endpoint OPTIONS /echo\n@returns(200) 200 response\n\n@endgroup\n\n@group erc20\n@endpoint GET /erc20\n@desc Get token information such as name, total amount in circulation, etc\n@returns(200) 200 response\n\n@endpoint POST /erc20\n@returns(200) 200 response\n\n@endpoint OPTIONS /erc20\n@returns(200) 200 response\n\n@endpoint GET /erc20/{address}\n@desc Get information amout token balance in the account\n@required {address: any}\n@returns(200) 200 response\n\n@endpoint POST /erc20/{address}\n@desc Transfer tokens to another account\n@required {address: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /erc20/{address}\n@returns(200) 200 response\n\n@endgroup\n\n@group key\n@endpoint GET /key\n@optional {token: any}\n@returns(200) 200 response\n\n@endpoint POST /key\n@returns(200) 200 response\n\n@endpoint OPTIONS /key\n@returns(200) 200 response\n\n@endpoint DELETE /key/{key}\n@required {key: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /key/{key}\n@returns(200) 200 response\n\n@endgroup\n\n@group transaction\n@endpoint POST /transaction\n@desc Create a new transaction. Transfer Ether between accounts\n@returns(200) 200 response\n\n@endpoint OPTIONS /transaction\n@returns(200) 200 response\n\n@endpoint GET /transaction/{hash}\n@desc Get information about transaction by the transaction hash value\n@required {hash: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /transaction/{hash}\n@returns(200) 200 response\n\n@endpoint GET /transaction/{hash}/receipt\n@desc Get receipt detail information\n@required {hash: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /transaction/{hash}/receipt\n@returns(200) 200 response\n\n@endgroup\n\n@group version\n@endpoint GET /version\n@desc Get API version info\n@returns(200) 200 response\n\n@endpoint OPTIONS /version\n@returns(200) 200 response\n\n@endgroup\n\n@group wallet\n@endpoint GET /wallet\n@desc Get current account balance\n@returns(200) 200 response\n\n@endpoint POST /wallet\n@desc Create personal wallet\n@returns(200) 200 response\n\n@endpoint OPTIONS /wallet\n@returns(200) 200 response\n\n@endpoint GET /wallet/account\n@returns(200) 200 response\n\n@endpoint POST /wallet/account\n@returns(200) 200 response\n\n@endpoint OPTIONS /wallet/account\n@returns(200) 200 response\n\n@endpoint GET /wallet/account/{id}\n@desc Get account balance\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /wallet/account/{id}\n@returns(200) 200 response\n\n@endpoint POST /wallet/account/{id}/contract\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint POST /wallet/account/{id}/erc20\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint POST /wallet/account/{id}/pay\n@desc Send payment from the account held within the wallet\n@required {id: any}\n@returns(200) 200 response\n\n@endpoint OPTIONS /wallet/account/{id}/pay\n@returns(200) 200 response\n\n@endgroup\n\n@end\n"}}