openapi: 3.0.0
servers:
  - url: https://ethereum.apidapp.com/1
info:
  contact:
    x-twitter: api_dapp
  title: ApiDapp
  version: 2019-02-14T16:47:01Z
  x-apisguru-categories:
    - financial
  x-logo:
    url: https://i2.wp.com/apidapp.com/wp-content/uploads/2019/03/cropped-ApiDappIcon.png?fit=180%2C180&ssl=1
  x-origin:
    - format: openapi
      url: https://apidapp.s3.amazonaws.com/ApiDapp-Start-swagger-7/ApiDapp-Start-swagger+(7).json
      version: "3.0"
  x-providerName: apidapp.com
paths:
  /:
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    x-amazon-apigateway-any-method:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  /account:
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Create new account
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
  "/account/{id}":
    get:
      description: Get account balance
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /block:
    get:
      description: Access detailed block information
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/block/{id}":
    get:
      description: Get information about particular block
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/block/{id}/transaction":
    get:
      description: Get transaction count within block
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/block/{id}/transaction/{index}":
    get:
      description: Get information about particular transaction within block
      parameters:
        - in: path
          name: index
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
        - description: Automatically added
          in: path
          name: index
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /blockchain:
    get:
      description: Get a list of supported blockchains
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/blockchain/{id}":
    get:
      description: Get information about blockchain woth given id
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /contract:
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Create a new smart contract
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/contract/{id}":
    get:
      description: Get contract balance
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Call the contract
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
  /echo:
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    x-amazon-apigateway-any-method:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  /erc20:
    get:
      description: Get token information such as name, total amount in circulation, etc
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/erc20/{address}":
    get:
      description: Get information amout token balance in the account
      parameters:
        - in: path
          name: address
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      parameters:
        - description: Automatically added
          in: path
          name: address
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Transfer tokens to another account
      parameters:
        - in: path
          name: address
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  /key:
    get:
      parameters:
        - in: query
          name: token
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/key/{key}":
    delete:
      parameters:
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      parameters:
        - description: Automatically added
          in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /transaction:
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Create a new transaction. Transfer Ether between accounts
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
  "/transaction/{hash}":
    get:
      description: Get information about transaction by the transaction hash value
      parameters:
        - in: path
          name: hash
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: hash
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/transaction/{hash}/receipt":
    get:
      description: Get receipt detail information
      parameters:
        - in: path
          name: hash
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - Key2: []
    options:
      parameters:
        - description: Automatically added
          in: path
          name: hash
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /version:
    get:
      description: Get API version info
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  /wallet:
    get:
      description: Get current account balance
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Create personal wallet
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  /wallet/account:
    get:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/wallet/account/{id}":
    get:
      description: Get account balance
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
  "/wallet/account/{id}/contract":
    post:
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/wallet/account/{id}/erc20":
    post:
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
  "/wallet/account/{id}/pay":
    options:
      parameters:
        - description: Automatically added
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
    post:
      description: Send payment from the account held within the wallet
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Empty"
          description: 200 response
components:
  schemas:
    Empty:
      title: Empty Schema
      type: object
  securitySchemes:
    Key2:
      in: header
      name: X-Api-Key
      type: apiKey
      x-amazon-apigateway-authtype: custom
