Skip to content

Commit

Permalink
[LazaroRaul] refs fibercrypto#23 Create initial specification for end…
Browse files Browse the repository at this point in the history
…point [api] Many-outputs tx
  • Loading branch information
e1Ru1o committed Feb 26, 2019
1 parent 9c89154 commit 8e88afc
Showing 1 changed file with 60 additions and 3 deletions.
63 changes: 60 additions & 3 deletions LazaroRaul_specs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ paths:
/api/transactions/broadcast:
post:
summary: Broadcast the signed transaction.
description: Should broadcast the signed transaction. Result code can be evaluated synchronously or returned asynchronously in the [GET] /api/transactions/broadcast/* response with error code.
description: Should broadcast the signed transaction. Result code can be evaluated synchronously or returned asynchronously in the `[GET] /api/transactions/broadcast/*` response with error code.
security:
- CsrfTokenAuth: []

Expand Down Expand Up @@ -76,14 +76,14 @@ paths:
parameters:
- name: address
in: path
description: Address for find blockchain explorer URLs
description: Address for find blockchain explorer URLs.
required: true
schema:
type: string

responses:
'200':
description: Blockchain explorer URL for the given address
description: Blockchain explorer URLs for the given address.
content:
application/json:
schema:
Expand All @@ -93,6 +93,63 @@ paths:
default:
$ref : '#/components/schemas/genericError'

/api/transactions/many-outputs:
post:
summary: Build not signed transaction with many outputs.
description: Should build not signed transaction with many outputs. If the transaction with the specified `operationId` has already been built by one of the `[POST] /api/transactions/*` call, it should be ignored and regular response (as in the first request) should be returned. Fee should be added to the specified amount.
security:
- CsrfTokenAuth: []

requestBody:
description: 'A JSON object containing: Operation ID. Source address. Destinations. Asset ID to transfer, defaults to SKY'
required: true
content:
application/json:
schema:
type: object
properties:
operationId:
type: string
description: Operation ID.
fromAddress:
type: string
description: Source address.
outputs:
type: array
items:
type: object
properties:
toAddress:
type: string
description: Destination address.
amount:
type: string
description: Amount to transfer to the toAddress. Integer as string, aligned to the asset accuracy. Actual value can be calculated as x = amount / (10 ^ asset.Accuracy).
description: Destinations.
assetId:
type: string
description: Asset ID to transfer, defaults to SKY.

responses:
'200': # status code
description: Error code. The transaction context
content:
application/json:
schema:
type: object
properties:
errorCode:
type: string
enum:
- amountIsTooSmall
- notEnoughBalance
description: Error code. Can be empty. Should be non empty if an error that match one of the listed code is occured. For other errors use HTTP status codes.
transactionContext:
type: string
description: The transaction context in the blockchain specific format, which will be passed to the [POST] /api/sign. Should be not empty when result is successful.
default:
$ref : '#/components/schemas/genericError'


# To remember :
# Every post method should use security schema.
Expand Down

0 comments on commit 8e88afc

Please sign in to comment.