1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"0000-00-00",
5    "endpointPrefix":"restjsonservice",
6    "protocol":"rest-json",
7    "serviceAbbreviation":"RESTJSONService",
8    "serviceFullName":"REST JSON Service",
9    "serviceId":"RESTJSONService",
10    "signatureVersion":"v4",
11    "uid":"RESTJSONService-0000-00-00"
12  },
13  "operations":{
14    "GetEventStream":{
15      "name":"GetEventStream",
16      "http":{
17        "method":"POST",
18        "requestUri":"/"
19      },
20      "input":{"shape":"GetEventStreamRequest"},
21      "output":{"shape":"GetEventStreamResponse"}
22    },
23    "EmptyStream":{
24      "name":"EmptyStream",
25      "http":{
26        "method":"POST",
27        "requestUri":"/"
28      },
29      "input":{"shape":"EmptyStreamRequest"},
30      "output":{"shape":"EmptyStreamResponse"}
31    },
32	"OtherOperation":{
33      "name":"OtherOperation",
34      "http":{
35        "method":"POST",
36        "requestUri":"/"
37      },
38	  "errors":[
39		  {"shape":"ExceptionEvent2"}
40	  ]
41	}
42  },
43  "shapes":{
44    "Bool":{"type":"boolean"},
45    "Byte":{"type":"byte"},
46    "Short":{"type":"short"},
47    "Integer":{"type":"integer"},
48    "Long":{"type":"long"},
49    "Blob":{"type":"blob"},
50    "String":{"type":"string"},
51    "Time":{"type":"timestamp"},
52    "GetEventStreamRequest":{
53      "type":"structure",
54      "members":{
55        "InputVal":{"shape":"String"}
56      }
57    },
58    "GetEventStreamResponse":{
59      "type":"structure",
60      "members":{
61        "StrVal":{"shape":"String"},
62        "IntVal":{"shape":"Integer"},
63        "EventStream":{"shape":"EventStream"}
64      }
65    },
66    "EventStream":{
67      "type":"structure",
68      "members":{
69        "Headers":{"shape":"HeaderOnlyEvent"},
70        "ImplicitPayload":{"shape":"ImplicitPayloadEvent"},
71        "ExplicitPayload":{"shape":"ExplicitPayloadEvent"},
72        "PayloadOnly":{"shape":"PayloadOnlyEvent"},
73        "PayloadOnlyBlob":{"shape":"PayloadOnlyBlobEvent"},
74        "PayloadOnlyString":{"shape":"PayloadOnlyStringEvent"},
75        "Empty":{"shape":"EmptyEvent"},
76        "Exception":{"shape":"ExceptionEvent"},
77        "Exception2":{"shape":"ExceptionEvent2"}
78      },
79      "eventstream":true
80    },
81    "EmptyStreamRequest":{
82      "type":"structure",
83      "members":{}
84    },
85    "EmptyStreamResponse":{
86      "type":"structure",
87      "members":{
88        "EventStream":{"shape":"EmptyEventStream"}
89      }
90    },
91    "EmptyEventStream":{
92      "type":"structure",
93      "members":{
94      },
95      "eventstream":true
96    },
97    "HeaderOnlyEvent":{
98      "type":"structure",
99      "members":{
100        "BoolVal":{
101          "shape":"Bool",
102          "eventheader":true
103        },
104        "ByteVal":{
105          "shape":"Byte",
106          "eventheader":true
107        },
108        "ShortVal":{
109          "shape":"Short",
110          "eventheader":true
111        },
112        "IntegerVal":{
113          "shape":"Integer",
114          "eventheader":true
115        },
116        "LongVal":{
117          "shape":"Long",
118          "eventheader":true
119        },
120        "StringVal":{
121          "shape":"String",
122          "eventheader":true
123        },
124        "BlobVal":{
125          "shape":"Blob",
126          "eventheader":true
127        },
128        "TimeVal":{
129          "shape":"Time",
130          "eventheader":true
131        }
132      },
133      "event":true
134    },
135    "ImplicitPayloadEvent": {
136      "type":"structure",
137      "members":{
138        "ByteVal":{
139          "shape":"Byte",
140          "eventheader":true
141        },
142        "ShortVal":{
143          "shape":"Short"
144        },
145        "IntegerVal":{
146          "shape":"Integer"
147        }
148      },
149      "event":true
150    },
151    "ExplicitPayloadEvent": {
152      "type":"structure",
153      "members":{
154        "LongVal":{
155          "shape":"Long",
156          "eventheader":true
157        },
158        "StringVal":{
159          "shape":"String",
160          "eventheader":true
161        },
162        "NestedVal":{
163          "shape":"NestedShape",
164          "eventpayload":true
165        }
166      },
167      "event":true
168    },
169    "PayloadOnlyEvent":{
170      "type":"structure",
171      "members":{
172        "NestedVal":{
173          "shape":"NestedShape",
174          "eventpayload":true
175        }
176      },
177      "event":true
178    },
179    "PayloadOnlyBlobEvent":{
180      "type":"structure",
181      "members":{
182        "BlobPayload":{
183          "shape":"Blob",
184          "eventpayload":true
185        }
186      },
187      "event":true
188    },
189	"PayloadOnlyStringEvent":{
190      "type":"structure",
191      "members":{
192        "StringPayload":{
193          "shape":"String",
194          "eventpayload":true
195        }
196      },
197      "event":true
198	},
199    "EmptyEvent": {
200      "type":"structure",
201      "members":{},
202      "event": true
203    },
204    "NestedShape": {
205      "type":"structure",
206      "members":{
207        "IntVal":{"shape":"Integer"},
208        "StrVal":{"shape":"String"}
209      }
210    },
211    "ExceptionEvent":{
212      "type":"structure",
213      "members":{
214        "IntVal":{"shape":"Integer"},
215        "message":{"shape":"String"}
216      },
217      "exception":true
218    },
219    "ExceptionEvent2":{
220      "type":"structure",
221      "members":{
222      },
223      "exception":true
224    }
225  }
226}
227