Skip to content

Commit f38e12b

Browse files
Merge pull request #36 from code0-tech/35-rest-flow-type
Rest FlowType Prototype
2 parents 2add57a + 99de6fd commit f38e12b

File tree

1 file changed

+170
-0
lines changed

1 file changed

+170
-0
lines changed

definitions/rest.md

+170
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
# Rest FlowType
2+
3+
```json
4+
{
5+
"identifier": "REST"
6+
"name": [
7+
{
8+
"code": "en-US",
9+
"content": "Rest Endpoint"
10+
}
11+
],
12+
"description": [
13+
{
14+
"code": "en-US",
15+
"content": "A REST API is a web service that lets clients interact with data on a server using standard HTTP methods like GET, POST, PUT, and DELETE, usually returning results in JSON format."
16+
}
17+
],
18+
"settings": [],
19+
"input_type_identifier": "HTTP_REQUEST_OBJECT",
20+
"return_type_identifier": "HTTP_RESPONSE_OBJECT"
21+
}
22+
```
23+
24+
## Defined DataTypes
25+
26+
```json
27+
[
28+
{
29+
"variant": "TYPE",
30+
"identifier": "HTTP_METHOD",
31+
"name": [
32+
{
33+
"code": "en-US",
34+
"content": "HTTP Method",
35+
}
36+
],
37+
"rules": [
38+
{
39+
"item_of_collection": {
40+
"items": [ "GET", "POST", "PUT", "DELETE", "PATCH", "HEAD"]
41+
}
42+
}
43+
],
44+
"parent_type_identifier": null
45+
},
46+
{
47+
"variant": "TYPE",
48+
"identifier": "HTTP_URL",
49+
"name": [
50+
{
51+
"code": "en-US",
52+
"content": "HTTP Route",
53+
}
54+
],
55+
"rules": [
56+
{
57+
"regex": {
58+
"pattern": "/^\/\w+(?:[.:~-]\w+)*(?:\/\w+(?:[.:~-]\w+)*)*$/"
59+
}
60+
}
61+
],
62+
"parent_type_identifier": null
63+
},
64+
{
65+
"variant": "ARRAY",
66+
"identifier": "HTTP_HEADER_MAP",
67+
"name": [
68+
{
69+
"code": "en-US",
70+
"content": "HTTP Headers"
71+
}
72+
],
73+
"rules": [
74+
{
75+
"contains_type": {
76+
"type": "HTTP_HEADER_ENTRY"
77+
}
78+
}
79+
],
80+
"parent_type_identifier": "ARRAY"
81+
},
82+
{
83+
"variant": "OBJECT",
84+
"identifier": "HTTP_HEADER_ENTRY",
85+
"name": [
86+
{
87+
"code": "en-US",
88+
"content": "HTTP Header Entry"
89+
}
90+
],
91+
"rules": [
92+
{
93+
"contains_key": {
94+
"key": "key",
95+
"type": "TEXT"
96+
}
97+
},
98+
{
99+
"contains_key": {
100+
"key": "value",
101+
"type": "TEXT"
102+
}
103+
}
104+
],
105+
"parent_type_identifier": "OBJECT"
106+
},
107+
{
108+
"variant": "OBJECT",
109+
"identifier": "HTTP_REQUEST_OBJECT",
110+
"name": [
111+
{
112+
"code": "en-US",
113+
"content": "HTTP Request",
114+
}
115+
],
116+
"rules": [
117+
{
118+
"contains_key": {
119+
"key": "method",
120+
"type": "HTTP_METHOD"
121+
}
122+
},
123+
{
124+
"contains_key": {
125+
"key": "url",
126+
"type": "HTTP_URL"
127+
}
128+
},
129+
{
130+
"contains_key": {
131+
"key": "body",
132+
"type": "OBJECT"
133+
}
134+
},
135+
{
136+
"contains_key": {
137+
"key": "headers",
138+
"type": "HTTP_HEADER_MAP"
139+
}
140+
}
141+
],
142+
"parent_type_identifier": "OBJECT"
143+
},
144+
{
145+
"variant": "OBJECT",
146+
"identifier": "HTTP_RESPONSE_OBJECT",
147+
"name": [
148+
{
149+
"code": "en-US",
150+
"content": "HTTP Response"
151+
}
152+
],
153+
"rules": [
154+
{
155+
"contains_key": {
156+
"key": "headers",
157+
"type": "HTTP_HEADER_MAP"
158+
}
159+
},
160+
{
161+
"contains_key": {
162+
"key": "body",
163+
"type": "OBJECT"
164+
}
165+
}
166+
],
167+
"parent_type_identifier": "OBJECT"
168+
}
169+
]
170+
```

0 commit comments

Comments
 (0)