Skip to content

Commit f2a7d5d

Browse files
Update api spec (#1290)
YOYO NEW API SPEC! Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 3045413 commit f2a7d5d

File tree

1 file changed

+308
-4
lines changed

1 file changed

+308
-4
lines changed

spec.json

Lines changed: 308 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1167,6 +1167,153 @@
11671167
}
11681168
}
11691169
},
1170+
"/auth/api-key": {
1171+
"post": {
1172+
"tags": [
1173+
"hidden"
1174+
],
1175+
"summary": "Authenticate using an api-key. This is disabled on production but can be used in dev to login without email magic.",
1176+
"description": "This returns a session token.",
1177+
"operationId": "auth_api_key",
1178+
"responses": {
1179+
"200": {
1180+
"description": "successful operation",
1181+
"headers": {
1182+
"Access-Control-Allow-Credentials": {
1183+
"description": "Access-Control-Allow-Credentials header.",
1184+
"style": "simple",
1185+
"schema": {
1186+
"nullable": true,
1187+
"type": "string"
1188+
}
1189+
},
1190+
"Access-Control-Allow-Headers": {
1191+
"description": "Access-Control-Allow-Headers header. This is a comma-separated list of headers.",
1192+
"style": "simple",
1193+
"schema": {
1194+
"nullable": true,
1195+
"type": "string"
1196+
}
1197+
},
1198+
"Access-Control-Allow-Methods": {
1199+
"description": "Access-Control-Allow-Methods header.",
1200+
"style": "simple",
1201+
"schema": {
1202+
"nullable": true,
1203+
"type": "string"
1204+
}
1205+
},
1206+
"Access-Control-Allow-Origin": {
1207+
"description": "Access-Control-Allow-Origin header.",
1208+
"style": "simple",
1209+
"schema": {
1210+
"nullable": true,
1211+
"type": "string"
1212+
}
1213+
},
1214+
"Set-Cookie": {
1215+
"description": "Set-Cookie header.",
1216+
"style": "simple",
1217+
"schema": {
1218+
"nullable": true,
1219+
"type": "string"
1220+
}
1221+
},
1222+
"X-Api-Call-Id": {
1223+
"description": "ID for this request. We return it so that users can report this to us and help us debug their problems.",
1224+
"style": "simple",
1225+
"required": true,
1226+
"schema": {
1227+
"type": "string"
1228+
}
1229+
}
1230+
},
1231+
"content": {
1232+
"application/json": {
1233+
"schema": {
1234+
"$ref": "#/components/schemas/AuthApiKeyResponse"
1235+
}
1236+
}
1237+
}
1238+
},
1239+
"4XX": {
1240+
"$ref": "#/components/responses/Error"
1241+
},
1242+
"5XX": {
1243+
"$ref": "#/components/responses/Error"
1244+
}
1245+
}
1246+
},
1247+
"options": {
1248+
"tags": [
1249+
"hidden"
1250+
],
1251+
"summary": "OPTIONS endpoint.",
1252+
"description": "This is necessary for some preflight requests, specifically POST, PUT, and DELETE.",
1253+
"operationId": "options_auth_api_key",
1254+
"responses": {
1255+
"204": {
1256+
"description": "resource updated",
1257+
"headers": {
1258+
"Access-Control-Allow-Credentials": {
1259+
"description": "Access-Control-Allow-Credentials header.",
1260+
"style": "simple",
1261+
"schema": {
1262+
"nullable": true,
1263+
"type": "string"
1264+
}
1265+
},
1266+
"Access-Control-Allow-Headers": {
1267+
"description": "Access-Control-Allow-Headers header. This is a comma-separated list of headers.",
1268+
"style": "simple",
1269+
"schema": {
1270+
"nullable": true,
1271+
"type": "string"
1272+
}
1273+
},
1274+
"Access-Control-Allow-Methods": {
1275+
"description": "Access-Control-Allow-Methods header.",
1276+
"style": "simple",
1277+
"schema": {
1278+
"nullable": true,
1279+
"type": "string"
1280+
}
1281+
},
1282+
"Access-Control-Allow-Origin": {
1283+
"description": "Access-Control-Allow-Origin header.",
1284+
"style": "simple",
1285+
"schema": {
1286+
"nullable": true,
1287+
"type": "string"
1288+
}
1289+
},
1290+
"Set-Cookie": {
1291+
"description": "Set-Cookie header.",
1292+
"style": "simple",
1293+
"schema": {
1294+
"nullable": true,
1295+
"type": "string"
1296+
}
1297+
},
1298+
"X-Api-Call-Id": {
1299+
"description": "ID for this request. We return it so that users can report this to us and help us debug their problems.",
1300+
"style": "simple",
1301+
"required": true,
1302+
"schema": {
1303+
"type": "string"
1304+
}
1305+
}
1306+
}
1307+
},
1308+
"4XX": {
1309+
"$ref": "#/components/responses/Error"
1310+
},
1311+
"5XX": {
1312+
"$ref": "#/components/responses/Error"
1313+
}
1314+
}
1315+
}
1316+
},
11701317
"/auth/email": {
11711318
"post": {
11721319
"tags": [
@@ -19367,6 +19514,19 @@
1936719514
}
1936819515
]
1936919516
},
19517+
"AuthApiKeyResponse": {
19518+
"description": "The response from the `/auth/api-key` endpoint.",
19519+
"type": "object",
19520+
"properties": {
19521+
"session_token": {
19522+
"description": "The session token",
19523+
"type": "string"
19524+
}
19525+
},
19526+
"required": [
19527+
"session_token"
19528+
]
19529+
},
1937019530
"AuthCallback": {
1937119531
"description": "The authentication callback from the OAuth 2.0 client. This is typically posted to the redirect URL as query params after authenticating.",
1937219532
"type": "object",
@@ -21607,6 +21767,25 @@
2160721767
"description": "The response from the `Extrude` endpoint.",
2160821768
"type": "object"
2160921769
},
21770+
"ExtrudeMethod": {
21771+
"description": "Extrusion method determining if the extrusion will be part of the existing object or an entirely new object.",
21772+
"oneOf": [
21773+
{
21774+
"description": "Create a new object that is not connected to the object it is extruded from. This will result in two objects after the operation.",
21775+
"type": "string",
21776+
"enum": [
21777+
"new"
21778+
]
21779+
},
21780+
{
21781+
"description": "This extrusion will be part of object it is extruded from. This will result in one object after the operation.",
21782+
"type": "string",
21783+
"enum": [
21784+
"merge"
21785+
]
21786+
}
21787+
]
21788+
},
2161021789
"ExtrudedFaceInfo": {
2161121790
"description": "IDs for the extruded faces.",
2161221791
"type": "object",
@@ -24414,6 +24593,15 @@
2441424593
}
2441524594
]
2441624595
},
24596+
"extrude_method": {
24597+
"description": "Should the extrusion create a new object or be part of the existing object. If a new object is created, the command id will be the id of the newly created object.",
24598+
"default": "merge",
24599+
"allOf": [
24600+
{
24601+
"$ref": "#/components/schemas/ExtrudeMethod"
24602+
}
24603+
]
24604+
},
2441724605
"faces": {
2441824606
"nullable": true,
2441924607
"description": "Which IDs should the new faces have? If this isn't given, the engine will generate IDs.",
@@ -26528,7 +26716,7 @@
2652826716
]
2652926717
},
2653026718
"uv": {
26531-
"description": "The 2D paramter-space u,v position to evaluate the surface at",
26719+
"description": "The 2D parameter-space u,v position to evaluate the surface at",
2653226720
"allOf": [
2653326721
{
2653426722
"$ref": "#/components/schemas/Point2d"
@@ -26579,7 +26767,7 @@
2657926767
]
2658026768
},
2658126769
"uv": {
26582-
"description": "The 2D paramter-space u,v position to evaluate the surface at",
26770+
"description": "The 2D parameter-space u,v position to evaluate the surface at",
2658326771
"allOf": [
2658426772
{
2658526773
"$ref": "#/components/schemas/Point2d"
@@ -26652,9 +26840,9 @@
2665226840
"properties": {
2665326841
"duration_seconds": {
2665426842
"description": "How many seconds the animation should take.",
26655-
"default": 0.4000000059604645,
26843+
"default": 0.4,
2665626844
"type": "number",
26657-
"format": "float"
26845+
"format": "double"
2665826846
},
2665926847
"entity_id": {
2666026848
"description": "Which entity is being changed.",
@@ -32377,6 +32565,122 @@
3237732565
"start_radius",
3237832566
"type"
3237932567
]
32568+
},
32569+
{
32570+
"description": "Adds an elliptical arc segment.",
32571+
"type": "object",
32572+
"properties": {
32573+
"center": {
32574+
"description": "The center point of the ellipse.",
32575+
"allOf": [
32576+
{
32577+
"$ref": "#/components/schemas/Point2d"
32578+
}
32579+
]
32580+
},
32581+
"end_angle": {
32582+
"description": "End of the path along the perimeter of the ellipse.",
32583+
"allOf": [
32584+
{
32585+
"$ref": "#/components/schemas/Angle"
32586+
}
32587+
]
32588+
},
32589+
"major_radius": {
32590+
"description": "Major radius of the ellipse (along the x axis).",
32591+
"allOf": [
32592+
{
32593+
"$ref": "#/components/schemas/LengthUnit"
32594+
}
32595+
]
32596+
},
32597+
"minor_radius": {
32598+
"description": "Minor radius of the ellipse (along the y axis).",
32599+
"allOf": [
32600+
{
32601+
"$ref": "#/components/schemas/LengthUnit"
32602+
}
32603+
]
32604+
},
32605+
"start_angle": {
32606+
"description": "Start of the path along the perimeter of the ellipse.",
32607+
"allOf": [
32608+
{
32609+
"$ref": "#/components/schemas/Angle"
32610+
}
32611+
]
32612+
},
32613+
"type": {
32614+
"type": "string",
32615+
"enum": [
32616+
"ellipse"
32617+
]
32618+
}
32619+
},
32620+
"required": [
32621+
"center",
32622+
"end_angle",
32623+
"major_radius",
32624+
"minor_radius",
32625+
"start_angle",
32626+
"type"
32627+
]
32628+
},
32629+
{
32630+
"description": "Adds a generic conic section specified by the end point, interior point and tangents at the start and end of the section.",
32631+
"type": "object",
32632+
"properties": {
32633+
"end": {
32634+
"description": "End point of the conic.",
32635+
"allOf": [
32636+
{
32637+
"$ref": "#/components/schemas/Point2d"
32638+
}
32639+
]
32640+
},
32641+
"end_tangent": {
32642+
"description": "Tangent at the end of the conic.",
32643+
"allOf": [
32644+
{
32645+
"$ref": "#/components/schemas/Point2d"
32646+
}
32647+
]
32648+
},
32649+
"interior": {
32650+
"description": "Interior point that lies on the conic.",
32651+
"allOf": [
32652+
{
32653+
"$ref": "#/components/schemas/Point2d"
32654+
}
32655+
]
32656+
},
32657+
"relative": {
32658+
"description": "Whether or not the interior and end points are relative to the previous path position.",
32659+
"type": "boolean"
32660+
},
32661+
"start_tangent": {
32662+
"description": "Tangent at the start of the conic.",
32663+
"allOf": [
32664+
{
32665+
"$ref": "#/components/schemas/Point2d"
32666+
}
32667+
]
32668+
},
32669+
"type": {
32670+
"type": "string",
32671+
"enum": [
32672+
"conic_to"
32673+
]
32674+
}
32675+
},
32676+
"required": [
32677+
"end",
32678+
"end_tangent",
32679+
"interior",
32680+
"relative",
32681+
"start_tangent",
32682+
"type"
32683+
]
3238032684
}
3238132685
]
3238232686
},

0 commit comments

Comments
 (0)