Compare commits

...

36 Commits

Author SHA1 Message Date
4f29f55190 updates
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-10-17 19:39:06 -07:00
6ad21a2c87 Update api spec (#159)
* YOYO NEW API SPEC!

* I have generated the latest API!

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-10-17 15:35:56 -07:00
036965255a Update api spec (#157)
* YOYO NEW API SPEC!

* I have generated the latest API!

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-10-12 11:02:59 -05:00
4120a139cd Update api spec (#152)
* YOYO NEW API SPEC!

* I have generated the latest API!

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-29 18:04:23 -07:00
12c164620b updates
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-09-29 16:05:40 -07:00
31cd9e532d bump version
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-09-29 15:52:28 -07:00
29b0200c4c Update api spec (#145)
* YOYO NEW API SPEC!

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-29 15:51:03 -07:00
ba3fb82a86 Bump pytest from 7.4.1 to 7.4.2 (#146)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.1 to 7.4.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.4.1...7.4.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 15:26:35 -07:00
4c10c47b4a Bump ruff from 0.0.286 to 0.0.291 (#151)
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.0.286 to 0.0.291.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md)
- [Commits](https://github.com/astral-sh/ruff/compare/v0.0.286...v0.0.291)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 15:22:27 -07:00
2e279da9c1 Bump httpx from 0.24.0 to 0.25.0 (#147)
Bumps [httpx](https://github.com/encode/httpx) from 0.24.0 to 0.25.0.
- [Release notes](https://github.com/encode/httpx/releases)
- [Changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/encode/httpx/compare/0.24.0...0.25.0)

---
updated-dependencies:
- dependency-name: httpx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 15:17:30 -07:00
12e5baef9e Bump types-toml from 0.10.8.6 to 0.10.8.7 (#144)
Bumps [types-toml](https://github.com/python/typeshed) from 0.10.8.6 to 0.10.8.7.
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-toml
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 15:14:19 -07:00
0ef8f505ad Bump sphinx-autodoc-typehints from 1.19.1 to 1.24.0 (#141)
Bumps [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) from 1.19.1 to 1.24.0.
- [Release notes](https://github.com/tox-dev/sphinx-autodoc-typehints/releases)
- [Changelog](https://github.com/tox-dev/sphinx-autodoc-typehints/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tox-dev/sphinx-autodoc-typehints/compare/1.19.1...1.24.0)

---
updated-dependencies:
- dependency-name: sphinx-autodoc-typehints
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-29 15:09:19 -07:00
01a73859d4 Update api spec (#140)
* YOYO NEW API SPEC!

* bump version

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* I have generated the latest API!

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-06 11:27:00 -07:00
f63509a1eb Bump pytest from 7.3.1 to 7.4.1 (#138)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.1 to 7.4.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.3.1...7.4.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-06 11:04:43 -07:00
7cb8d5327f Bump jsonpatch from 1.32 to 1.33 (#137)
Bumps [jsonpatch](https://github.com/stefankoegl/python-json-patch) from 1.32 to 1.33.
- [Commits](https://github.com/stefankoegl/python-json-patch/compare/v1.32...v1.33)

---
updated-dependencies:
- dependency-name: jsonpatch
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-06 11:01:18 -07:00
1f9a787c15 Bump types-python-dateutil from 2.8.19.12 to 2.8.19.14 (#134)
Bumps [types-python-dateutil](https://github.com/python/typeshed) from 2.8.19.12 to 2.8.19.14.
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-python-dateutil
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-06 10:58:42 -07:00
3e2c9450dc Bump pytest-cov from 4.0.0 to 4.1.0 (#136)
Bumps [pytest-cov](https://github.com/pytest-dev/pytest-cov) from 4.0.0 to 4.1.0.
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest-cov/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: pytest-cov
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-06 10:51:02 -07:00
eb8d1b77bb Bump actions/checkout from 3 to 4 (#139)
* Bump actions/checkout from 3 to 4

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* I have generated the latest API!

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-09-06 10:47:43 -07:00
d5184bf172 Bump pytest-asyncio from 0.21.0 to 0.21.1 (#133)
Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) from 0.21.0 to 0.21.1.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.21.0...v0.21.1)

---
updated-dependencies:
- dependency-name: pytest-asyncio
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-06 10:47:22 -07:00
3cad86c5a3 updates
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-30 18:39:19 -07:00
63824cd04f Update api spec (#132)
* YOYO NEW API SPEC!

* I have generated the latest API!

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-30 18:30:23 -07:00
816904419e Bump tornado from 6.3.1 to 6.3.3 (#130)
Bumps [tornado](https://github.com/tornadoweb/tornado) from 6.3.1 to 6.3.3.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](https://github.com/tornadoweb/tornado/compare/v6.3.1...v6.3.3)

---
updated-dependencies:
- dependency-name: tornado
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-30 18:30:12 -07:00
e68857f4c9 Bump certifi from 2022.12.7 to 2023.7.22 (#131)
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-30 18:30:00 -07:00
db1bd33c79 fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-30 16:59:35 -07:00
dea0d637fe fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-30 16:24:09 -07:00
2e1c75769f updates
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-30 16:18:39 -07:00
8162fa1964 Update api spec (#127)
* YOYO NEW API SPEC!

* bump version

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* some fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fixes #128

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* mypy fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-30 15:59:51 -07:00
d737fb4e8f Update ruff requirement from ^0.0.284 to ^0.0.286 (#129)
Updates the requirements on [ruff](https://github.com/astral-sh/ruff) to permit the latest version.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/BREAKING_CHANGES.md)
- [Commits](https://github.com/astral-sh/ruff/compare/v0.0.284...v0.0.286)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-30 12:24:05 -07:00
686ec0cb36 bump versino
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-17 14:39:54 -07:00
f522911d7b Update api spec (#125)
* YOYO NEW API SPEC!

* I have generated the latest API!

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-17 14:30:53 -07:00
1e693890ef fix
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-17 14:13:56 -07:00
755a4fd789 Revert "fixes"
This reverts commit 581c06a943.
2023-08-17 14:02:51 -07:00
581c06a943 fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-17 14:01:41 -07:00
3ce38b0b26 Delete .DS_Store 2023-08-17 13:36:24 -07:00
d8a3120db3 Delete .DS_Store 2023-08-17 13:35:43 -07:00
968e8bbefd fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2023-08-17 13:34:47 -07:00
329 changed files with 44730 additions and 31784 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -15,7 +15,7 @@ jobs:
black:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4

View File

@ -22,7 +22,7 @@ jobs:
python-version: [3.8, 3.9]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:

View File

@ -15,7 +15,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:

View File

@ -16,7 +16,7 @@ jobs:
if: ${{ github.event.pull_request.head.repo.full_name == github.repository }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Run generate

View File

@ -8,7 +8,7 @@ jobs:
name: make-release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: '3.x'

View File

@ -15,7 +15,7 @@ jobs:
mypy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4

View File

@ -15,7 +15,7 @@ jobs:
ruff:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4

View File

@ -15,7 +15,7 @@ jobs:
name: update-spec
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: make generate
shell: bash
run: |
@ -34,7 +34,7 @@ jobs:
echo "No files changed, proceeding";
fi
# Checkout the docs repo since we will want to update the files there.
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
repository: 'kittycad/website'
path: 'docs'

1
.gitignore vendored
View File

@ -22,7 +22,6 @@ dmypy.json
/coverage.xml
/.coverage
poetry.lock
testing
# Sphinx documentation

1939
assets/ORIGINALVOXEL-3.obj Normal file

File diff suppressed because it is too large Load Diff

BIN
docs/.DS_Store vendored

Binary file not shown.

View File

@ -35,7 +35,7 @@ def main():
# Add the client information to the generation.
data["info"]["x-python"] = {
"client": """# Create a client with your token.
from kittycad import Client
from kittycad.client import Client
client = Client(token="$TOKEN")
@ -43,7 +43,7 @@ client = Client(token="$TOKEN")
# Create a new client with your token parsed from the environment variable:
# `KITTYCAD_API_TOKEN`.
from kittycad import ClientFromEnv
from kittycad.client import ClientFromEnv
client = ClientFromEnv()
@ -61,10 +61,19 @@ client = ClientFromEnv()
# Create the json patch document.
patch = jsonpatch.make_patch(original, data)
# Convert this to a dict.
patch = json.loads(patch.to_string())
new_patch = []
# Make sure we aren't changing any components/schemas.
for index, p in enumerate(patch):
if not p["path"].startswith("/components"):
new_patch.append(p)
# Rewrite the spec back out.
patch_file = os.path.join(cwd, "kittycad.py.patch.json")
f = open(patch_file, "w")
f.write(patch.to_string())
f.write(json.dumps(new_patch, indent=2))
f.close()
# Write all the examples to a file.
@ -379,9 +388,6 @@ def generatePath(path: str, name: str, method: str, endpoint: dict, data: dict)
else:
success_type = endpoint_refs[0]
if fn_name == "get_file_conversion" or fn_name == "create_file_conversion":
fn_name += "_with_base64_helper"
example_imports = (
"""
from kittycad.client import ClientFromEnv
@ -394,15 +400,6 @@ from kittycad.types import Response
"""
)
if fn_name.endswith("_with_base64_helper"):
example_imports += (
"""from kittycad.api."""
+ tag_name
+ """ import """
+ fn_name.replace("_with_base64_helper", "")
+ "\n"
)
# Iterate over the parameters.
params_str = ""
if "parameters" in endpoint:
@ -475,16 +472,7 @@ from kittycad.types import Response
example_imports + "from typing import Union, Any, Optional, List, Tuple\n"
)
if fn_name.endswith("_with_base64_helper"):
example_variable = (
"result: "
+ response_type.replace(
"FileConversion", "Tuple[FileConversion, bytes]"
)
+ " = "
)
else:
example_variable = "result: " + response_type + " = "
example_variable = "result: " + response_type + " = "
example_imports = example_imports + "from kittycad.types import Response\n"
example_imports = example_imports + "from kittycad.models import Error\n"
@ -516,10 +504,6 @@ from kittycad.types import Response
and success_type != ""
):
example_success_type = success_type
if fn_name.endswith("_with_base64_helper"):
example_success_type = example_success_type.replace(
"FileConversion", "Tuple[FileConversion, bytes]"
)
short_sync_example = short_sync_example + (
"""
@ -541,7 +525,7 @@ from kittycad.types import Response
# OR if you need more info (e.g. status_code)
"""
+ example_variable_response
+ fn_name.replace("_with_base64_helper", "")
+ fn_name
+ """.sync_detailed(client=client,\n"""
+ params_str
+ """)
@ -567,7 +551,7 @@ async def test_"""
"""
+ example_variable_response
+ "await "
+ fn_name.replace("_with_base64_helper", "")
+ fn_name
+ """.asyncio_detailed(client=client,\n"""
+ params_str
+ """)"""
@ -963,6 +947,13 @@ def generateTypes(cwd: str, parser: dict):
generateType(path, key, schema, data)
f.write("from ." + camel_to_snake(key) + " import " + key + "\n")
# This is a hot fix for the empty type.
# We likely need a better way to handle this.
f.write("from .empty import Empty\n")
# Add the Base64Data type.
f.write("from .base64data import Base64Data\n")
# Close the file.
f.close()
@ -994,6 +985,8 @@ def generateType(path: str, name: str, schema: dict, data: dict):
return
elif "oneOf" in schema:
generateOneOfType(file_path, name, schema, data)
elif "anyOf" in schema:
generateAnyOfType(file_path, name, schema, data)
else:
logging.error("schema: ", [schema])
logging.error("unsupported type: ", name)
@ -1099,6 +1092,123 @@ def generateEnumTypeCode(
return value
def generateAnyOfType(path: str, name: str, schema: dict, data: dict):
logging.info("generating type: ", name, " at: ", path)
if isEnumWithDocsOneOf(schema):
additional_docs = []
enum = []
# We want to treat this as an enum with additional docs.
for any_of in schema["anyOf"]:
enum.append(any_of["enum"][0])
if "description" in any_of:
additional_docs.append(any_of["description"])
else:
additional_docs.append("")
# Write the enum.
schema["enum"] = enum
schema["type"] = "string"
generateEnumType(path, name, schema, "string", additional_docs)
# return early.
return
# Open our file.
f = open(path, "w")
# Import the refs if there are any.
all_options = []
for any_of in schema["anyOf"]:
if "allOf" in any_of:
for all_of in any_of["allOf"]:
if "$ref" in all_of:
ref = all_of["$ref"]
ref_name = ref[ref.rfind("/") + 1 :]
f.write(
"from ."
+ camel_to_snake(ref_name)
+ " import "
+ ref_name
+ "\n"
)
all_options.append(ref_name)
if "$ref" in any_of:
ref = any_of["$ref"]
ref_name = ref[ref.rfind("/") + 1 :]
f.write("from ." + camel_to_snake(ref_name) + " import " + ref_name + "\n")
all_options.append(ref_name)
if isNestedObjectOneOf(schema):
# We want to write each of the nested objects.
for any_of in schema["anyOf"]:
# Get the nested object.
if "properties" in any_of:
for prop_name in any_of["properties"]:
nested_object = any_of["properties"][prop_name]
if nested_object == {}:
f.write("from typing import Any\n")
f.write(prop_name + " = Any\n")
f.write("\n")
all_options.append(prop_name)
elif "$ref" in nested_object:
ref = nested_object["$ref"]
ref_name = ref[ref.rfind("/") + 1 :]
f.write(
"from ."
+ camel_to_snake(ref_name)
+ " import "
+ ref_name
+ "\n"
)
f.write("\n")
if prop_name != ref_name:
f.write(prop_name + " = " + ref_name + "\n")
f.write("\n")
all_options.append(prop_name)
else:
object_code = generateObjectTypeCode(
prop_name, nested_object, "object", data, None
)
f.write(object_code)
f.write("\n")
all_options.append(prop_name)
elif "type" in any_of and any_of["type"] == "string":
enum_code = generateEnumTypeCode(
any_of["enum"][0], any_of, "string", []
)
f.write(enum_code)
f.write("\n")
all_options.append(any_of["enum"][0])
# Check if each any_of has the same enum of one.
tag = getTagAnyOf(schema)
if tag is not None:
# Generate each of the options from the tag.
for any_of in schema["anyOf"]:
# Get the value of the tag.
object_name = any_of["properties"][tag]["enum"][0]
object_code = generateObjectTypeCode(
object_name, any_of, "object", data, tag
)
f.write(object_code)
f.write("\n")
all_options.append(object_name)
# Write the sum type.
f.write("from typing import Union\n")
f.write(name + " = Union[")
for num, option in enumerate(all_options, start=0):
if num == 0:
f.write(option)
else:
f.write(", " + option + "")
f.write("]\n")
# Close the file.
f.close()
def generateOneOfType(path: str, name: str, schema: dict, data: dict):
logging.info("generating type: ", name, " at: ", path)
@ -1219,8 +1329,11 @@ def generateObjectTypeCode(
f = io.StringIO()
has_date_time = hasDateTime(schema)
has_base_64 = hasBase64(schema)
if has_date_time:
f.write("import datetime\n")
if has_base_64:
f.write("from ..models.base64data import Base64Data\n")
f.write(
"from typing import Any, Dict, List, Type, TypeVar, Union, cast, deprecated\n"
)
@ -1407,6 +1520,22 @@ def renderTypeToDict(f, property_name: str, property_schema: dict, data: dict):
)
# return early
return
elif property_schema["format"] == "byte":
f.write("\t\t" + property_name + ": Union[Unset, str] = UNSET\n")
f.write(
"\t\tif not isinstance(self."
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write(
"\t\t\t"
+ clean_parameter_name(property_name)
+ " = self."
+ clean_parameter_name(property_name)
+ ".get_encoded()\n"
)
# return early
return
f.write(
"\t\t"
@ -1439,6 +1568,79 @@ def renderTypeToDict(f, property_name: str, property_schema: dict, data: dict):
+ clean_parameter_name(property_name)
+ "\n"
)
elif "additionalProperties" in property_schema and property_type == "object":
if "$ref" in property_schema["additionalProperties"]:
ref = property_schema["additionalProperties"]["$ref"].replace(
"#/components/schemas/", ""
)
f.write(
"\t\t" + property_name + ": Union[Unset, Dict[str, Any]] = UNSET\n"
)
f.write(
"\t\tif not isinstance(self."
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write("\t\t\tnew_dict: Dict[str, Any] = {}\n")
f.write(
"\t\t\tfor key, value in self."
+ clean_parameter_name(property_name)
+ ".items():\n"
)
f.write("\t\t\t\tnew_dict[key] = value.to_dict()\n")
f.write(
"\t\t\t" + clean_parameter_name(property_name) + " = new_dict\n"
)
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "integer"
):
f.write(
"\t\t"
+ clean_parameter_name(property_name)
+ " = self."
+ clean_parameter_name(property_name)
+ "\n"
)
f.write("\n")
elif (
"format" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["format"] == "byte"
):
f.write(
"\t\t" + property_name + ": Union[Unset, Dict[str, str]] = UNSET\n"
)
f.write(
"\t\tif not isinstance(self."
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write("\t\t\tnew_dict: Dict[str, str] = {}\n")
f.write(
"\t\t\tfor key, value in self."
+ clean_parameter_name(property_name)
+ ".items():\n"
)
f.write("\t\t\t\tnew_dict[key] = value.get_encoded()\n")
f.write(
"\t\t\t" + clean_parameter_name(property_name) + " = new_dict\n"
)
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "string"
):
f.write(
"\t\t"
+ clean_parameter_name(property_name)
+ " = self."
+ clean_parameter_name(property_name)
+ "\n"
)
f.write("\n")
else:
# Throw an error.
print("property: ", property_schema)
raise Exception("Unknown property type")
elif property_type == "array":
if "items" in property_schema:
if "$ref" in property_schema["items"]:
@ -1573,9 +1775,59 @@ def renderTypeInit(f, property_name: str, property_schema: dict, data: dict):
)
# Return early.
return
elif property_schema["format"] == "byte":
f.write(
"\t" + property_name + ": Union[Unset, Base64Data] = UNSET\n"
)
# Return early.
return
f.write("\t" + property_name + ": Union[Unset, str] = UNSET\n")
elif "additionalProperties" in property_schema and property_type == "object":
if "$ref" in property_schema["additionalProperties"]:
ref = property_schema["additionalProperties"]["$ref"].replace(
"#/components/schemas/", ""
)
# Make sure we import the model.
f.write(
"\tfrom ..models." + camel_to_snake(ref) + " import " + ref + "\n"
)
f.write(
"\t"
+ property_name
+ ": Union[Unset, Dict[str, "
+ ref
+ "]] = UNSET\n"
)
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "integer"
):
f.write(
"\t" + property_name + ": Union[Unset, Dict[str, int]] = UNSET\n"
)
elif (
"format" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["format"] == "byte"
):
f.write(
"\t"
+ property_name
+ ": Union[Unset, Dict[str, Base64Data]] = UNSET\n"
)
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "string"
):
f.write(
"\t" + property_name + ": Union[Unset, Dict[str, str]] = UNSET\n"
)
else:
# Throw an error.
print("property: ", property_schema)
raise Exception("Unknown property type")
elif property_type == "object":
# TODO: we need to get the name of the object
f.write("\t" + property_name + ": Union[Unset, Any] = UNSET\n")
elif property_type == "integer":
f.write("\t" + property_name + ": Union[Unset, int] = UNSET\n")
@ -1694,6 +1946,38 @@ def renderTypeFromDict(f, property_name: str, property_schema: dict, data: dict)
f.write("\n")
# Return early.
return
elif property_schema["format"] == "byte":
f.write(
"\t\t_"
+ clean_parameter_name(property_name)
+ ' = d.pop("'
+ property_name
+ '", UNSET)\n'
)
f.write(
"\t\t"
+ clean_parameter_name(property_name)
+ ": Union[Unset, Base64Data]\n"
)
f.write(
"\t\tif isinstance(_"
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write(
"\t\t\t" + clean_parameter_name(property_name) + " = UNSET\n"
)
f.write("\t\telse:\n")
f.write(
"\t\t\t"
+ clean_parameter_name(property_name)
+ " = Base64Data(bytes(_"
+ clean_parameter_name(property_name)
+ ", 'utf-8'))\n"
)
f.write("\n")
# Return early.
return
f.write(
"\t\t"
@ -1730,6 +2014,90 @@ def renderTypeFromDict(f, property_name: str, property_schema: dict, data: dict)
+ '", UNSET)\n'
)
f.write("\n")
elif "additionalProperties" in property_schema and property_type == "object":
if "$ref" in property_schema["additionalProperties"]:
ref = property_schema["additionalProperties"]["$ref"].replace(
"#/components/schemas/", ""
)
f.write(
"\t\t_"
+ clean_parameter_name(property_name)
+ ' = d.pop("'
+ property_name
+ '", UNSET)\n'
)
f.write(
"\t\tif isinstance(_"
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write("\t\t\t" + clean_parameter_name(property_name) + " = UNSET\n")
f.write("\t\telse:\n")
f.write(
"\t\t\tnew_map: Dict[str, "
+ ref
+ "] = {}\n\t\t\tfor k, v in _"
+ clean_parameter_name(property_name)
+ ".items():\n\t\t\t\tnew_map[k] = "
+ ref
+ ".from_dict(v) # type: ignore\n\t\t\t"
+ clean_parameter_name(property_name)
+ " = new_map # type: ignore\n"
)
f.write("\n")
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "integer"
):
f.write(
"\t\t"
+ clean_parameter_name(property_name)
+ ' = d.pop("'
+ property_name
+ '", UNSET)\n'
)
f.write("\n")
elif (
"format" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["format"] == "byte"
):
f.write(
"\t\t_"
+ clean_parameter_name(property_name)
+ ' = d.pop("'
+ property_name
+ '", UNSET)\n'
)
f.write(
"\t\tif isinstance(_"
+ clean_parameter_name(property_name)
+ ", Unset):\n"
)
f.write("\t\t\t" + clean_parameter_name(property_name) + " = UNSET\n")
f.write(
"\t\telse:\n\t\t\tnew_map: Dict[str, Base64Data] = {}\n\t\t\tfor k, v in _"
+ clean_parameter_name(property_name)
+ ".items():\n\t\t\t\tnew_map[k] = Base64Data(bytes(v, 'utf-8'))\n\t\t\t"
+ clean_parameter_name(property_name)
+ " = new_map # type: ignore\n"
)
f.write("\n")
elif (
"type" in property_schema["additionalProperties"]
and property_schema["additionalProperties"]["type"] == "string"
):
f.write(
"\t\t"
+ clean_parameter_name(property_name)
+ ' = d.pop("'
+ property_name
+ '", UNSET)\n'
)
f.write("\n")
else:
# Throw an error.
print("property: ", property_schema)
raise Exception("Unknown property type")
elif property_type == "array":
if "items" in property_schema:
if "$ref" in property_schema["items"]:
@ -1861,6 +2229,27 @@ def hasDateTime(schema: dict) -> bool:
return False
def hasBase64(schema: dict) -> bool:
# Generate the type.
if "type" in schema:
type_name = schema["type"]
if type_name == "object":
if "additionalProperties" in schema:
return hasBase64(schema["additionalProperties"])
# Iternate over the properties.
if "properties" in schema:
for property_name in schema["properties"]:
property_schema = schema["properties"][property_name]
has_base64 = hasBase64(property_schema)
if has_base64:
return True
elif type_name == "string" and "format" in schema:
if schema["format"] == "byte":
return True
return False
def getRefs(schema: dict) -> List[str]:
refs = []
if "$ref" in schema:
@ -1888,6 +2277,9 @@ def getRefs(schema: dict) -> List[str]:
for ref in schema_refs:
if ref not in refs:
refs.append(ref)
elif schema == {"type": "object"}:
# do nothing
pass
else:
logging.error("unsupported type: ", schema)
raise Exception("unsupported type: ", schema)
@ -2074,7 +2466,7 @@ def camel_to_screaming_snake(name: str):
# Change `file_conversion` to `FileConversion`
def snake_to_title(name: str):
return name.title().replace("_", "")
return name.title().replace("_", "").replace("3D", "3d")
def get_function_parameters(
@ -2145,6 +2537,34 @@ def isNestedObjectOneOf(schema: dict) -> bool:
return is_nested_object
def getTagAnyOf(schema: dict) -> Optional[str]:
tag = None
for any_of in schema["anyOf"]:
has_tag = False
# Check if each are an object w 1 property in it.
if "type" in any_of and any_of["type"] == "object" and "properties" in any_of:
for prop_name in any_of["properties"]:
prop = any_of["properties"][prop_name]
if (
"type" in prop
and prop["type"] == "string"
and "enum" in prop
and len(prop["enum"]) == 1
):
if tag is not None and tag != prop_name:
has_tag = False
break
else:
has_tag = True
tag = prop_name
if has_tag is False:
tag = None
break
return tag
def getTagOneOf(schema: dict) -> Optional[str]:
tag = None
for one_of in schema["oneOf"]:

View File

@ -5,10 +5,14 @@ set -o pipefail
# Fix for ci.
git config --global --add safe.directory /home/user/src
git add kittycad/models/base64data.py
git add kittycad/models/empty.py
# Cleanup old stuff.
rm -rf kittycad/models
rm -rf kittycad/api
git checkout kittycad/api/file/*_with_base64_helper.py &>/dev/null
git checkout kittycad/models/base64data.py
git checkout kittycad/models/empty.py
# Generate new.
poetry run python generate/generate.py
@ -17,7 +21,7 @@ poetry run python generate/generate.py
poetry run isort .
poetry run black . generate/generate.py docs/conf.py kittycad/client_test.py kittycad/examples_test.py
poetry run ruff check --fix .
poetry run mypy .
poetry run mypy . || true
# Run the tests.

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
""" Contains methods for accessing the ai API paths: AI uses machine learning to generate 3D meshes. """ # noqa: E501
""" Contains methods for accessing the ai API paths: AI uses machine learning to generate 3D meshes. """ # noqa: E501

View File

@ -1,137 +0,0 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.error import Error
from ...models.file_export_format import FileExportFormat
from ...models.image_type import ImageType
from ...models.mesh import Mesh
from ...types import Response
def _get_kwargs(
input_format: ImageType,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ai/image-to-3d/{input_format}/{output_format}".format(
client.base_url,
input_format=input_format,
output_format=output_format,
) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Mesh, Error]]:
if response.status_code == 200:
response_200 = Mesh.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Mesh, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
input_format: ImageType,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[Mesh, Error]]]:
kwargs = _get_kwargs(
input_format=input_format,
output_format=output_format,
body=body,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
input_format: ImageType,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[Mesh, Error]]:
"""This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return sync_detailed(
input_format=input_format,
output_format=output_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
input_format: ImageType,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[Mesh, Error]]]:
kwargs = _get_kwargs(
input_format=input_format,
output_format=output_format,
body=body,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
input_format: ImageType,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[Mesh, Error]]:
"""This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return (
await asyncio_detailed(
input_format=input_format,
output_format=output_format,
body=body,
client=client,
)
).parsed

View File

@ -1,131 +0,0 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.error import Error
from ...models.file_export_format import FileExportFormat
from ...models.mesh import Mesh
from ...types import Response
def _get_kwargs(
output_format: FileExportFormat,
prompt: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ai/text-to-3d/{output_format}".format(
client.base_url,
output_format=output_format,
) # noqa: E501
if prompt is not None:
if "?" in url:
url = url + "&prompt=" + str(prompt)
else:
url = url + "?prompt=" + str(prompt)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Mesh, Error]]:
if response.status_code == 200:
response_200 = Mesh.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Mesh, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
output_format: FileExportFormat,
prompt: str,
*,
client: Client,
) -> Response[Optional[Union[Mesh, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
prompt=prompt,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
output_format: FileExportFormat,
prompt: str,
*,
client: Client,
) -> Optional[Union[Mesh, Error]]:
"""This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return sync_detailed(
output_format=output_format,
prompt=prompt,
client=client,
).parsed
async def asyncio_detailed(
output_format: FileExportFormat,
prompt: str,
*,
client: Client,
) -> Response[Optional[Union[Mesh, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
prompt=prompt,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
output_format: FileExportFormat,
prompt: str,
*,
client: Client,
) -> Optional[Union[Mesh, Error]]:
"""This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return (
await asyncio_detailed(
output_format=output_format,
prompt=prompt,
client=client,
)
).parsed

View File

@ -0,0 +1,205 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.error import Error
from ...models.file_export_format import FileExportFormat
from ...models.text_to_cad import TextToCad
from ...models.text_to_cad_create_body import TextToCadCreateBody
from ...types import Response
def _get_kwargs(
output_format: FileExportFormat,
body: TextToCadCreateBody,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ai/text-to-cad/{output_format}".format(client.base_url, output_format=output_format,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[TextToCad, Error]] :
if response.status_code == 201:
response_201 = TextToCad.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[TextToCad, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
output_format: FileExportFormat,
body: TextToCadCreateBody,
*,
client: Client,
) -> Response[Optional[Union[TextToCad, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
body=body,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
output_format: FileExportFormat,
body: TextToCadCreateBody,
*,
client: Client,
) -> Optional[Union[TextToCad, Error]] :
"""This 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.
This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return sync_detailed(
output_format=output_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
output_format: FileExportFormat,
body: TextToCadCreateBody,
*,
client: Client,
) -> Response[Optional[Union[TextToCad, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
body=body,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
output_format: FileExportFormat,
body: TextToCadCreateBody,
*,
client: Client,
) -> Optional[Union[TextToCad, Error]] :
"""This 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.
This is an alpha endpoint. It will change in the future. The current output is honestly pretty bad. So if you find this endpoint, you get what you pay for, which currently is nothing. But in the future will be made a lot better.""" # noqa: E501
return (
await asyncio_detailed(
output_format=output_format,
body=body,
client=client,
)
).parsed

View File

@ -0,0 +1,205 @@
from typing import Any, Dict, Optional
import httpx
from ...client import Client
from ...models.ai_feedback import AiFeedback
from ...models.error import Error
from ...types import Response
def _get_kwargs(
id: str,
feedback: AiFeedback,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/text-to-cad/{id}".format(client.base_url, id=id,) # noqa: E501
if feedback is not None:
if "?" in url:
url = url + "&feedback=" + str(feedback)
else:
url = url + "?feedback=" + str(feedback)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
id: str,
feedback: AiFeedback,
*,
client: Client,
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
id=id,
feedback=feedback,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
id: str,
feedback: AiFeedback,
*,
client: Client,
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. The user must be the owner of the text-to-CAD model, in order to give feedback.""" # noqa: E501
return sync_detailed(
id=id,
feedback=feedback,
client=client,
).parsed
async def asyncio_detailed(
id: str,
feedback: AiFeedback,
*,
client: Client,
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
id=id,
feedback=feedback,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
id: str,
feedback: AiFeedback,
*,
client: Client,
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. The user must be the owner of the text-to-CAD model, in order to give feedback.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
feedback=feedback,
client=client,
)
).parsed

View File

@ -0,0 +1,262 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.created_at_sort_mode import CreatedAtSortMode
from ...models.error import Error
from ...models.text_to_cad_results_page import TextToCadResultsPage
from ...types import Response
def _get_kwargs(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/user/text-to-cad".format(client.base_url, ) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[TextToCadResultsPage, Error]] :
if response.status_code == 200:
response_200 = TextToCadResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[TextToCadResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[TextToCadResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
response = httpx.get(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[TextToCadResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the text-to-CAD models for the authenticated user.
The text-to-CAD models are returned in order of creation, with the most recently created text-to-CAD models first.""" # noqa: E501
return sync_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
).parsed
async def asyncio_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[TextToCadResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.get(**kwargs)
return _build_response(response=response)
async def asyncio(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[TextToCadResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the text-to-CAD models for the authenticated user.
The text-to-CAD models are returned in order of creation, with the most recently created text-to-CAD models first.""" # noqa: E501
return (
await asyncio_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the api_calls API paths: API calls that have been performed by users can be queried by the API. This is helpful for debugging as well as billing. """ # noqa: E501
""" Contains methods for accessing the api_calls API paths: API calls that have been performed by users can be queried by the API. This is helpful for debugging as well as billing. """ # noqa: E501

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/api-calls/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/api-calls/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,27 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiCallWithPrice, Error]]:
if response.status_code == 200:
response_200 = ApiCallWithPrice.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiCallWithPrice, Error]] :
if response.status_code == 200:
response_200 = ApiCallWithPrice.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -56,12 +64,21 @@ def _build_response(
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -74,27 +91,45 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[Union[ApiCallWithPrice, Error]]:
) -> Optional[Union[ApiCallWithPrice, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API call for the user.
If the user is not authenticated to view the specified API call, then it is not returned.
Only KittyCAD employees can view API calls for other users.""" # noqa: E501
If the user is not authenticated to view the specified API call, then it is not returned.
Only KittyCAD employees can view API calls for other users.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -105,17 +140,26 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Union[ApiCallWithPrice, Error]]:
) -> Optional[Union[ApiCallWithPrice, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API call for the user.
If the user is not authenticated to view the specified API call, then it is not returned.
Only KittyCAD employees can view API calls for other users.""" # noqa: E501
If the user is not authenticated to view the specified API call, then it is not returned.
Only KittyCAD employees can view API calls for other users.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/api-calls/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/user/api-calls/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,27 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiCallWithPrice, Error]]:
if response.status_code == 200:
response_200 = ApiCallWithPrice.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiCallWithPrice, Error]] :
if response.status_code == 200:
response_200 = ApiCallWithPrice.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -56,12 +64,21 @@ def _build_response(
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -74,25 +91,43 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[Union[ApiCallWithPrice, Error]]:
) -> Optional[Union[ApiCallWithPrice, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API call for the user.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
) -> Response[Optional[Union[ApiCallWithPrice, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -103,15 +138,24 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Union[ApiCallWithPrice, Error]]:
) -> Optional[Union[ApiCallWithPrice, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API call for the user.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -10,19 +10,28 @@ from ...types import Response
def _get_kwargs(
group_by: ApiCallQueryGroupBy,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/api-call-metrics".format(
client.base_url,
) # noqa: E501
url = "{}/api-call-metrics".format(client.base_url, ) # noqa: E501
if group_by is not None:
if "?" in url:
url = url + "&group_by=" + str(group_by)
else:
url = url + "?group_by=" + str(group_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -32,27 +41,30 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[List[ApiCallQueryGroup], Error]]:
if response.status_code == 200:
response_200 = [ApiCallQueryGroup.from_dict(item) for item in response.json()]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[List[ApiCallQueryGroup], Error]] :
if response.status_code == 200:
response_200 = [
ApiCallQueryGroup.from_dict(item)
for item in response.json()
]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -62,12 +74,21 @@ def _build_response(
def sync_detailed(
group_by: ApiCallQueryGroupBy,
*,
client: Client,
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
kwargs = _get_kwargs(
group_by=group_by,
client=client,
)
@ -80,25 +101,43 @@ def sync_detailed(
def sync(
group_by: ApiCallQueryGroupBy,
*,
client: Client,
) -> Optional[Union[List[ApiCallQueryGroup], Error]]:
) -> Optional[Union[List[ApiCallQueryGroup], Error]] :
"""This endpoint requires authentication by a KittyCAD employee. The API calls are grouped by the parameter passed.""" # noqa: E501
return sync_detailed(
group_by=group_by,
client=client,
).parsed
async def asyncio_detailed(
group_by: ApiCallQueryGroupBy,
*,
client: Client,
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
) -> Response[Optional[Union[List[ApiCallQueryGroup], Error]]]:
kwargs = _get_kwargs(
group_by=group_by,
client=client,
)
@ -109,15 +148,24 @@ async def asyncio_detailed(
async def asyncio(
group_by: ApiCallQueryGroupBy,
*,
client: Client,
) -> Optional[Union[List[ApiCallQueryGroup], Error]]:
) -> Optional[Union[List[ApiCallQueryGroup], Error]] :
"""This endpoint requires authentication by a KittyCAD employee. The API calls are grouped by the parameter passed.""" # noqa: E501
return (
await asyncio_detailed(
group_by=group_by,
client=client,
)
).parsed

View File

@ -10,18 +10,27 @@ from ...models.file_density import FileDensity
from ...models.file_mass import FileMass
from ...models.file_surface_area import FileSurfaceArea
from ...models.file_volume import FileVolume
from ...models.text_to_cad import TextToCad
from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/async/operations/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/async/operations/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -31,102 +40,89 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]:
if response.status_code == 200:
data = response.json()
try:
if not isinstance(data, dict):
raise TypeError()
option_file_conversion = FileConversion.from_dict(data)
return option_file_conversion
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_center_of_mass = FileCenterOfMass.from_dict(data)
return option_file_center_of_mass
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_mass = FileMass.from_dict(data)
return option_file_mass
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_volume = FileVolume.from_dict(data)
return option_file_volume
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_density = FileDensity.from_dict(data)
return option_file_density
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_surface_area = FileSurfaceArea.from_dict(data)
return option_file_surface_area
except ValueError:
raise
except TypeError:
raise
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]] :
if response.status_code == 200:
data = response.json()
try:
if not isinstance(data, dict):
raise TypeError()
option_file_conversion = FileConversion.from_dict(data)
return option_file_conversion
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_center_of_mass = FileCenterOfMass.from_dict(data)
return option_file_center_of_mass
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_mass = FileMass.from_dict(data)
return option_file_mass
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_volume = FileVolume.from_dict(data)
return option_file_volume
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_density = FileDensity.from_dict(data)
return option_file_density
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_file_surface_area = FileSurfaceArea.from_dict(data)
return option_file_surface_area
except ValueError:
pass
except TypeError:
pass
try:
if not isinstance(data, dict):
raise TypeError()
option_text_to_cad = TextToCad.from_dict(data)
return option_text_to_cad
except ValueError:
raise
except TypeError:
raise
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[
Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]
]:
) -> Response[Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -136,24 +132,21 @@ def _build_response(
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[
Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]
]:
) -> Response[Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -166,51 +159,46 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]:
) -> Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]] :
"""Get the status and output of an async operation.
This endpoint requires authentication by any KittyCAD user. It returns details of the requested async operation for the user.
If the user is not authenticated to view the specified async operation, then it is not returned.
Only KittyCAD employees with the proper access can view async operations for other users.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It returns details of the requested async operation for the user.
If the user is not authenticated to view the specified async operation, then it is not returned.
Only KittyCAD employees with the proper access can view async operations for other users.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[
Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]
]:
) -> Response[Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -221,29 +209,27 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[
Union[
FileConversion,
FileCenterOfMass,
FileMass,
FileVolume,
FileDensity,
FileSurfaceArea,
Error,
]
]:
) -> Optional[Union[FileConversion, FileCenterOfMass, FileMass, FileVolume, FileDensity, FileSurfaceArea, TextToCad, Error]] :
"""Get the status and output of an async operation.
This endpoint requires authentication by any KittyCAD user. It returns details of the requested async operation for the user.
If the user is not authenticated to view the specified async operation, then it is not returned.
Only KittyCAD employees with the proper access can view async operations for other users.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It returns details of the requested async operation for the user.
If the user is not authenticated to view the specified async operation, then it is not returned.
Only KittyCAD employees with the proper access can view async operations for other users.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -10,33 +10,56 @@ from ...types import Response
def _get_kwargs(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/api-calls".format(
client.base_url,
) # noqa: E501
url = "{}/api-calls".format(client.base_url, ) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -46,27 +69,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -76,16 +99,37 @@ def _build_response(
def sync_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -98,33 +142,75 @@ def sync_detailed(
def sync(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by a KittyCAD employee. The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return sync_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
).parsed
async def asyncio_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -135,19 +221,40 @@ async def asyncio_detailed(
async def asyncio(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by a KittyCAD employee. The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return (
await asyncio_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
).parsed

View File

@ -10,35 +10,64 @@ from ...types import Response
def _get_kwargs(
id: str,
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/users/{id}/api-calls".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/users/{id}/api-calls".format(client.base_url, id=id,) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -48,27 +77,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -78,18 +107,45 @@ def _build_response(
def sync_detailed(
id: str,
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
id=id,
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -102,41 +158,94 @@ def sync_detailed(
def sync(
id: str,
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API calls for the authenticated user if "me" is passed as the user id.
Alternatively, you can use the `/user/api-calls` endpoint to get the API calls for your user.
If the authenticated user is a KittyCAD employee, then the API calls are returned for the user specified by the user id.
The API calls are returned in order of creation, with the most recently created API calls first.
""" # noqa: E501
Alternatively, you can use the `/user/api-calls` endpoint to get the API calls for your user.
If the authenticated user is a KittyCAD employee, then the API calls are returned for the user specified by the user id.
The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return sync_detailed(
id=id,
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
).parsed
async def asyncio_detailed(
id: str,
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
id=id,
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -147,25 +256,51 @@ async def asyncio_detailed(
async def asyncio(
id: str,
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API calls for the authenticated user if "me" is passed as the user id.
Alternatively, you can use the `/user/api-calls` endpoint to get the API calls for your user.
If the authenticated user is a KittyCAD employee, then the API calls are returned for the user specified by the user id.
The API calls are returned in order of creation, with the most recently created API calls first.
""" # noqa: E501
Alternatively, you can use the `/user/api-calls` endpoint to get the API calls for your user.
If the authenticated user is a KittyCAD employee, then the API calls are returned for the user specified by the user id.
The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
).parsed

View File

@ -11,40 +11,70 @@ from ...types import Response
def _get_kwargs(
sort_by: CreatedAtSortMode,
status: ApiCallStatus,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/async/operations".format(
client.base_url,
) # noqa: E501
url = "{}/async/operations".format(client.base_url, ) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
if status is not None:
if "?" in url:
url = url + "&status=" + str(status)
else:
url = url + "?status=" + str(status)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -54,27 +84,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[AsyncApiCallResultsPage, Error]]:
if response.status_code == 200:
response_200 = AsyncApiCallResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[AsyncApiCallResultsPage, Error]] :
if response.status_code == 200:
response_200 = AsyncApiCallResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -84,18 +114,45 @@ def _build_response(
def sync_detailed(
sort_by: CreatedAtSortMode,
status: ApiCallStatus,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
status=status,
client=client,
)
@ -108,38 +165,92 @@ def sync_detailed(
def sync(
sort_by: CreatedAtSortMode,
status: ApiCallStatus,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[AsyncApiCallResultsPage, Error]]:
) -> Optional[Union[AsyncApiCallResultsPage, Error]] :
"""For async file conversion operations, this endpoint does not return the contents of converted files (`output`). To get the contents use the `/async/operations/{id}` endpoint.
This endpoint requires authentication by a KittyCAD employee.""" # noqa: E501
This endpoint requires authentication by a KittyCAD employee.""" # noqa: E501
return sync_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
status=status,
client=client,
).parsed
async def asyncio_detailed(
sort_by: CreatedAtSortMode,
status: ApiCallStatus,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
) -> Response[Optional[Union[AsyncApiCallResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
status=status,
client=client,
)
@ -150,22 +261,49 @@ async def asyncio_detailed(
async def asyncio(
sort_by: CreatedAtSortMode,
status: ApiCallStatus,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[AsyncApiCallResultsPage, Error]]:
) -> Optional[Union[AsyncApiCallResultsPage, Error]] :
"""For async file conversion operations, this endpoint does not return the contents of converted files (`output`). To get the contents use the `/async/operations/{id}` endpoint.
This endpoint requires authentication by a KittyCAD employee.""" # noqa: E501
This endpoint requires authentication by a KittyCAD employee.""" # noqa: E501
return (
await asyncio_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
status=status,
client=client,
)
).parsed

View File

@ -10,33 +10,56 @@ from ...types import Response
def _get_kwargs(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/user/api-calls".format(
client.base_url,
) # noqa: E501
url = "{}/user/api-calls".format(client.base_url, ) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -46,27 +69,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
if response.status_code == 200:
response_200 = ApiCallWithPriceResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -76,16 +99,37 @@ def _build_response(
def sync_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -98,35 +142,76 @@ def sync_detailed(
def sync(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API calls for the authenticated user.
The API calls are returned in order of creation, with the most recently created API calls first.
""" # noqa: E501
The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return sync_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
).parsed
async def asyncio_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
) -> Response[Optional[Union[ApiCallWithPriceResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -137,21 +222,41 @@ async def asyncio_detailed(
async def asyncio(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]]:
) -> Optional[Union[ApiCallWithPriceResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API calls for the authenticated user.
The API calls are returned in order of creation, with the most recently created API calls first.
""" # noqa: E501
The API calls are returned in order of creation, with the most recently created API calls first.""" # noqa: E501
return (
await asyncio_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the api_tokens API paths: API tokens allow users to call the API outside of their session token that is used as a cookie in the user interface. Users can create, delete, and list their API tokens. But, of course, you need an API token to do this, so first be sure to generate one in the account UI. """ # noqa: E501
""" Contains methods for accessing the api_tokens API paths: API tokens allow users to call the API outside of their session token that is used as a cookie in the user interface. Users can create, delete, and list their API tokens. But, of course, you need an API token to do this, so first be sure to generate one in the account UI. """ # noqa: E501

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/api-tokens".format(
client.base_url,
) # noqa: E501
url = "{}/user/api-tokens".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,25 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiToken, Error]]:
if response.status_code == 201:
response_201 = ApiToken.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiToken, Error]] :
if response.status_code == 201:
response_201 = ApiToken.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -52,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -68,21 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[ApiToken, Error]]:
) -> Optional[Union[ApiToken, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It creates a new API token for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -93,13 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[ApiToken, Error]]:
) -> Optional[Union[ApiToken, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It creates a new API token for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,14 +8,22 @@ from ...types import Response
def _get_kwargs(
token: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/api-tokens/{token}".format(
client.base_url,
token=token,
) # noqa: E501
url = "{}/user/api-tokens/{token}".format(client.base_url, token=token,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -25,21 +33,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -49,12 +61,21 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -67,27 +88,44 @@ def sync_detailed(
def sync(
token: str,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the requested API token for the user.
This endpoint does not actually delete the API token from the database. It merely marks the token as invalid. We still want to keep the token in the database for historical purposes.
""" # noqa: E501
This endpoint does not actually delete the API token from the database. It merely marks the token as invalid. We still want to keep the token in the database for historical purposes.""" # noqa: E501
return sync_detailed(
token=token,
client=client,
).parsed
async def asyncio_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -98,17 +136,25 @@ async def asyncio_detailed(
async def asyncio(
token: str,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the requested API token for the user.
This endpoint does not actually delete the API token from the database. It merely marks the token as invalid. We still want to keep the token in the database for historical purposes.
""" # noqa: E501
This endpoint does not actually delete the API token from the database. It merely marks the token as invalid. We still want to keep the token in the database for historical purposes.""" # noqa: E501
return (
await asyncio_detailed(
token=token,
client=client,
)
).parsed

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
token: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/api-tokens/{token}".format(
client.base_url,
token=token,
) # noqa: E501
url = "{}/user/api-tokens/{token}".format(client.base_url, token=token,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,25 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiToken, Error]]:
if response.status_code == 200:
response_200 = ApiToken.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiToken, Error]] :
if response.status_code == 200:
response_200 = ApiToken.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,12 +64,21 @@ def _build_response(
def sync_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -72,25 +91,43 @@ def sync_detailed(
def sync(
token: str,
*,
client: Client,
) -> Optional[Union[ApiToken, Error]]:
) -> Optional[Union[ApiToken, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.""" # noqa: E501
return sync_detailed(
token=token,
client=client,
).parsed
async def asyncio_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Union[ApiToken, Error]]]:
) -> Response[Optional[Union[ApiToken, Error]]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -101,15 +138,24 @@ async def asyncio_detailed(
async def asyncio(
token: str,
*,
client: Client,
) -> Optional[Union[ApiToken, Error]]:
) -> Optional[Union[ApiToken, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.""" # noqa: E501
return (
await asyncio_detailed(
token=token,
client=client,
)
).parsed

View File

@ -10,33 +10,56 @@ from ...types import Response
def _get_kwargs(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/user/api-tokens".format(
client.base_url,
) # noqa: E501
url = "{}/user/api-tokens".format(client.base_url, ) # noqa: E501
if limit is not None:
if "?" in url:
url = url + "&limit=" + str(limit)
else:
url = url + "?limit=" + str(limit)
if page_token is not None:
if "?" in url:
url = url + "&page_token=" + str(page_token)
else:
url = url + "?page_token=" + str(page_token)
if sort_by is not None:
if "?" in url:
url = url + "&sort_by=" + str(sort_by)
else:
url = url + "?sort_by=" + str(sort_by)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -46,27 +69,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ApiTokenResultsPage, Error]]:
if response.status_code == 200:
response_200 = ApiTokenResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ApiTokenResultsPage, Error]] :
if response.status_code == 200:
response_200 = ApiTokenResultsPage.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -76,16 +99,37 @@ def _build_response(
def sync_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -98,35 +142,76 @@ def sync_detailed(
def sync(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiTokenResultsPage, Error]]:
) -> Optional[Union[ApiTokenResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API tokens for the authenticated user.
The API tokens are returned in order of creation, with the most recently created API tokens first.
""" # noqa: E501
The API tokens are returned in order of creation, with the most recently created API tokens first.""" # noqa: E501
return sync_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
).parsed
async def asyncio_detailed(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
) -> Response[Optional[Union[ApiTokenResultsPage, Error]]]:
kwargs = _get_kwargs(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
@ -137,21 +222,41 @@ async def asyncio_detailed(
async def asyncio(
sort_by: CreatedAtSortMode,
*,
client: Client,
limit: Optional[int] = None,
page_token: Optional[str] = None,
) -> Optional[Union[ApiTokenResultsPage, Error]]:
) -> Optional[Union[ApiTokenResultsPage, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns the API tokens for the authenticated user.
The API tokens are returned in order of creation, with the most recently created API tokens first.
""" # noqa: E501
The API tokens are returned in order of creation, with the most recently created API tokens first.""" # noqa: E501
return (
await asyncio_detailed(
limit=limit,
page_token=page_token,
sort_by=sort_by,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the apps API paths: Endpoints for third party app grant flows. """ # noqa: E501
""" Contains methods for accessing the apps API paths: Endpoints for third party app grant flows. """ # noqa: E501

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/apps/github/callback".format(
client.base_url,
) # noqa: E501
url = "{}/apps/github/callback".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,21 +25,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -47,10 +53,13 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -63,23 +72,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This is different than OAuth 2.0 authentication for users. This endpoint grants access for KittyCAD to access user's repos.
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.
""" # noqa: E501
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -90,15 +104,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This is different than OAuth 2.0 authentication for users. This endpoint grants access for KittyCAD to access user's repos.
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.
""" # noqa: E501
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/apps/github/consent".format(
client.base_url,
) # noqa: E501
url = "{}/apps/github/consent".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[AppClientInfo, Error]]:
if response.status_code == 200:
response_200 = AppClientInfo.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[AppClientInfo, Error]] :
if response.status_code == 200:
response_200 = AppClientInfo.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[AppClientInfo, Error]]]:
) -> Response[Optional[Union[AppClientInfo, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[AppClientInfo, Error]]]:
) -> Response[Optional[Union[AppClientInfo, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,23 +75,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[AppClientInfo, Error]]:
) -> Optional[Union[AppClientInfo, Error]] :
"""This is different than OAuth 2.0 authentication for users. This endpoint grants access for KittyCAD to access user's repos.
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.
""" # noqa: E501
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[AppClientInfo, Error]]]:
) -> Response[Optional[Union[AppClientInfo, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -97,15 +107,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[AppClientInfo, Error]]:
) -> Optional[Union[AppClientInfo, Error]] :
"""This is different than OAuth 2.0 authentication for users. This endpoint grants access for KittyCAD to access user's repos.
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.
""" # noqa: E501
The user doesn't need KittyCAD OAuth authorization for this endpoint, this is purely for the GitHub permissions to access repos.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,13 +8,22 @@ from ...types import Response
def _get_kwargs(
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/apps/github/webhook".format(
client.base_url,
) # noqa: E501
url = "{}/apps/github/webhook".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -28,18 +37,21 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -49,12 +61,21 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
body: bytes,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -67,25 +88,43 @@ def sync_detailed(
def sync(
body: bytes,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""These come from the GitHub app.""" # noqa: E501
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: bytes,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -96,15 +135,24 @@ async def asyncio_detailed(
async def asyncio(
body: bytes,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""These come from the GitHub app.""" # noqa: E501
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the beta API paths: Beta API endpoints. We will not charge for these endpoints while they are in beta. """ # noqa: E501
""" Contains methods for accessing the beta API paths: Beta API endpoints. We will not charge for these endpoints while they are in beta. """ # noqa: E501

View File

@ -1 +1 @@
""" Contains methods for accessing the constant API paths: Constants. These are helpful as helpers. """ # noqa: E501
""" Contains methods for accessing the constant API paths: Constants. These are helpful as helpers. """ # noqa: E501

View File

@ -1 +1 @@
""" Contains methods for accessing the executor API paths: Endpoints that allow for code execution or creation of code execution environments. """ # noqa: E501
""" Contains methods for accessing the executor API paths: Endpoints that allow for code execution or creation of code execution environments. """ # noqa: E501

View File

@ -8,10 +8,14 @@ from ...models.error import Error
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ws/executor/term".format(client.base_url) # noqa: E501
url = "{}/ws/executor/term".format(client.base_url) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -21,42 +25,45 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def sync(
*,
client: Client,
) -> ClientConnection:
"""Attach to a docker container to create an interactive terminal.""" # noqa: E501
kwargs = _get_kwargs(
client=client,
)
with ws_connect(
kwargs["url"].replace("https://", "wss://"),
additional_headers=kwargs["headers"],
) as websocket:
return websocket # type: ignore
with ws_connect(kwargs["url"].replace("https://", "wss://"), additional_headers=kwargs["headers"]) as websocket:
return websocket # type: ignore
# Return an error if we got here.
return Error(message="An error occurred while connecting to the websocket.")
async def asyncio(
*,
client: Client,
) -> WebSocketClientProtocol:
"""Attach to a docker container to create an interactive terminal.""" # noqa: E501
kwargs = _get_kwargs(
client=client,
)
async with ws_connect_async(
kwargs["url"].replace("https://", "wss://"), extra_headers=kwargs["headers"]
) as websocket:
async with ws_connect_async(kwargs["url"].replace("https://", "wss://"), extra_headers=kwargs["headers"]) as websocket:
return websocket
# Return an error if we got here.

View File

@ -10,22 +10,44 @@ from ...types import Response
def _get_kwargs(
lang: CodeLanguage,
body: bytes,
*,
client: Client,
output: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/file/execute/{lang}".format(
client.base_url,
lang=lang,
) # noqa: E501
url = "{}/file/execute/{lang}".format(client.base_url, lang=lang,) # noqa: E501
if output is not None:
if "?" in url:
url = url + "&output=" + str(output)
else:
url = url + "?output=" + str(output)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -39,22 +61,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[CodeOutput, Error]]:
if response.status_code == 200:
response_200 = CodeOutput.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[CodeOutput, Error]] :
if response.status_code == 200:
response_200 = CodeOutput.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[CodeOutput, Error]]]:
) -> Response[Optional[Union[CodeOutput, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -64,16 +87,37 @@ def _build_response(
def sync_detailed(
lang: CodeLanguage,
body: bytes,
*,
client: Client,
output: Optional[str] = None,
) -> Response[Optional[Union[CodeOutput, Error]]]:
) -> Response[Optional[Union[CodeOutput, Error]]]:
kwargs = _get_kwargs(
lang=lang,
output=output,
body=body,
client=client,
)
@ -86,31 +130,75 @@ def sync_detailed(
def sync(
lang: CodeLanguage,
body: bytes,
*,
client: Client,
output: Optional[str] = None,
) -> Optional[Union[CodeOutput, Error]]:
) -> Optional[Union[CodeOutput, Error]] :
return sync_detailed(
lang=lang,
output=output,
body=body,
client=client,
).parsed
async def asyncio_detailed(
lang: CodeLanguage,
body: bytes,
*,
client: Client,
output: Optional[str] = None,
) -> Response[Optional[Union[CodeOutput, Error]]]:
) -> Response[Optional[Union[CodeOutput, Error]]]:
kwargs = _get_kwargs(
lang=lang,
output=output,
body=body,
client=client,
)
@ -121,17 +209,40 @@ async def asyncio_detailed(
async def asyncio(
lang: CodeLanguage,
body: bytes,
*,
client: Client,
output: Optional[str] = None,
) -> Optional[Union[CodeOutput, Error]]:
) -> Optional[Union[CodeOutput, Error]] :
return (
await asyncio_detailed(
lang=lang,
output=output,
body=body,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the file API paths: CAD file operations. Create, get, and list CAD file conversions. More endpoints will be added here in the future as we build out transforms, etc on CAD models. """ # noqa: E501
""" Contains methods for accessing the file API paths: CAD file operations. Create, get, and list CAD file conversions. More endpoints will be added here in the future as we build out transforms, etc on CAD models. """ # noqa: E501

View File

@ -11,27 +11,50 @@ from ...types import Response
def _get_kwargs(
output_unit: UnitLength,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/center-of-mass".format(
client.base_url,
) # noqa: E501
url = "{}/file/center-of-mass".format(client.base_url, ) # noqa: E501
if output_unit is not None:
if "?" in url:
url = url + "&output_unit=" + str(output_unit)
else:
url = url + "?output_unit=" + str(output_unit)
if src_format is not None:
if "?" in url:
url = url + "&src_format=" + str(src_format)
else:
url = url + "?src_format=" + str(src_format)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -45,24 +68,23 @@ def _get_kwargs(
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[FileCenterOfMass, Error]]:
if response.status_code == 201:
response_201 = FileCenterOfMass.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileCenterOfMass, Error]] :
if response.status_code == 201:
response_201 = FileCenterOfMass.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -72,16 +94,37 @@ def _build_response(
def sync_detailed(
output_unit: UnitLength,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -94,38 +137,79 @@ def sync_detailed(
def sync(
output_unit: UnitLength,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileCenterOfMass, Error]]:
) -> Optional[Union[FileCenterOfMass, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the cartesian co-ordinate in world space measure units.
In 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.
Get the center of mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the cartesian co-ordinate in world space measure units.
In 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.
Get the center of mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return sync_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
output_unit: UnitLength,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
) -> Response[Optional[Union[FileCenterOfMass, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -136,24 +220,44 @@ async def asyncio_detailed(
async def asyncio(
output_unit: UnitLength,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileCenterOfMass, Error]]:
) -> Optional[Union[FileCenterOfMass, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the cartesian co-ordinate in world space measure units.
In 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.
Get the center of mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the cartesian co-ordinate in world space measure units.
In 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.
Get the center of mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -11,17 +11,38 @@ from ...types import Response
def _get_kwargs(
output_format: FileExportFormat,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/conversion/{src_format}/{output_format}".format(
client.base_url,
output_format=output_format,
src_format=src_format,
) # noqa: E501
url = "{}/file/conversion/{src_format}/{output_format}".format(client.base_url, output_format=output_format,src_format=src_format,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -35,24 +56,23 @@ def _get_kwargs(
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[FileConversion, Error]]:
if response.status_code == 201:
response_201 = FileConversion.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileConversion, Error]] :
if response.status_code == 201:
response_201 = FileConversion.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileConversion, Error]]]:
) -> Response[Optional[Union[FileConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -62,16 +82,37 @@ def _build_response(
def sync_detailed(
output_format: FileExportFormat,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileConversion, Error]]]:
) -> Response[Optional[Union[FileConversion, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
src_format=src_format,
body=body,
client=client,
)
@ -84,37 +125,78 @@ def sync_detailed(
def sync(
output_format: FileExportFormat,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileConversion, Error]]:
) -> Optional[Union[FileConversion, Error]] :
"""If you wish to specify the conversion options, use the `/file/conversion` endpoint instead.
Convert a CAD file from one format to another. If the file being converted is larger than 25MB, it will be performed asynchronously.
If the conversion is performed synchronously, the contents of the converted file (`output`) will be returned as a base64 encoded string.
If 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.
""" # noqa: E501
Convert a CAD file from one format to another. If the file being converted is larger than 25MB, it will be performed asynchronously.
If the conversion is performed synchronously, the contents of the converted file (`output`) will be returned as a base64 encoded string.
If 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.""" # noqa: E501
return sync_detailed(
output_format=output_format,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
output_format: FileExportFormat,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileConversion, Error]]]:
) -> Response[Optional[Union[FileConversion, Error]]]:
kwargs = _get_kwargs(
output_format=output_format,
src_format=src_format,
body=body,
client=client,
)
@ -125,23 +207,43 @@ async def asyncio_detailed(
async def asyncio(
output_format: FileExportFormat,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileConversion, Error]]:
) -> Optional[Union[FileConversion, Error]] :
"""If you wish to specify the conversion options, use the `/file/conversion` endpoint instead.
Convert a CAD file from one format to another. If the file being converted is larger than 25MB, it will be performed asynchronously.
If the conversion is performed synchronously, the contents of the converted file (`output`) will be returned as a base64 encoded string.
If 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.
""" # noqa: E501
Convert a CAD file from one format to another. If the file being converted is larger than 25MB, it will be performed asynchronously.
If the conversion is performed synchronously, the contents of the converted file (`output`) will be returned as a base64 encoded string.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
output_format=output_format,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -1,58 +0,0 @@
import base64
from typing import Any, Optional, Tuple, Union
from ...api.file.create_file_conversion import asyncio as fc_asyncio, sync as fc_sync
from ...client import Client
from ...models import Error, FileConversion, FileExportFormat, FileImportFormat
def sync(
src_format: FileImportFormat,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[Any, Tuple[FileConversion, bytes], Error]]:
"""Convert a CAD file from one format to another. If the file being converted is larger than a certain size it will be performed asynchronously. This function automatically base64 encodes the request body and base64 decodes the request output."""
encoded = base64.b64encode(body)
fc = fc_sync(
src_format=src_format,
output_format=output_format,
body=encoded,
client=client,
)
if isinstance(fc, FileConversion) and fc.output != "":
if isinstance(fc.output, str):
b = base64.b64decode(fc.output + "===")
return (fc, b)
return fc
async def asyncio(
src_format: FileImportFormat,
output_format: FileExportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[Any, Tuple[FileConversion, bytes], Error]]:
"""Convert a CAD file from one format to another. If the file being converted is larger than a certain size it will be performed asynchronously. This function automatically base64 encodes the request body and base64 decodes the request output."""
encoded = base64.b64encode(body)
fc = await fc_asyncio(
src_format=src_format,
output_format=output_format,
body=encoded,
client=client,
)
if isinstance(fc, FileConversion) and fc.output != "":
if isinstance(fc.output, str):
b = base64.b64decode(fc.output + "===")
return (fc, b)
return fc

View File

@ -12,41 +12,78 @@ from ...types import Response
def _get_kwargs(
material_mass: float,
material_mass_unit: UnitMass,
output_unit: UnitDensity,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/density".format(
client.base_url,
) # noqa: E501
url = "{}/file/density".format(client.base_url, ) # noqa: E501
if material_mass is not None:
if "?" in url:
url = url + "&material_mass=" + str(material_mass)
else:
url = url + "?material_mass=" + str(material_mass)
if material_mass_unit is not None:
if "?" in url:
url = url + "&material_mass_unit=" + str(material_mass_unit)
else:
url = url + "?material_mass_unit=" + str(material_mass_unit)
if output_unit is not None:
if "?" in url:
url = url + "&output_unit=" + str(output_unit)
else:
url = url + "?output_unit=" + str(output_unit)
if src_format is not None:
if "?" in url:
url = url + "&src_format=" + str(src_format)
else:
url = url + "?src_format=" + str(src_format)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -60,22 +97,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileDensity, Error]]:
if response.status_code == 201:
response_201 = FileDensity.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileDensity, Error]] :
if response.status_code == 201:
response_201 = FileDensity.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileDensity, Error]]]:
) -> Response[Optional[Union[FileDensity, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -85,20 +123,53 @@ def _build_response(
def sync_detailed(
material_mass: float,
material_mass_unit: UnitMass,
output_unit: UnitDensity,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileDensity, Error]]]:
) -> Response[Optional[Union[FileDensity, Error]]]:
kwargs = _get_kwargs(
material_mass=material_mass,
material_mass_unit=material_mass_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -111,46 +182,111 @@ def sync_detailed(
def sync(
material_mass: float,
material_mass_unit: UnitMass,
output_unit: UnitDensity,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileDensity, Error]]:
) -> Optional[Union[FileDensity, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This 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.
In 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.
Get the density of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This 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.
In 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.
Get the density of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return sync_detailed(
material_mass=material_mass,
material_mass_unit=material_mass_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
material_mass: float,
material_mass_unit: UnitMass,
output_unit: UnitDensity,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileDensity, Error]]]:
) -> Response[Optional[Union[FileDensity, Error]]]:
kwargs = _get_kwargs(
material_mass=material_mass,
material_mass_unit=material_mass_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -161,28 +297,60 @@ async def asyncio_detailed(
async def asyncio(
material_mass: float,
material_mass_unit: UnitMass,
output_unit: UnitDensity,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileDensity, Error]]:
) -> Optional[Union[FileDensity, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This 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.
In 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.
Get the density of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This 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.
In 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.
Get the density of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
material_mass=material_mass,
material_mass_unit=material_mass_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -12,41 +12,78 @@ from ...types import Response
def _get_kwargs(
material_density: float,
material_density_unit: UnitDensity,
output_unit: UnitMass,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/mass".format(
client.base_url,
) # noqa: E501
url = "{}/file/mass".format(client.base_url, ) # noqa: E501
if material_density is not None:
if "?" in url:
url = url + "&material_density=" + str(material_density)
else:
url = url + "?material_density=" + str(material_density)
if material_density_unit is not None:
if "?" in url:
url = url + "&material_density_unit=" + str(material_density_unit)
else:
url = url + "?material_density_unit=" + str(material_density_unit)
if output_unit is not None:
if "?" in url:
url = url + "&output_unit=" + str(output_unit)
else:
url = url + "?output_unit=" + str(output_unit)
if src_format is not None:
if "?" in url:
url = url + "&src_format=" + str(src_format)
else:
url = url + "?src_format=" + str(src_format)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -60,22 +97,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileMass, Error]]:
if response.status_code == 201:
response_201 = FileMass.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileMass, Error]] :
if response.status_code == 201:
response_201 = FileMass.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileMass, Error]]]:
) -> Response[Optional[Union[FileMass, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -85,20 +123,53 @@ def _build_response(
def sync_detailed(
material_density: float,
material_density_unit: UnitDensity,
output_unit: UnitMass,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileMass, Error]]]:
) -> Response[Optional[Union[FileMass, Error]]]:
kwargs = _get_kwargs(
material_density=material_density,
material_density_unit=material_density_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -111,46 +182,111 @@ def sync_detailed(
def sync(
material_density: float,
material_density_unit: UnitDensity,
output_unit: UnitMass,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileMass, Error]]:
) -> Optional[Union[FileMass, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This 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.
In 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.
Get the mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This 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.
In 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.
Get the mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return sync_detailed(
material_density=material_density,
material_density_unit=material_density_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
material_density: float,
material_density_unit: UnitDensity,
output_unit: UnitMass,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileMass, Error]]]:
) -> Response[Optional[Union[FileMass, Error]]]:
kwargs = _get_kwargs(
material_density=material_density,
material_density_unit=material_density_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -161,28 +297,60 @@ async def asyncio_detailed(
async def asyncio(
material_density: float,
material_density_unit: UnitDensity,
output_unit: UnitMass,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileMass, Error]]:
) -> Optional[Union[FileMass, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This 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.
In 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.
Get the mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This 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.
In 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.
Get the mass of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
material_density=material_density,
material_density_unit=material_density_unit,
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -11,27 +11,50 @@ from ...types import Response
def _get_kwargs(
output_unit: UnitArea,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/surface-area".format(
client.base_url,
) # noqa: E501
url = "{}/file/surface-area".format(client.base_url, ) # noqa: E501
if output_unit is not None:
if "?" in url:
url = url + "&output_unit=" + str(output_unit)
else:
url = url + "?output_unit=" + str(output_unit)
if src_format is not None:
if "?" in url:
url = url + "&src_format=" + str(src_format)
else:
url = url + "?src_format=" + str(src_format)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -45,24 +68,23 @@ def _get_kwargs(
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[FileSurfaceArea, Error]]:
if response.status_code == 201:
response_201 = FileSurfaceArea.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileSurfaceArea, Error]] :
if response.status_code == 201:
response_201 = FileSurfaceArea.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -72,16 +94,37 @@ def _build_response(
def sync_detailed(
output_unit: UnitArea,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -94,38 +137,79 @@ def sync_detailed(
def sync(
output_unit: UnitArea,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileSurfaceArea, Error]]:
) -> Optional[Union[FileSurfaceArea, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the square measure units.
In 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.
Get the surface area of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the square measure units.
In 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.
Get the surface area of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return sync_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
output_unit: UnitArea,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
) -> Response[Optional[Union[FileSurfaceArea, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -136,24 +220,44 @@ async def asyncio_detailed(
async def asyncio(
output_unit: UnitArea,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileSurfaceArea, Error]]:
) -> Optional[Union[FileSurfaceArea, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the square measure units.
In 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.
Get the surface area of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the square measure units.
In 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.
Get the surface area of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -11,27 +11,50 @@ from ...types import Response
def _get_kwargs(
output_unit: UnitVolume,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/file/volume".format(
client.base_url,
) # noqa: E501
url = "{}/file/volume".format(client.base_url, ) # noqa: E501
if output_unit is not None:
if "?" in url:
url = url + "&output_unit=" + str(output_unit)
else:
url = url + "?output_unit=" + str(output_unit)
if src_format is not None:
if "?" in url:
url = url + "&src_format=" + str(src_format)
else:
url = url + "?src_format=" + str(src_format)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -45,22 +68,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileVolume, Error]]:
if response.status_code == 201:
response_201 = FileVolume.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[FileVolume, Error]] :
if response.status_code == 201:
response_201 = FileVolume.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[FileVolume, Error]]]:
) -> Response[Optional[Union[FileVolume, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -70,16 +94,37 @@ def _build_response(
def sync_detailed(
output_unit: UnitVolume,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileVolume, Error]]]:
) -> Response[Optional[Union[FileVolume, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -92,38 +137,79 @@ def sync_detailed(
def sync(
output_unit: UnitVolume,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileVolume, Error]]:
) -> Optional[Union[FileVolume, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the cubic measure units.
In 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.
Get the volume of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the cubic measure units.
In 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.
Get the volume of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return sync_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
).parsed
async def asyncio_detailed(
output_unit: UnitVolume,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Response[Optional[Union[FileVolume, Error]]]:
) -> Response[Optional[Union[FileVolume, Error]]]:
kwargs = _get_kwargs(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
@ -134,24 +220,44 @@ async def asyncio_detailed(
async def asyncio(
output_unit: UnitVolume,
src_format: FileImportFormat,
body: bytes,
*,
client: Client,
) -> Optional[Union[FileVolume, Error]]:
) -> Optional[Union[FileVolume, Error]] :
"""We assume any file given to us has one consistent unit throughout. We also assume the file is at the proper scale.
This endpoint returns the cubic measure units.
In 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.
Get the volume of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.
""" # noqa: E501
This endpoint returns the cubic measure units.
In 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.
Get the volume of an object in a CAD file. If the file is larger than 25MB, it will be performed asynchronously.
If 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.""" # noqa: E501
return (
await asyncio_detailed(
output_unit=output_unit,
src_format=src_format,
body=body,
client=client,
)
).parsed

View File

@ -1,47 +0,0 @@
import base64
from typing import Any, Optional, Tuple, Union
from ...api.api_calls.get_async_operation import asyncio as fc_asyncio, sync as fc_sync
from ...client import Client
from ...models import Error
from ...models.file_conversion import FileConversion
def sync(
id: str,
*,
client: Client,
) -> Optional[Union[Any, Tuple[FileConversion, bytes], Error]]:
"""Get the status of a file conversion. This function automatically base64 decodes the output response if there is one."""
fc = fc_sync(
id=id,
client=client,
)
if isinstance(fc, FileConversion) and fc.output != "":
if isinstance(fc.output, str):
b = base64.b64decode(fc.output + "===")
return (fc, b)
return fc
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Union[Any, Tuple[FileConversion, bytes], Error]]:
"""Get the status of a file conversion. This function automatically base64 decodes the output response if there is one."""
fc = await fc_asyncio(
id=id,
client=client,
)
if isinstance(fc, FileConversion) and fc.output != "":
if isinstance(fc.output, str):
b = base64.b64decode(fc.output + "===")
return (fc, b)
return fc

View File

@ -1 +1 @@
""" Contains methods for accessing the hidden API paths: Hidden API endpoints that should not show up in the docs. """ # noqa: E501
""" Contains methods for accessing the hidden API paths: Hidden API endpoints that should not show up in the docs. """ # noqa: E501

View File

@ -10,13 +10,22 @@ from ...types import Response
def _get_kwargs(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/auth/email".format(
client.base_url,
) # noqa: E501
url = "{}/auth/email".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -30,24 +39,23 @@ def _get_kwargs(
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[VerificationToken, Error]]:
if response.status_code == 201:
response_201 = VerificationToken.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[VerificationToken, Error]] :
if response.status_code == 201:
response_201 = VerificationToken.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[VerificationToken, Error]]]:
) -> Response[Optional[Union[VerificationToken, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -57,12 +65,21 @@ def _build_response(
def sync_detailed(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Response[Optional[Union[VerificationToken, Error]]]:
) -> Response[Optional[Union[VerificationToken, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -75,23 +92,43 @@ def sync_detailed(
def sync(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Optional[Union[VerificationToken, Error]]:
) -> Optional[Union[VerificationToken, Error]] :
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Response[Optional[Union[VerificationToken, Error]]]:
) -> Response[Optional[Union[VerificationToken, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -102,13 +139,24 @@ async def asyncio_detailed(
async def asyncio(
body: EmailAuthenticationForm,
*,
client: Client,
) -> Optional[Union[VerificationToken, Error]]:
) -> Optional[Union[VerificationToken, Error]] :
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -8,33 +8,56 @@ from ...types import Response
def _get_kwargs(
email: str,
token: str,
*,
client: Client,
callback_url: Optional[str] = None,
) -> Dict[str, Any]:
url = "{}/auth/email/callback".format(
client.base_url,
) # noqa: E501
url = "{}/auth/email/callback".format(client.base_url, ) # noqa: E501
if callback_url is not None:
if "?" in url:
url = url + "&callback_url=" + str(callback_url)
else:
url = url + "?callback_url=" + str(callback_url)
if email is not None:
if "?" in url:
url = url + "&email=" + str(email)
else:
url = url + "?email=" + str(email)
if token is not None:
if "?" in url:
url = url + "&token=" + str(token)
else:
url = url + "?token=" + str(token)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -44,21 +67,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -68,16 +95,37 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
email: str,
token: str,
*,
client: Client,
callback_url: Optional[str] = None,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
@ -90,31 +138,75 @@ def sync_detailed(
def sync(
email: str,
token: str,
*,
client: Client,
callback_url: Optional[str] = None,
) -> Optional[Error]:
) -> Optional[Error] :
return sync_detailed(
callback_url=callback_url,
email=email,
token=token,
client=client,
).parsed
async def asyncio_detailed(
email: str,
token: str,
*,
client: Client,
callback_url: Optional[str] = None,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
@ -125,17 +217,40 @@ async def asyncio_detailed(
async def asyncio(
email: str,
token: str,
*,
client: Client,
callback_url: Optional[str] = None,
) -> Optional[Error]:
) -> Optional[Error] :
return (
await asyncio_detailed(
callback_url=callback_url,
email=email,
token=token,
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/logout".format(
client.base_url,
) # noqa: E501
url = "{}/logout".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,21 +25,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -47,10 +53,13 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -63,21 +72,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This is used in logout scenarios.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -88,13 +103,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This is used in logout scenarios.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the meta API paths: Meta information about the API. """ # noqa: E501
""" Contains methods for accessing the meta API paths: Meta information about the API. """ # noqa: E501

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/.well-known/ai-plugin.json".format(
client.base_url,
) # noqa: E501
url = "{}/.well-known/ai-plugin.json".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[AiPluginManifest, Error]]:
if response.status_code == 200:
response_200 = AiPluginManifest.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[AiPluginManifest, Error]] :
if response.status_code == 200:
response_200 = AiPluginManifest.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,19 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[AiPluginManifest, Error]]:
) -> Optional[Union[AiPluginManifest, Error]] :
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
) -> Response[Optional[Union[AiPluginManifest, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -93,11 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[AiPluginManifest, Error]]:
) -> Optional[Union[AiPluginManifest, Error]] :
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/_meta/info".format(
client.base_url,
) # noqa: E501
url = "{}/_meta/info".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,25 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Metadata, Error]]:
if response.status_code == 200:
response_200 = Metadata.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Metadata, Error]] :
if response.status_code == 200:
response_200 = Metadata.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Metadata, Error]]]:
) -> Response[Optional[Union[Metadata, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -52,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[Metadata, Error]]]:
) -> Response[Optional[Union[Metadata, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -68,22 +75,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[Metadata, Error]]:
) -> Optional[Union[Metadata, Error]] :
"""This includes information on any of our other distributed systems it is connected to.
You must be a KittyCAD employee to perform this request.""" # noqa: E501
You must be a KittyCAD employee to perform this request.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[Metadata, Error]]]:
) -> Response[Optional[Union[Metadata, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -94,14 +107,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[Metadata, Error]]:
) -> Optional[Union[Metadata, Error]] :
"""This includes information on any of our other distributed systems it is connected to.
You must be a KittyCAD employee to perform this request.""" # noqa: E501
You must be a KittyCAD employee to perform this request.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/openai/openapi.json".format(
client.base_url,
) # noqa: E501
url = "{}/openai/openapi.json".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,25 +25,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[dict, Error]]:
if response.status_code == 200:
response_200 = response.json()
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[dict, Error]] :
if response.status_code == 200:
response_200 = response.json()
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -51,10 +55,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -67,21 +74,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[dict, Error]]:
) -> Optional[Union[dict, Error]] :
"""This is the same as the OpenAPI schema, BUT it has some modifications to make it compatible with OpenAI. For example, descriptions must be < 300 chars.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -92,13 +105,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[dict, Error]]:
) -> Optional[Union[dict, Error]] :
"""This is the same as the OpenAPI schema, BUT it has some modifications to make it compatible with OpenAI. For example, descriptions must be < 300 chars.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/".format(
client.base_url,
) # noqa: E501
url = "{}/".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,25 +25,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[dict, Error]]:
if response.status_code == 200:
response_200 = response.json()
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[dict, Error]] :
if response.status_code == 200:
response_200 = response.json()
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -51,10 +55,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -67,19 +74,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[dict, Error]]:
) -> Optional[Union[dict, Error]] :
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -90,11 +105,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[dict, Error]]:
) -> Optional[Union[dict, Error]] :
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ping".format(
client.base_url,
) # noqa: E501
url = "{}/ping".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,25 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Pong, Error]]:
if response.status_code == 200:
response_200 = Pong.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Pong, Error]] :
if response.status_code == 200:
response_200 = Pong.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Pong, Error]]]:
) -> Response[Optional[Union[Pong, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -52,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[Pong, Error]]]:
) -> Response[Optional[Union[Pong, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -68,19 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[Pong, Error]]:
) -> Optional[Union[Pong, Error]] :
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[Pong, Error]]]:
) -> Response[Optional[Union[Pong, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -91,11 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[Pong, Error]]:
) -> Optional[Union[Pong, Error]] :
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the modeling API paths: Modeling API for updating your 3D files using the KittyCAD engine. """ # noqa: E501
""" Contains methods for accessing the modeling API paths: Modeling API for updating your 3D files using the KittyCAD engine. """ # noqa: E501

View File

@ -1,115 +0,0 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.error import Error
from ...models.modeling_cmd_req import ModelingCmdReq
from ...types import Response
def _get_kwargs(
body: ModelingCmdReq,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/modeling/cmd".format(
client.base_url,
) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[dict, Error]]:
if response.status_code == 200:
response_200 = response.json()
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[dict, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
body: ModelingCmdReq,
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
body: ModelingCmdReq,
*,
client: Client,
) -> Optional[Union[dict, Error]]:
"""Response depends on which command was submitted, so unfortunately the OpenAPI schema can't generate the right response type.""" # noqa: E501
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: ModelingCmdReq,
*,
client: Client,
) -> Response[Optional[Union[dict, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
body: ModelingCmdReq,
*,
client: Client,
) -> Optional[Union[dict, Error]]:
"""Response depends on which command was submitted, so unfortunately the OpenAPI schema can't generate the right response type.""" # noqa: E501
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -1,114 +0,0 @@
from typing import Any, Dict, Optional, Union
import httpx
from ...client import Client
from ...models.error import Error
from ...models.modeling_cmd_req_batch import ModelingCmdReqBatch
from ...models.modeling_outcomes import ModelingOutcomes
from ...types import Response
def _get_kwargs(
body: ModelingCmdReqBatch,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/modeling/cmd-batch".format(
client.base_url,
) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
return {
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ModelingOutcomes, Error]]:
if response.status_code == 200:
response_200 = ModelingOutcomes.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ModelingOutcomes, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
headers=response.headers,
parsed=_parse_response(response=response),
)
def sync_detailed(
body: ModelingCmdReqBatch,
*,
client: Client,
) -> Response[Optional[Union[ModelingOutcomes, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
response = httpx.post(
verify=client.verify_ssl,
**kwargs,
)
return _build_response(response=response)
def sync(
body: ModelingCmdReqBatch,
*,
client: Client,
) -> Optional[Union[ModelingOutcomes, Error]]:
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: ModelingCmdReqBatch,
*,
client: Client,
) -> Response[Optional[Union[ModelingOutcomes, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.post(**kwargs)
return _build_response(response=response)
async def asyncio(
body: ModelingCmdReqBatch,
*,
client: Client,
) -> Optional[Union[ModelingOutcomes, Error]]:
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -5,41 +5,96 @@ from websockets.sync.client import ClientConnection, connect as ws_connect
from ...client import Client
from ...models.error import Error
from ...models.web_socket_request import WebSocketRequest
def _get_kwargs(
fps: int,
unlocked_framerate: bool,
video_res_height: int,
video_res_width: int,
webrtc: bool,
body: WebSocketRequest,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/ws/modeling/commands".format(client.base_url) # noqa: E501
url = "{}/ws/modeling/commands".format(client.base_url) # noqa: E501
if fps is not None:
if "?" in url:
url = url + "&fps=" + str(fps)
else:
url = url + "?fps=" + str(fps)
if unlocked_framerate is not None:
if "?" in url:
url = url + "&unlocked_framerate=" + str(unlocked_framerate)
else:
url = url + "?unlocked_framerate=" + str(unlocked_framerate)
if video_res_height is not None:
if "?" in url:
url = url + "&video_res_height=" + str(video_res_height)
else:
url = url + "?video_res_height=" + str(video_res_height)
if video_res_width is not None:
if "?" in url:
url = url + "&video_res_width=" + str(video_res_width)
else:
url = url + "?video_res_width=" + str(video_res_width)
if webrtc is not None:
if "?" in url:
url = url + "&webrtc=" + str(webrtc)
else:
url = url + "?webrtc=" + str(webrtc)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -49,58 +104,141 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"content": body,
}
def sync(
fps: int,
unlocked_framerate: bool,
video_res_height: int,
video_res_width: int,
webrtc: bool,
body: WebSocketRequest,
*,
client: Client,
) -> ClientConnection:
"""Pass those commands to the engine via websocket, and pass responses back to the client. Basically, this is a websocket proxy between the frontend/client and the engine.""" # noqa: E501
kwargs = _get_kwargs(
fps=fps,
unlocked_framerate=unlocked_framerate,
video_res_height=video_res_height,
video_res_width=video_res_width,
webrtc=webrtc,
body=body,
client=client,
)
with ws_connect(
kwargs["url"].replace("https://", "wss://"),
additional_headers=kwargs["headers"],
) as websocket:
return websocket # type: ignore
with ws_connect(kwargs["url"].replace("https://", "wss://"), additional_headers=kwargs["headers"]) as websocket:
return websocket # type: ignore
# Return an error if we got here.
return Error(message="An error occurred while connecting to the websocket.")
async def asyncio(
fps: int,
unlocked_framerate: bool,
video_res_height: int,
video_res_width: int,
webrtc: bool,
body: WebSocketRequest,
*,
client: Client,
) -> WebSocketClientProtocol:
"""Pass those commands to the engine via websocket, and pass responses back to the client. Basically, this is a websocket proxy between the frontend/client and the engine.""" # noqa: E501
kwargs = _get_kwargs(
fps=fps,
unlocked_framerate=unlocked_framerate,
video_res_height=video_res_height,
video_res_width=video_res_width,
webrtc=webrtc,
body=body,
client=client,
)
async with ws_connect_async(
kwargs["url"].replace("https://", "wss://"), extra_headers=kwargs["headers"]
) as websocket:
async with ws_connect_async(kwargs["url"].replace("https://", "wss://"), extra_headers=kwargs["headers"]) as websocket:
return websocket
# Return an error if we got here.

View File

@ -1 +1 @@
""" Contains methods for accessing the oauth2 API paths: Endpoints that implement OAuth 2.0 grant flows. """ # noqa: E501
""" Contains methods for accessing the oauth2 API paths: Endpoints that implement OAuth 2.0 grant flows. """ # noqa: E501

View File

@ -1 +1 @@
""" Contains methods for accessing the payments API paths: Operations around payments and billing. """ # noqa: E501
""" Contains methods for accessing the payments API paths: Operations around payments and billing. """ # noqa: E501

View File

@ -10,13 +10,22 @@ from ...types import Response
def _get_kwargs(
body: BillingInfo,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -30,22 +39,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]]:
if response.status_code == 201:
response_201 = Customer.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]] :
if response.status_code == 201:
response_201 = Customer.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -55,12 +65,21 @@ def _build_response(
def sync_detailed(
body: BillingInfo,
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -73,27 +92,44 @@ def sync_detailed(
def sync(
body: BillingInfo,
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It creates the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It creates the payment information for the authenticated user.""" # noqa: E501
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: BillingInfo,
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -104,17 +140,25 @@ async def asyncio_detailed(
async def asyncio(
body: BillingInfo,
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It creates the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It creates the payment information for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/intent".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment/intent".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[PaymentIntent, Error]]:
if response.status_code == 201:
response_201 = PaymentIntent.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[PaymentIntent, Error]] :
if response.status_code == 201:
response_201 = PaymentIntent.from_dict(response.json())
return response_201
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[PaymentIntent, Error]]]:
) -> Response[Optional[Union[PaymentIntent, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[PaymentIntent, Error]]]:
) -> Response[Optional[Union[PaymentIntent, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,21 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[PaymentIntent, Error]]:
) -> Optional[Union[PaymentIntent, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It creates a new payment intent for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[PaymentIntent, Error]]]:
) -> Response[Optional[Union[PaymentIntent, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -95,13 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[PaymentIntent, Error]]:
) -> Optional[Union[PaymentIntent, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It creates a new payment intent for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,21 +25,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -47,10 +53,13 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -63,23 +72,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It deletes the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It deletes the payment information for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -90,15 +104,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It deletes the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It deletes the payment information for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -8,14 +8,22 @@ from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/methods/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/user/payment/methods/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -25,21 +33,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -49,12 +61,21 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -67,25 +88,43 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the specified payment method for the authenticated user.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -96,15 +135,24 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the specified payment method for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/balance".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment/balance".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[CustomerBalance, Error]]:
if response.status_code == 200:
response_200 = CustomerBalance.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[CustomerBalance, Error]] :
if response.status_code == 200:
response_200 = CustomerBalance.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[CustomerBalance, Error]]]:
) -> Response[Optional[Union[CustomerBalance, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[CustomerBalance, Error]]]:
) -> Response[Optional[Union[CustomerBalance, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,21 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[CustomerBalance, Error]]:
) -> Optional[Union[CustomerBalance, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It gets the balance information for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[CustomerBalance, Error]]]:
) -> Response[Optional[Union[CustomerBalance, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -95,13 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[CustomerBalance, Error]]:
) -> Optional[Union[CustomerBalance, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It gets the balance information for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,25 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]]:
if response.status_code == 200:
response_200 = Customer.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]] :
if response.status_code == 200:
response_200 = Customer.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -52,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -68,23 +75,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It gets the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It gets the payment information for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -95,15 +107,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It gets the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It gets the payment information for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/invoices".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment/invoices".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,30 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[List[Invoice], Error]]:
if response.status_code == 200:
response_200 = [Invoice.from_dict(item) for item in response.json()]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[List[Invoice], Error]] :
if response.status_code == 200:
response_200 = [
Invoice.from_dict(item)
for item in response.json()
]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[List[Invoice], Error]]]:
) -> Response[Optional[Union[List[Invoice], Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +59,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[List[Invoice], Error]]]:
) -> Response[Optional[Union[List[Invoice], Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,21 +78,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[List[Invoice], Error]]:
) -> Optional[Union[List[Invoice], Error]] :
"""This endpoint requires authentication by any KittyCAD user. It lists invoices for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[List[Invoice], Error]]]:
) -> Response[Optional[Union[List[Invoice], Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -95,13 +109,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[List[Invoice], Error]]:
) -> Optional[Union[List[Invoice], Error]] :
"""This endpoint requires authentication by any KittyCAD user. It lists invoices for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/methods".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment/methods".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,27 +26,30 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[List[PaymentMethod], Error]]:
if response.status_code == 200:
response_200 = [PaymentMethod.from_dict(item) for item in response.json()]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[List[PaymentMethod], Error]] :
if response.status_code == 200:
response_200 = [
PaymentMethod.from_dict(item)
for item in response.json()
]
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,10 +59,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -70,21 +78,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[List[PaymentMethod], Error]]:
) -> Optional[Union[List[PaymentMethod], Error]] :
"""This endpoint requires authentication by any KittyCAD user. It lists payment methods for the authenticated user.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
) -> Response[Optional[Union[List[PaymentMethod], Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -95,13 +109,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[List[PaymentMethod], Error]]:
) -> Optional[Union[List[PaymentMethod], Error]] :
"""This endpoint requires authentication by any KittyCAD user. It lists payment methods for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -10,13 +10,22 @@ from ...types import Response
def _get_kwargs(
body: BillingInfo,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -30,22 +39,23 @@ def _get_kwargs(
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]]:
if response.status_code == 200:
response_200 = Customer.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Customer, Error]] :
if response.status_code == 200:
response_200 = Customer.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -55,12 +65,21 @@ def _build_response(
def sync_detailed(
body: BillingInfo,
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -73,27 +92,44 @@ def sync_detailed(
def sync(
body: BillingInfo,
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It updates the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It updates the payment information for the authenticated user.""" # noqa: E501
return sync_detailed(
body=body,
client=client,
).parsed
async def asyncio_detailed(
body: BillingInfo,
*,
client: Client,
) -> Response[Optional[Union[Customer, Error]]]:
) -> Response[Optional[Union[Customer, Error]]]:
kwargs = _get_kwargs(
body=body,
client=client,
)
@ -104,17 +140,25 @@ async def asyncio_detailed(
async def asyncio(
body: BillingInfo,
*,
client: Client,
) -> Optional[Union[Customer, Error]]:
) -> Optional[Union[Customer, Error]] :
"""This includes billing address, phone, and name.
This endpoint requires authentication by any KittyCAD user. It updates the payment information for the authenticated user.
""" # noqa: E501
This endpoint requires authentication by any KittyCAD user. It updates the payment information for the authenticated user.""" # noqa: E501
return (
await asyncio_detailed(
body=body,
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/payment/tax".format(
client.base_url,
) # noqa: E501
url = "{}/user/payment/tax".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,21 +25,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -47,10 +53,13 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -63,21 +72,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It will return an error if the customer's information is not valid for automatic tax. Otherwise, it will return an empty successful response.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -88,13 +103,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It will return an error if the customer's information is not valid for automatic tax. Otherwise, it will return an empty successful response.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the unit API paths: Unit conversion operations. """ # noqa: E501
""" Contains methods for accessing the unit API paths: Unit conversion operations. """ # noqa: E501

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitAngle,
output_unit: UnitAngle,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/angle/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/angle/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitAngleConversion, Error]]:
if response.status_code == 200:
response_200 = UnitAngleConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitAngleConversion, Error]] :
if response.status_code == 200:
response_200 = UnitAngleConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitAngle,
output_unit: UnitAngle,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitAngle,
output_unit: UnitAngle,
value: float,
*,
client: Client,
) -> Optional[Union[UnitAngleConversion, Error]]:
) -> Optional[Union[UnitAngleConversion, Error]] :
"""Convert an angle unit value to another angle unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitAngle,
output_unit: UnitAngle,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
) -> Response[Optional[Union[UnitAngleConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitAngle,
output_unit: UnitAngle,
value: float,
*,
client: Client,
) -> Optional[Union[UnitAngleConversion, Error]]:
) -> Optional[Union[UnitAngleConversion, Error]] :
"""Convert an angle unit value to another angle unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitArea,
output_unit: UnitArea,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/area/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/area/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitAreaConversion, Error]]:
if response.status_code == 200:
response_200 = UnitAreaConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitAreaConversion, Error]] :
if response.status_code == 200:
response_200 = UnitAreaConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitArea,
output_unit: UnitArea,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitArea,
output_unit: UnitArea,
value: float,
*,
client: Client,
) -> Optional[Union[UnitAreaConversion, Error]]:
) -> Optional[Union[UnitAreaConversion, Error]] :
"""Convert an area unit value to another area unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitArea,
output_unit: UnitArea,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
) -> Response[Optional[Union[UnitAreaConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitArea,
output_unit: UnitArea,
value: float,
*,
client: Client,
) -> Optional[Union[UnitAreaConversion, Error]]:
) -> Optional[Union[UnitAreaConversion, Error]] :
"""Convert an area unit value to another area unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitCurrent,
output_unit: UnitCurrent,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/current/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/current/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitCurrentConversion, Error]]:
if response.status_code == 200:
response_200 = UnitCurrentConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitCurrentConversion, Error]] :
if response.status_code == 200:
response_200 = UnitCurrentConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitCurrent,
output_unit: UnitCurrent,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitCurrent,
output_unit: UnitCurrent,
value: float,
*,
client: Client,
) -> Optional[Union[UnitCurrentConversion, Error]]:
) -> Optional[Union[UnitCurrentConversion, Error]] :
"""Convert a current unit value to another current unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitCurrent,
output_unit: UnitCurrent,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
) -> Response[Optional[Union[UnitCurrentConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitCurrent,
output_unit: UnitCurrent,
value: float,
*,
client: Client,
) -> Optional[Union[UnitCurrentConversion, Error]]:
) -> Optional[Union[UnitCurrentConversion, Error]] :
"""Convert a current unit value to another current unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitEnergy,
output_unit: UnitEnergy,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/energy/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/energy/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitEnergyConversion, Error]]:
if response.status_code == 200:
response_200 = UnitEnergyConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitEnergyConversion, Error]] :
if response.status_code == 200:
response_200 = UnitEnergyConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitEnergy,
output_unit: UnitEnergy,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitEnergy,
output_unit: UnitEnergy,
value: float,
*,
client: Client,
) -> Optional[Union[UnitEnergyConversion, Error]]:
) -> Optional[Union[UnitEnergyConversion, Error]] :
"""Convert a energy unit value to another energy unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitEnergy,
output_unit: UnitEnergy,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
) -> Response[Optional[Union[UnitEnergyConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitEnergy,
output_unit: UnitEnergy,
value: float,
*,
client: Client,
) -> Optional[Union[UnitEnergyConversion, Error]]:
) -> Optional[Union[UnitEnergyConversion, Error]] :
"""Convert a energy unit value to another energy unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitForce,
output_unit: UnitForce,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/force/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/force/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitForceConversion, Error]]:
if response.status_code == 200:
response_200 = UnitForceConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitForceConversion, Error]] :
if response.status_code == 200:
response_200 = UnitForceConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitForce,
output_unit: UnitForce,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitForce,
output_unit: UnitForce,
value: float,
*,
client: Client,
) -> Optional[Union[UnitForceConversion, Error]]:
) -> Optional[Union[UnitForceConversion, Error]] :
"""Convert a force unit value to another force unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitForce,
output_unit: UnitForce,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
) -> Response[Optional[Union[UnitForceConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitForce,
output_unit: UnitForce,
value: float,
*,
client: Client,
) -> Optional[Union[UnitForceConversion, Error]]:
) -> Optional[Union[UnitForceConversion, Error]] :
"""Convert a force unit value to another force unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitFrequency,
output_unit: UnitFrequency,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/frequency/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/frequency/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitFrequencyConversion, Error]]:
if response.status_code == 200:
response_200 = UnitFrequencyConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitFrequencyConversion, Error]] :
if response.status_code == 200:
response_200 = UnitFrequencyConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitFrequency,
output_unit: UnitFrequency,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitFrequency,
output_unit: UnitFrequency,
value: float,
*,
client: Client,
) -> Optional[Union[UnitFrequencyConversion, Error]]:
) -> Optional[Union[UnitFrequencyConversion, Error]] :
"""Convert a frequency unit value to another frequency unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitFrequency,
output_unit: UnitFrequency,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
) -> Response[Optional[Union[UnitFrequencyConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitFrequency,
output_unit: UnitFrequency,
value: float,
*,
client: Client,
) -> Optional[Union[UnitFrequencyConversion, Error]]:
) -> Optional[Union[UnitFrequencyConversion, Error]] :
"""Convert a frequency unit value to another frequency unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitLength,
output_unit: UnitLength,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/length/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/length/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitLengthConversion, Error]]:
if response.status_code == 200:
response_200 = UnitLengthConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitLengthConversion, Error]] :
if response.status_code == 200:
response_200 = UnitLengthConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitLength,
output_unit: UnitLength,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitLength,
output_unit: UnitLength,
value: float,
*,
client: Client,
) -> Optional[Union[UnitLengthConversion, Error]]:
) -> Optional[Union[UnitLengthConversion, Error]] :
"""Convert a length unit value to another length unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitLength,
output_unit: UnitLength,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
) -> Response[Optional[Union[UnitLengthConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitLength,
output_unit: UnitLength,
value: float,
*,
client: Client,
) -> Optional[Union[UnitLengthConversion, Error]]:
) -> Optional[Union[UnitLengthConversion, Error]] :
"""Convert a length unit value to another length unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitMass,
output_unit: UnitMass,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/mass/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/mass/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitMassConversion, Error]]:
if response.status_code == 200:
response_200 = UnitMassConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitMassConversion, Error]] :
if response.status_code == 200:
response_200 = UnitMassConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitMass,
output_unit: UnitMass,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitMass,
output_unit: UnitMass,
value: float,
*,
client: Client,
) -> Optional[Union[UnitMassConversion, Error]]:
) -> Optional[Union[UnitMassConversion, Error]] :
"""Convert a mass unit value to another mass unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitMass,
output_unit: UnitMass,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
) -> Response[Optional[Union[UnitMassConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitMass,
output_unit: UnitMass,
value: float,
*,
client: Client,
) -> Optional[Union[UnitMassConversion, Error]]:
) -> Optional[Union[UnitMassConversion, Error]] :
"""Convert a mass unit value to another mass unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitPower,
output_unit: UnitPower,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/power/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/power/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitPowerConversion, Error]]:
if response.status_code == 200:
response_200 = UnitPowerConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitPowerConversion, Error]] :
if response.status_code == 200:
response_200 = UnitPowerConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitPower,
output_unit: UnitPower,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitPower,
output_unit: UnitPower,
value: float,
*,
client: Client,
) -> Optional[Union[UnitPowerConversion, Error]]:
) -> Optional[Union[UnitPowerConversion, Error]] :
"""Convert a power unit value to another power unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitPower,
output_unit: UnitPower,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
) -> Response[Optional[Union[UnitPowerConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitPower,
output_unit: UnitPower,
value: float,
*,
client: Client,
) -> Optional[Union[UnitPowerConversion, Error]]:
) -> Optional[Union[UnitPowerConversion, Error]] :
"""Convert a power unit value to another power unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitPressure,
output_unit: UnitPressure,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/pressure/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/pressure/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitPressureConversion, Error]]:
if response.status_code == 200:
response_200 = UnitPressureConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitPressureConversion, Error]] :
if response.status_code == 200:
response_200 = UnitPressureConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitPressure,
output_unit: UnitPressure,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitPressure,
output_unit: UnitPressure,
value: float,
*,
client: Client,
) -> Optional[Union[UnitPressureConversion, Error]]:
) -> Optional[Union[UnitPressureConversion, Error]] :
"""Convert a pressure unit value to another pressure unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitPressure,
output_unit: UnitPressure,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
) -> Response[Optional[Union[UnitPressureConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitPressure,
output_unit: UnitPressure,
value: float,
*,
client: Client,
) -> Optional[Union[UnitPressureConversion, Error]]:
) -> Optional[Union[UnitPressureConversion, Error]] :
"""Convert a pressure unit value to another pressure unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitTemperature,
output_unit: UnitTemperature,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/temperature/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/temperature/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitTemperatureConversion, Error]]:
if response.status_code == 200:
response_200 = UnitTemperatureConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitTemperatureConversion, Error]] :
if response.status_code == 200:
response_200 = UnitTemperatureConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitTemperature,
output_unit: UnitTemperature,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitTemperature,
output_unit: UnitTemperature,
value: float,
*,
client: Client,
) -> Optional[Union[UnitTemperatureConversion, Error]]:
) -> Optional[Union[UnitTemperatureConversion, Error]] :
"""Convert a temperature unit value to another temperature unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitTemperature,
output_unit: UnitTemperature,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
) -> Response[Optional[Union[UnitTemperatureConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitTemperature,
output_unit: UnitTemperature,
value: float,
*,
client: Client,
) -> Optional[Union[UnitTemperatureConversion, Error]]:
) -> Optional[Union[UnitTemperatureConversion, Error]] :
"""Convert a temperature unit value to another temperature unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitTorque,
output_unit: UnitTorque,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/torque/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/torque/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitTorqueConversion, Error]]:
if response.status_code == 200:
response_200 = UnitTorqueConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitTorqueConversion, Error]] :
if response.status_code == 200:
response_200 = UnitTorqueConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitTorque,
output_unit: UnitTorque,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitTorque,
output_unit: UnitTorque,
value: float,
*,
client: Client,
) -> Optional[Union[UnitTorqueConversion, Error]]:
) -> Optional[Union[UnitTorqueConversion, Error]] :
"""Convert a torque unit value to another torque unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitTorque,
output_unit: UnitTorque,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
) -> Response[Optional[Union[UnitTorqueConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitTorque,
output_unit: UnitTorque,
value: float,
*,
client: Client,
) -> Optional[Union[UnitTorqueConversion, Error]]:
) -> Optional[Union[UnitTorqueConversion, Error]] :
"""Convert a torque unit value to another torque unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -10,23 +10,44 @@ from ...types import Response
def _get_kwargs(
input_unit: UnitVolume,
output_unit: UnitVolume,
value: float,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/unit/conversion/volume/{input_unit}/{output_unit}".format(
client.base_url,
input_unit=input_unit,
output_unit=output_unit,
) # noqa: E501
url = "{}/unit/conversion/volume/{input_unit}/{output_unit}".format(client.base_url, input_unit=input_unit,output_unit=output_unit,) # noqa: E501
if value is not None:
if "?" in url:
url = url + "&value=" + str(value)
else:
url = url + "?value=" + str(value)
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -36,27 +57,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[UnitVolumeConversion, Error]]:
if response.status_code == 200:
response_200 = UnitVolumeConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[UnitVolumeConversion, Error]] :
if response.status_code == 200:
response_200 = UnitVolumeConversion.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -66,16 +87,37 @@ def _build_response(
def sync_detailed(
input_unit: UnitVolume,
output_unit: UnitVolume,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -88,33 +130,75 @@ def sync_detailed(
def sync(
input_unit: UnitVolume,
output_unit: UnitVolume,
value: float,
*,
client: Client,
) -> Optional[Union[UnitVolumeConversion, Error]]:
) -> Optional[Union[UnitVolumeConversion, Error]] :
"""Convert a volume unit value to another volume unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return sync_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
).parsed
async def asyncio_detailed(
input_unit: UnitVolume,
output_unit: UnitVolume,
value: float,
*,
client: Client,
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
) -> Response[Optional[Union[UnitVolumeConversion, Error]]]:
kwargs = _get_kwargs(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
@ -125,19 +209,40 @@ async def asyncio_detailed(
async def asyncio(
input_unit: UnitVolume,
output_unit: UnitVolume,
value: float,
*,
client: Client,
) -> Optional[Union[UnitVolumeConversion, Error]]:
) -> Optional[Union[UnitVolumeConversion, Error]] :
"""Convert a volume unit value to another volume unit value. This is a nice endpoint to use for helper functions.""" # noqa: E501
return (
await asyncio_detailed(
input_unit=input_unit,
output_unit=output_unit,
value=value,
client=client,
)
).parsed

View File

@ -1 +1 @@
""" Contains methods for accessing the users API paths: A user is someone who uses the KittyCAD API. Here, we can create, delete, and list users. We can also get information about a user. Operations will only be authorized if the user is requesting information about themselves. """ # noqa: E501
""" Contains methods for accessing the users API paths: A user is someone who uses the KittyCAD API. Here, we can create, delete, and list users. We can also get information about a user. Operations will only be authorized if the user is requesting information about themselves. """ # noqa: E501

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user".format(
client.base_url,
) # noqa: E501
url = "{}/user".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,21 +25,25 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Error]:
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Error] :
return None
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Error]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -47,10 +53,13 @@ def _build_response(*, response: httpx.Response) -> Response[Optional[Error]]:
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -63,23 +72,28 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the authenticated user from KittyCAD's database.
This call will only succeed if all invoices associated with the user have been paid in full and there is no outstanding balance.
""" # noqa: E501
This call will only succeed if all invoices associated with the user have been paid in full and there is no outstanding balance.""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Error]]:
) -> Response[Optional[Error]]:
kwargs = _get_kwargs(
client=client,
)
@ -90,15 +104,17 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Error]:
) -> Optional[Error] :
"""This endpoint requires authentication by any KittyCAD user. It deletes the authenticated user from KittyCAD's database.
This call will only succeed if all invoices associated with the user have been paid in full and there is no outstanding balance.
""" # noqa: E501
This call will only succeed if all invoices associated with the user have been paid in full and there is no outstanding balance.""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
token: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/session/{token}".format(
client.base_url,
token=token,
) # noqa: E501
url = "{}/user/session/{token}".format(client.base_url, token=token,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,25 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Session, Error]]:
if response.status_code == 200:
response_200 = Session.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Session, Error]] :
if response.status_code == 200:
response_200 = Session.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Session, Error]]]:
) -> Response[Optional[Union[Session, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,12 +64,21 @@ def _build_response(
def sync_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Union[Session, Error]]]:
) -> Response[Optional[Union[Session, Error]]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -72,25 +91,43 @@ def sync_detailed(
def sync(
token: str,
*,
client: Client,
) -> Optional[Union[Session, Error]]:
) -> Optional[Union[Session, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.""" # noqa: E501
return sync_detailed(
token=token,
client=client,
).parsed
async def asyncio_detailed(
token: str,
*,
client: Client,
) -> Response[Optional[Union[Session, Error]]]:
) -> Response[Optional[Union[Session, Error]]]:
kwargs = _get_kwargs(
token=token,
client=client,
)
@ -101,15 +138,24 @@ async def asyncio_detailed(
async def asyncio(
token: str,
*,
client: Client,
) -> Optional[Union[Session, Error]]:
) -> Optional[Union[Session, Error]] :
"""This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.""" # noqa: E501
return (
await asyncio_detailed(
token=token,
client=client,
)
).parsed

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/users/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/users/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,25 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[User, Error]]:
if response.status_code == 200:
response_200 = User.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[User, Error]] :
if response.status_code == 200:
response_200 = User.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[User, Error]]]:
) -> Response[Optional[Union[User, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -54,12 +64,21 @@ def _build_response(
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[User, Error]]]:
) -> Response[Optional[Union[User, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -72,27 +91,45 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[Union[User, Error]]:
) -> Optional[Union[User, Error]] :
"""To get information about yourself, use `/users/me` as the endpoint. By doing so you will get the user information for the authenticated user.
Alternatively, to get information about the authenticated user, use `/user` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
Alternatively, to get information about the authenticated user, use `/user` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[User, Error]]]:
) -> Response[Optional[Union[User, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -103,17 +140,26 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Union[User, Error]]:
) -> Optional[Union[User, Error]] :
"""To get information about yourself, use `/users/me` as the endpoint. By doing so you will get the user information for the authenticated user.
Alternatively, to get information about the authenticated user, use `/user` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
Alternatively, to get information about the authenticated user, use `/user` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -9,14 +9,22 @@ from ...types import Response
def _get_kwargs(
id: str,
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/users-extended/{id}".format(
client.base_url,
id=id,
) # noqa: E501
url = "{}/users-extended/{id}".format(client.base_url, id=id,) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -26,27 +34,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(
*, response: httpx.Response
) -> Optional[Union[ExtendedUser, Error]]:
if response.status_code == 200:
response_200 = ExtendedUser.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[ExtendedUser, Error]] :
if response.status_code == 200:
response_200 = ExtendedUser.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[ExtendedUser, Error]]]:
) -> Response[Optional[Union[ExtendedUser, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -56,12 +64,21 @@ def _build_response(
def sync_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ExtendedUser, Error]]]:
) -> Response[Optional[Union[ExtendedUser, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -74,27 +91,45 @@ def sync_detailed(
def sync(
id: str,
*,
client: Client,
) -> Optional[Union[ExtendedUser, Error]]:
) -> Optional[Union[ExtendedUser, Error]] :
"""To get information about yourself, use `/users-extended/me` as the endpoint. By doing so you will get the user information for the authenticated user.
Alternatively, to get information about the authenticated user, use `/user/extended` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
Alternatively, to get information about the authenticated user, use `/user/extended` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
return sync_detailed(
id=id,
client=client,
).parsed
async def asyncio_detailed(
id: str,
*,
client: Client,
) -> Response[Optional[Union[ExtendedUser, Error]]]:
) -> Response[Optional[Union[ExtendedUser, Error]]]:
kwargs = _get_kwargs(
id=id,
client=client,
)
@ -105,17 +140,26 @@ async def asyncio_detailed(
async def asyncio(
id: str,
*,
client: Client,
) -> Optional[Union[ExtendedUser, Error]]:
) -> Optional[Union[ExtendedUser, Error]] :
"""To get information about yourself, use `/users-extended/me` as the endpoint. By doing so you will get the user information for the authenticated user.
Alternatively, to get information about the authenticated user, use `/user/extended` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
Alternatively, to get information about the authenticated user, use `/user/extended` endpoint.
To get information about any KittyCAD user, you must be a KittyCAD employee.""" # noqa: E501
return (
await asyncio_detailed(
id=id,
client=client,
)
).parsed

View File

@ -8,12 +8,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/front-hash".format(
client.base_url,
) # noqa: E501
url = "{}/user/front-hash".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -23,25 +25,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[str, Error]]:
if response.status_code == 200:
response_200 = response.text
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[str, Error]] :
if response.status_code == 200:
response_200 = response.text
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[str, Error]]]:
) -> Response[Optional[Union[str, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -51,10 +55,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[str, Error]]]:
) -> Response[Optional[Union[str, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -67,21 +74,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[str, Error]]:
) -> Optional[Union[str, Error]] :
"""This info is sent to front when initialing the front chat, it prevents impersonations using js hacks in the browser""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[str, Error]]]:
) -> Response[Optional[Union[str, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -92,13 +105,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[str, Error]]:
) -> Optional[Union[str, Error]] :
"""This info is sent to front when initialing the front chat, it prevents impersonations using js hacks in the browser""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

View File

@ -9,12 +9,14 @@ from ...types import Response
def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/user/onboarding".format(
client.base_url,
) # noqa: E501
url = "{}/user/onboarding".format(client.base_url, ) # noqa: E501
headers: Dict[str, Any] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()
@ -24,25 +26,27 @@ def _get_kwargs(
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
}
def _parse_response(*, response: httpx.Response) -> Optional[Union[Onboarding, Error]]:
if response.status_code == 200:
response_200 = Onboarding.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _parse_response(*, response: httpx.Response) -> Optional[Union[Onboarding, Error]] :
if response.status_code == 200:
response_200 = Onboarding.from_dict(response.json())
return response_200
if response.status_code == 400:
response_4XX = Error.from_dict(response.json())
return response_4XX
if response.status_code == 500:
response_5XX = Error.from_dict(response.json())
return response_5XX
return Error.from_dict(response.json())
def _build_response(
*, response: httpx.Response
) -> Response[Optional[Union[Onboarding, Error]]]:
) -> Response[Optional[Union[Onboarding, Error]]]:
return Response(
status_code=response.status_code,
content=response.content,
@ -52,10 +56,13 @@ def _build_response(
def sync_detailed(
*,
client: Client,
) -> Response[Optional[Union[Onboarding, Error]]]:
) -> Response[Optional[Union[Onboarding, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -68,21 +75,27 @@ def sync_detailed(
def sync(
*,
client: Client,
) -> Optional[Union[Onboarding, Error]]:
) -> Optional[Union[Onboarding, Error]] :
"""Checks key part of their api usage to determine their onboarding progress""" # noqa: E501
return sync_detailed(
client=client,
).parsed
async def asyncio_detailed(
*,
client: Client,
) -> Response[Optional[Union[Onboarding, Error]]]:
) -> Response[Optional[Union[Onboarding, Error]]]:
kwargs = _get_kwargs(
client=client,
)
@ -93,13 +106,16 @@ async def asyncio_detailed(
async def asyncio(
*,
client: Client,
) -> Optional[Union[Onboarding, Error]]:
) -> Optional[Union[Onboarding, Error]] :
"""Checks key part of their api usage to determine their onboarding progress""" # noqa: E501
return (
await asyncio_detailed(
client=client,
)
).parsed

Some files were not shown because too many files have changed in this diff Show More