Skip to content

Commit

Permalink
YOYO NEW API SPEC!
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] committed Jan 4, 2024
1 parent 673fe22 commit 37e4f63
Showing 1 changed file with 157 additions and 35 deletions.
192 changes: 157 additions & 35 deletions spec.json
Original file line number Diff line number Diff line change
Expand Up @@ -1403,8 +1403,7 @@
"/file/center-of-mass": {
"post": {
"tags": [
"file",
"beta"
"file"
],
"summary": "Get CAD file center of mass.",
"description": "We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.\nThis endpoint returns the cartesian coordinate in world space measure units.\nIn the future, we will use the units inside the file if they are given and do any conversions if necessary for the calculation. But currently, that is not supported.\nGet the center of mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.\nIf the operation is performed asynchronously, the `id` of the operation will be returned. You can use the `id` returned from the request to get status information about the async operation from the `/async/operations/{id}` endpoint.",
Expand Down Expand Up @@ -1715,8 +1714,7 @@
"/file/density": {
"post": {
"tags": [
"file",
"beta"
"file"
],
"summary": "Get CAD file density.",
"description": "We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.\nThis endpoint assumes if you are giving a material mass in a specific mass units, we return a density in mass unit per cubic measure unit.\nIn the future, we will use the units inside the file if they are given and do any conversions if necessary for the calculation. But currently, that is not supported.\nGet the density of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.\nIf the operation is performed asynchronously, the `id` of the operation will be returned. You can use the `id` returned from the request to get status information about the async operation from the `/async/operations/{id}` endpoint.",
Expand Down Expand Up @@ -2036,8 +2034,7 @@
"/file/mass": {
"post": {
"tags": [
"file",
"beta"
"file"
],
"summary": "Get CAD file mass.",
"description": "We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.\nThis endpoint assumes if you are giving a material density in a specific mass unit per cubic measure unit, we return a mass in mass units. The same mass units as passed in the material density.\nIn the future, we will use the units inside the file if they are given and do any conversions if necessary for the calculation. But currently, that is not supported.\nGet the mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.\nIf the operation is performed asynchronously, the `id` of the operation will be returned. You can use the `id` returned from the request to get status information about the async operation from the `/async/operations/{id}` endpoint.",
Expand Down Expand Up @@ -2200,8 +2197,7 @@
"/file/surface-area": {
"post": {
"tags": [
"file",
"beta"
"file"
],
"summary": "Get CAD file surface area.",
"description": "We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.\nThis endpoint returns the square measure units.\nIn the future, we will use the units inside the file if they are given and do any conversions if necessary for the calculation. But currently, that is not supported.\nGet the surface area of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.\nIf the operation is performed asynchronously, the `id` of the operation will be returned. You can use the `id` returned from the request to get status information about the async operation from the `/async/operations/{id}` endpoint.",
Expand Down Expand Up @@ -2346,8 +2342,7 @@
"/file/volume": {
"post": {
"tags": [
"file",
"beta"
"file"
],
"summary": "Get CAD file volume.",
"description": "We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.\nThis endpoint returns the cubic measure units.\nIn the future, we will use the units inside the file if they are given and do any conversions if necessary for the calculation. But currently, that is not supported.\nGet the volume of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.\nIf the operation is performed asynchronously, the `id` of the operation will be returned. You can use the `id` returned from the request to get status information about the async operation from the `/async/operations/{id}` endpoint.",
Expand Down Expand Up @@ -6418,8 +6413,7 @@
"/user/text-to-cad": {
"get": {
"tags": [
"ai",
"beta"
"ai"
],
"summary": "List text-to-CAD models you've generated.",
"description": "This will always return the STEP file contents as well as the format the user originally requested.\nThis endpoint requires authentication by any Zoo user. It returns the text-to-CAD models for the authenticated user.\nThe text-to-CAD models are returned in order of creation, with the most recently created text-to-CAD models first.",
Expand Down Expand Up @@ -6451,6 +6445,15 @@
"schema": {
"$ref": "#/components/schemas/CreatedAtSortMode"
}
},
{
"in": "query",
"name": "no_models",
"description": "If we should return the model file contents or just the metadata.",
"schema": {
"nullable": true,
"type": "boolean"
}
}
],
"responses": {
Expand Down Expand Up @@ -6513,8 +6516,7 @@
"/user/text-to-cad/{id}": {
"get": {
"tags": [
"ai",
"beta"
"ai"
],
"summary": "Get a text-to-CAD response.",
"description": "This endpoint requires authentication by any Zoo user. The user must be the owner of the text-to-CAD model.",
Expand Down Expand Up @@ -9861,6 +9863,19 @@
"description": "Unique identifier for the object.",
"type": "string"
},
"metadata": {
"description": "Set of key-value pairs.",
"default": {},
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"name": {
"nullable": true,
"description": "Name of the coupon displayed to customers on, for instance invoices, or receipts.\n\nBy default the `id` is shown if `name` is not set.",
"type": "string"
},
"percent_off": {
"nullable": true,
"description": "Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon.\n\nFor example, a coupon with percent_off of 50 will make a %s100 invoice %s50 instead.",
Expand Down Expand Up @@ -10388,7 +10403,8 @@
"solid3d",
"edge",
"face",
"plane"
"plane",
"vertex"
]
},
"Environment": {
Expand Down Expand Up @@ -10541,7 +10557,7 @@
]
},
"ExtendedUser": {
"description": "Extended user information.\n\nThis is mostly used for internal purposes. It returns a mapping of the user's information, including that of our third party services we use for users: MailChimp, Stripe, and Front",
"description": "Extended user information.\n\nThis is mostly used for internal purposes. It returns a mapping of the user's information, including that of our third party services we use for users: MailChimp | Stripe",
"type": "object",
"properties": {
"company": {
Expand Down Expand Up @@ -12055,13 +12071,6 @@
"InvoiceStatus": {
"description": "An enum representing the possible values of an `Invoice`'s `status` field.",
"oneOf": [
{
"description": "Deleted.",
"type": "string",
"enum": [
"deleted"
]
},
{
"description": "Draft.",
"type": "string",
Expand Down Expand Up @@ -14689,6 +14698,92 @@
"spacing",
"type"
]
},
{
"description": "When you select some entity with the current tool, what should happen to the entity?",
"type": "object",
"properties": {
"selection_type": {
"description": "What type of selection should occur when you select something?",
"allOf": [
{
"$ref": "#/components/schemas/SceneSelectionType"
}
]
},
"type": {
"type": "string",
"enum": [
"set_selection_type"
]
}
},
"required": [
"selection_type",
"type"
]
},
{
"description": "What kind of entities can be selected?",
"type": "object",
"properties": {
"filter": {
"description": "If vector is empty, clear all filters. If vector is non-empty, only the given entity types will be selectable.",
"type": "array",
"items": {
"$ref": "#/components/schemas/EntityType"
}
},
"type": {
"type": "string",
"enum": [
"set_selection_filter"
]
}
},
"required": [
"filter",
"type"
]
},
{
"description": "Use orthographic projection.",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"default_camera_set_orthographic"
]
}
},
"required": [
"type"
]
},
{
"description": "Use perspective projection.",
"type": "object",
"properties": {
"parameters": {
"nullable": true,
"description": "If this is not given, use the same parameters as last time the perspective camera was used.",
"allOf": [
{
"$ref": "#/components/schemas/PerspectiveCameraParameters"
}
]
},
"type": {
"type": "string",
"enum": [
"default_camera_set_perspective"
]
}
},
"required": [
"type"
]
}
]
},
Expand Down Expand Up @@ -15641,24 +15736,25 @@
"type": "object",
"properties": {
"first_call_from_modeling_app_date": {
"nullable": true,
"title": "DateTime",
"description": "When the user first used the modeling app.",
"type": "string"
"type": "string",
"format": "date-time"
},
"first_call_from_text_to_cad_date": {
"nullable": true,
"title": "DateTime",
"description": "When the user first used text-to-CAD.",
"type": "string"
},
"first_call_from_their_machine_date": {
"description": "When the user first called an endpoint from their machine (i.e. not a litterbox execution).",
"type": "string"
},
"first_litterbox_execute_date": {
"description": "When the user first used the litterbox.",
"type": "string"
"type": "string",
"format": "date-time"
},
"first_token_date": {
"nullable": true,
"title": "DateTime",
"description": "When the user created their first token.",
"type": "string"
"type": "string",
"format": "date-time"
}
}
},
Expand Down Expand Up @@ -16305,6 +16401,32 @@
}
]
},
"PerspectiveCameraParameters": {
"description": "Defines a perspective view.",
"type": "object",
"properties": {
"fov_y": {
"description": "Camera frustum vertical field of view.",
"type": "number",
"format": "float"
},
"z_far": {
"description": "Camera frustum far plane.",
"type": "number",
"format": "float"
},
"z_near": {
"description": "Camera frustum near plane.",
"type": "number",
"format": "float"
}
},
"required": [
"fov_y",
"z_far",
"z_near"
]
},
"PlaneIntersectAndProject": {
"description": "Corresponding coordinates of given window coordinates, intersected on given plane.",
"type": "object",
Expand Down Expand Up @@ -19313,7 +19435,7 @@
"tags": [
{
"name": "ai",
"description": "AI uses machine learning to generate 3D meshes.",
"description": "AI uses machine learning to generate CAD models.",
"externalDocs": {
"url": "https://docs.kittycad.io/api/ai"
}
Expand Down

0 comments on commit 37e4f63

Please sign in to comment.