-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDetroitApi.yaml
139 lines (135 loc) · 3.1 KB
/
DetroitApi.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
openapi: 3.0.3
info:
version: '0.1'
title: 'Detroit API'
description: |
# Detroit API Overview
Work in progess...
termsOfService: ""
contact:
name: LY Cheng
url:
email: [email protected]
license:
name: MIT License
url: https://github.com/yhsiang/detroit/LICENSE
servers:
- url: 'localhost:3000/api'
description: Detroit API
paths:
/fork:
get:
summary: Fork
description: 'Fork a new simulation environment with current block height.'
responses:
'200':
description: 'Request succeeded'
content:
application/json:
schema:
$ref: '#/components/schemas/ForkResponse'
/:forkId:
post:
summary: Call Ethereum JSON-RPC
description: 'Call Ethereum JSON-RPC'
requestBody:
description: 'Ethereum JSON-RPC'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JsonRpcRequest'
responses:
'200':
description: 'Request succeeded'
content:
application/json:
schema:
$ref: '#/components/schemas/JsonRpcResponse'
/unfork:
post:
summary: Remove simulation environment
description: 'Remove simulation environment'
requestBody:
description: 'Unfork Request'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UnforkRequest'
responses:
'200':
description: 'Request succeeded'
content:
application/json:
schema:
$ref: '#/components/schemas/Message'
components:
schemas:
ForkResponse:
type: object
required:
- forkId
- address
- signature
properties:
forkId:
type: string
address:
type: string
description: Account Address
blockNumber:
type: string
JsonRpcRequest:
type: object
required:
- jsonrpc
- id
- method
- params
properties:
id:
type: number
jsonrpc:
type: string
method:
type: string
description: Method
params:
type: array
description: Parameters
JsonRpcResponse:
type: object
required:
- jsonrpc
- id
- result
properties:
jsonrpc:
type: string
description: Version of Json Rpc
id:
type: number
description: Id of Json Rpc
result:
oneOf:
- type: string
- type: number
- type: object
- type: array
description: Result of Json Rpc
UnforkRequest:
type: object
required:
- forkId
properties:
forkId:
type: string
Message:
type: object
required:
- message
properties:
message:
type: string
description: succeeded message