KittyCAD logo

API Reference

KittyCAD's API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

The root endpoint / returns the OpenAPI specification for the API. It's handy if you want to use it to generate things.

Base url
https://api.kittycad.io
Client libraries

Authentication

KittyCAD's API uses API keys, also referred to as API tokens, to authenticate requests. You can view and manage your API keys in your account on the KittyCAD website.

Authentication to the API is performed via Bearer Token Auth. Provide your API key as the token value. We will automatically add your token to the examples here if you are logged in.

All API requests must be made over HTTPS. API requests without authentication will fail.

Authenticated request
$ curl --header "Authorization: Bearer $TOKEN" \
	"https://api.kittycad.io/_meta/debug/session"

Errors

KittyCAD uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, etc.). Codes in the 5xx range indicate an error with KittyCAD's servers (these are rare).

HTTP Status Code Summary
400 - Bad RequestThe request failed could not authenticate, but the token existed.
401 - UnauthorizedNo valid API key provided.
403 - ForbiddenThe API key doesn't have permissions to perform the request.
404 - Not FoundThe requested resource doesn't exist.
406 - Not AcceptableThe request was unacceptable, often due to missing a required parameter.
500 - Internal Server ErrorThe server encountered an unexpected condition that prevented it from fulfilling the request.

API Calls

Get an async operation

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.

Parameters

  • idstringrequired

    The ID of the async operation.

Returns

200 OK

successful operation

    GET/async/operations/{id}
    $ curl "https://api.kittycad.io/async/operations/{id}" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "completed_at": "2022-09-22T21:57:31.900Z",
      "created_at": "2022-09-22T21:57:31.900Z",
      "error": "WRdcO",
      "id": "1112ecdb-babd-49a8-b92f-962cf41d91d0",
      "output": "BASE64_ENCODED_BYTE_STRING",
      "output_format": "step",
      "src_format": "step",
      "started_at": "2022-09-22T21:57:31.901Z",
      "status": "In Progress",
      "updated_at": "2022-09-22T21:57:31.901Z",
      "user_id": "GtzEWuY8TjFjnCF2vqraku090cO0O7"
    }

    List API calls for your user

    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.

    Parameters

    • limitintegerrequired

      Maximum number of items returned by a single call

    • page_tokenstringrequired

      Token returned by previous call to retrieve the subsequent page

    • sort_bystringrequired

      Supported set of sort modes for scanning by created_at only.

      Currently, we only support scanning in ascending order.

      Possible values
      • created-at-ascending
      • created-at-descending

    Returns

    200 OK

    successful operation

    • itemsarrayoptional

      list of items on this page of results

      Array of
      • completed_atstringISO-8601optional

        The date and time the API call completed billing.

      • created_atstringISO-8601optional

        The date and time the API call was created.

      • durationintegerDurationoptional

        The duration of the API call.

      • emailstringEmail Addressoptional

        The user's email address.

      • endpointstringoptional

        The endpoint requested by the API call.

      • idstringUUIDoptional

        The unique identifier for the API call. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • ip_addressstringIP Addressoptional

        The ip address of the origin.

      • litterboxbooleanoptional

        If the API call was spawned from the litterbox or not.

      • methodstringoptional

        The HTTP method requsted by the API call. The Request Method (VERB)

        This type also contains constants for a number of common HTTP methods such as GET, POST, etc.

        Currently includes 8 variants representing the 8 methods defined in RFC 7230, plus PATCH, and an Extension variant for all extensions.

        Possible values
        • OPTIONS
        • GET
        • POST
        • PUT
        • DELETE
        • HEAD
        • TRACE
        • CONNECT
        • PATCH
        • EXTENSION
      • minutesintegeroptional

        The number of minutes the API call was billed for.

      • originstringoptional

        The origin of the API call.

      • pricenumberUSD Priceoptional

        The price of the API call.

      • request_bodystringoptional

        The request body sent by the API call.

      • request_query_paramsstringoptional

        The request query params sent by the API call.

      • response_bodystringoptional

        The response body returned by the API call. We do not store this information if it is above a certain size.

      • started_atstringISO-8601optional

        The date and time the API call started billing.

      • status_codeintegeroptional

        The status code returned by the API call.

      • stripe_invoice_item_idstringoptional

        The Stripe invoice item ID of the API call if it is billable.

      • tokenstringUUIDoptional

        The API token that made the API call. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • updated_atstringISO-8601optional

        The date and time the API call was last updated.

      • user_agentstringoptional

        The user agent of the request.

      • user_idstringoptional

        The ID of the user that made the API call.

    • next_pagestringoptional

      token used to fetch the next page of results (if any)

    GET/user/api-calls
    $ curl "https://api.kittycad.io/user/api-calls" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "items": [
        {
          "completed_at": "2022-09-22T21:57:32.046Z",
          "created_at": "2022-09-22T21:57:32.046Z",
          "duration": 4,
          "email": "O6Qj6@M7C.com",
          "endpoint": "i",
          "id": "48b1745a-b931-424f-bd9c-d0ff342ffcec",
          "ip_address": "192.0.2.78",
          "litterbox": true,
          "method": "OPTIONS",
          "minutes": 30,
          "origin": "rhPkF10ILbZZG5",
          "price": "59.01",
          "request_body": "Efnk",
          "request_query_params": "rpPeS6hfOg46EoHY",
          "response_body": "Hzc7cD5jDgtsqb5",
          "started_at": "2022-09-22T21:57:32.047Z",
          "status_code": 15,
          "stripe_invoice_item_id": "Uzdvhd1xevphC",
          "token": "54284707-23bc-4789-8f92-fbdbf4d3b79f",
          "updated_at": "2022-09-22T21:57:32.047Z",
          "user_agent": "2Jsq",
          "user_id": "X7f7Sof9bpuzxVs8J1"
        }
      ],
      "next_page": "yZbt"
    }

    Get an API call for a user

    This endpoint requires authentication by any KittyCAD user. It returns details of the requested API call for the user.

    Parameters

    • idstringrequired

      The ID of the API call.

    Returns

    200 OK

    successful operation

    • completed_atstringISO-8601optional

      The date and time the API call completed billing.

    • created_atstringISO-8601optional

      The date and time the API call was created.

    • durationintegerDurationoptional

      The duration of the API call.

    • emailstringEmail Addressoptional

      The user's email address.

    • endpointstringoptional

      The endpoint requested by the API call.

    • idstringUUIDoptional

      The unique identifier for the API call. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • ip_addressstringIP Addressoptional

      The ip address of the origin.

    • litterboxbooleanoptional

      If the API call was spawned from the litterbox or not.

    • methodstringoptional

      The HTTP method requsted by the API call. The Request Method (VERB)

      This type also contains constants for a number of common HTTP methods such as GET, POST, etc.

      Currently includes 8 variants representing the 8 methods defined in RFC 7230, plus PATCH, and an Extension variant for all extensions.

      Possible values
      • OPTIONS
      • GET
      • POST
      • PUT
      • DELETE
      • HEAD
      • TRACE
      • CONNECT
      • PATCH
      • EXTENSION
    • minutesintegeroptional

      The number of minutes the API call was billed for.

    • originstringoptional

      The origin of the API call.

    • pricenumberUSD Priceoptional

      The price of the API call.

    • request_bodystringoptional

      The request body sent by the API call.

    • request_query_paramsstringoptional

      The request query params sent by the API call.

    • response_bodystringoptional

      The response body returned by the API call. We do not store this information if it is above a certain size.

    • started_atstringISO-8601optional

      The date and time the API call started billing.

    • status_codeintegeroptional

      The status code returned by the API call.

    • stripe_invoice_item_idstringoptional

      The Stripe invoice item ID of the API call if it is billable.

    • tokenstringUUIDoptional

      The API token that made the API call. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • updated_atstringISO-8601optional

      The date and time the API call was last updated.

    • user_agentstringoptional

      The user agent of the request.

    • user_idstringoptional

      The ID of the user that made the API call.

    GET/user/api-calls/{id}
    $ curl "https://api.kittycad.io/user/api-calls/{id}" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "completed_at": "2022-09-22T21:57:32.149Z",
      "created_at": "2022-09-22T21:57:32.149Z",
      "duration": 32,
      "email": "tTmY@x.com",
      "endpoint": "2jK",
      "id": "a0af67d7-22d6-4ae2-86e5-a7737a94fa82",
      "ip_address": "192.0.2.161",
      "litterbox": true,
      "method": "HEAD",
      "minutes": 30,
      "origin": "a",
      "price": "95.73",
      "request_body": "F2F",
      "request_query_params": "ivbL6395qEfnASNCyYDXeSbx",
      "response_body": "0Vizt7",
      "started_at": "2022-09-22T21:57:32.149Z",
      "status_code": 6,
      "stripe_invoice_item_id": "qjXgqpz8UnOfYJfB6D",
      "token": "493a6553-f9f0-4760-bb94-deaddf5ad283",
      "updated_at": "2022-09-22T21:57:32.149Z",
      "user_agent": "bevTZ",
      "user_id": "I5BR6bcUMtl"
    }

    API Tokens

    List API tokens for your user

    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.

    Parameters

    • limitintegerrequired

      Maximum number of items returned by a single call

    • page_tokenstringrequired

      Token returned by previous call to retrieve the subsequent page

    • sort_bystringrequired

      Supported set of sort modes for scanning by created_at only.

      Currently, we only support scanning in ascending order.

      Possible values
      • created-at-ascending
      • created-at-descending

    Returns

    200 OK

    successful operation

    • itemsarrayoptional

      list of items on this page of results

      Array of
      • created_atstringISO-8601optional

        The date and time the API token was created.

      • idstringoptional

        The unique identifier for the API token.

      • is_validbooleanoptional

        If the token is valid. We never delete API tokens, but we can mark them as invalid. We save them for ever to preserve the history of the API token.

      • tokenstringUUIDoptional

        The API token itself. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • updated_atstringISO-8601optional

        The date and time the API token was last updated.

      • user_idstringoptional

        The ID of the user that owns the API token.

    • next_pagestringoptional

      token used to fetch the next page of results (if any)

    GET/user/api-tokens
    $ curl "https://api.kittycad.io/user/api-tokens" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "items": [
        {
          "created_at": "2022-09-22T21:57:32.199Z",
          "id": "VDAyaKAa3PlmxfyQnO8",
          "is_valid": true,
          "token": "f0c0bbce-4016-46ad-a278-b19e8d13bc32",
          "updated_at": "2022-09-22T21:57:32.199Z",
          "user_id": ""
        }
      ],
      "next_page": "e411pRWXNIRn9lexe7XiJJtX"
    }

    Create a new API token for your user

    This endpoint requires authentication by any KittyCAD user. It creates a new API token for the authenticated user.

    Parameters

    No parameters

    Returns

    201 Created

    successful creation

    • created_atstringISO-8601optional

      The date and time the API token was created.

    • idstringoptional

      The unique identifier for the API token.

    • is_validbooleanoptional

      If the token is valid. We never delete API tokens, but we can mark them as invalid. We save them for ever to preserve the history of the API token.

    • tokenstringUUIDoptional

      The API token itself. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • updated_atstringISO-8601optional

      The date and time the API token was last updated.

    • user_idstringoptional

      The ID of the user that owns the API token.

    POST/user/api-tokens
    $ curl -X POST "https://api.kittycad.io/user/api-tokens" \
    	--header "Authorization: Bearer $TOKEN"
    201 Created
    Response
    {
      "created_at": "2022-09-22T21:57:32.221Z",
      "id": "E2oE6t4IOo",
      "is_valid": false,
      "token": "140f6644-3c89-47aa-93ce-97dc762b7fa4",
      "updated_at": "2022-09-22T21:57:32.221Z",
      "user_id": "qTmPgnle6S8wBTMoT3oxRGkGzC"
    }

    Delete an API token for your user

    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.

    Parameters

    • tokenstringUUIDrequired

      The API token.

    Returns

    204 No Content

    successful deletion

    DELETE/user/api-tokens/{token}
    $ curl -X DELETE "https://api.kittycad.io/user/api-tokens/{token}" \
    	--header "Authorization: Bearer $TOKEN"

    Get an API token for your user

    This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.

    Parameters

    • tokenstringUUIDrequired

      The API token.

    Returns

    200 OK

    successful operation

    • created_atstringISO-8601optional

      The date and time the API token was created.

    • idstringoptional

      The unique identifier for the API token.

    • is_validbooleanoptional

      If the token is valid. We never delete API tokens, but we can mark them as invalid. We save them for ever to preserve the history of the API token.

    • tokenstringUUIDoptional

      The API token itself. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • updated_atstringISO-8601optional

      The date and time the API token was last updated.

    • user_idstringoptional

      The ID of the user that owns the API token.

    GET/user/api-tokens/{token}
    $ curl "https://api.kittycad.io/user/api-tokens/{token}" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "created_at": "2022-09-22T21:57:32.251Z",
      "id": "kNe35ziQa8QS4qrMLrm6pzyzi4G",
      "is_valid": true,
      "token": "c09ef09a-049d-422c-90c4-3f7f40546343",
      "updated_at": "2022-09-22T21:57:32.251Z",
      "user_id": "o0c8la6"
    }

    Apps

    Constant

    Get a physics constant

    Parameters

    • constantstringrequired

      The constant to get.

      Possible values
      • pi
      • c
      • speed_of_light
      • G
      • newtonian_graviation
      • h
      • plank_const
      • mu_0
      • vacuum_permeability
      • E_0
      • vacuum_permitivity
      • Z_0
      • vacuum_impedance
      • k_e
      • coulomb_const
      • e
      • elementary_charge
      • m_e
      • electron_mass
      • m_p
      • proton_mass
      • mu_B
      • bohr_magneton
      • NA
      • avogadro_num
      • R
      • molar_gas_const
      • K_B
      • boltzmann_const
      • F
      • faraday_const
      • sigma
      • stefan_boltzmann_const

    Returns

    200 OK

    successful operation

    • completed_atstringISO-8601optional

      The time and date the API call was completed.

    • constantstringoptional

      The constant we are returning. The valid types of phys constant names.

      Possible values
      • pi
      • c
      • speed_of_light
      • G
      • newtonian_graviation
      • h
      • plank_const
      • mu_0
      • vacuum_permeability
      • E_0
      • vacuum_permitivity
      • Z_0
      • vacuum_impedance
      • k_e
      • coulomb_const
      • e
      • elementary_charge
      • m_e
      • electron_mass
      • m_p
      • proton_mass
      • mu_B
      • bohr_magneton
      • NA
      • avogadro_num
      • R
      • molar_gas_const
      • K_B
      • boltzmann_const
      • F
      • faraday_const
      • sigma
      • stefan_boltzmann_const
    • created_atstringISO-8601optional

      The time and date the API call was created.

    • errorstringoptional

      The error the function returned, if any.

    • idstringUUIDoptional

      The unique identifier of the API call.

      This is the same as the API call ID. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • started_atstringISO-8601optional

      The time and date the API call was started.

    • statusstringoptional

      The status of the API call. The status of an async API call.

      Possible values
      • Queued
      • Uploaded
      • In Progress
      • Completed
      • Failed
    • updated_atstringISO-8601optional

      The time and date the API call was last updated.

    • user_idstringoptional

      The user ID of the user who created the API call.

    • valuenumberoptional

      The resulting value of the constant.

    GET/constant/physics/{constant}
    $ curl "https://api.kittycad.io/constant/physics/{constant}" \
    	--header "Authorization: Bearer $TOKEN"
    200 OK
    Response
    {
      "completed_at": "2022-09-22T21:57:32.291Z",
      "constant": "sigma",
      "created_at": "2022-09-22T21:57:32.291Z",
      "error": "YB7wYgnpvpD8aTRKxf",
      "id": "7b345735-0661-421d-b9b7-fee2621b7f65",
      "started_at": "2022-09-22T21:57:32.291Z",
      "status": "Failed",
      "updated_at": "2022-09-22T21:57:32.291Z",
      "user_id": "p6i5auCJ1kx0owVsaWDgP6Ax",
      "value": 18
    }

    File

    Get CAD file center of mass   
    beta

    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.

    Parameters

    • material_densitynumberrequired

      The material density.

    • src_formatstringrequired

      The format of the file.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
    • bodyapplication/octet-streamstringBINARYoptional

    Returns

    201 Created

    successful creation

    • center_of_massarrayoptional

      The resulting center of mass.

    • completed_atstringISO-8601optional

      The time and date the API call was completed.

    • created_atstringISO-8601optional

      The time and date the API call was created.

    • errorstringoptional

      The error the function returned, if any.

    • idstringUUIDoptional

      The unique identifier of the API call.

      This is the same as the API call ID. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • material_densitynumberoptional

      The material density as denoted by the user.

    • src_formatstringoptional

      The source format of the file. The valid types of source file formats.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
    • started_atstringISO-8601optional

      The time and date the API call was started.

    • statusstringoptional

      The status of the API call. The status of an async API call.

      Possible values
      • Queued
      • Uploaded
      • In Progress
      • Completed
      • Failed
    • updated_atstringISO-8601optional

      The time and date the API call was last updated.

    • user_idstringoptional

      The user ID of the user who created the API call.

    POST/file/center-of-mass
    $ curl -X POST "https://api.kittycad.io/file/center-of-mass" \
    	--header "Authorization: Bearer $TOKEN" \
    	--header "Content-Type: application/octet-stream" \
    	--data-binary "@path/to/file"
    201 Created
    Response
    {
      "center_of_mass": [
        6
      ],
      "completed_at": "2022-09-22T21:57:32.365Z",
      "created_at": "2022-09-22T21:57:32.365Z",
      "error": "Mv3wxeoGRGHRRMtwu79s",
      "id": "3eb3aa2c-8e56-47f1-be25-d9680ef72f41",
      "material_density": 22,
      "src_format": "stl",
      "started_at": "2022-09-22T21:57:32.365Z",
      "status": "Completed",
      "updated_at": "2022-09-22T21:57:32.365Z",
      "user_id": "SnTHJL42ZHcXuYjx14HINbuwgz"
    }

    Convert CAD file

    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.

    Parameters

    • output_formatstringrequired

      The format the file should be converted to.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
      • fbxb
    • src_formatstringrequired

      The format of the file to convert.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
    • bodyapplication/octet-streamstringBINARYoptional

    Returns

    201 Created

    successful creation

    • completed_atstringISO-8601optional

      The time and date the API call was completed.

    • created_atstringISO-8601optional

      The time and date the API call was created.

    • errorstringoptional

      The error the function returned, if any.

    • idstringUUIDoptional

      The unique identifier of the API call.

      This is the same as the API call ID. A uuid.

      A Version 4 UUID is a universally unique identifier that is generated using random numbers.

    • outputstringBASE64optional

      The converted file, if completed, base64 encoded.

    • output_formatstringoptional

      The output format of the file conversion. The valid types of output file formats.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
      • fbxb
    • src_formatstringoptional

      The source format of the file conversion. The valid types of source file formats.

      Possible values
      • stl
      • obj
      • dae
      • step
      • fbx
    • started_atstringISO-8601optional

      The time and date the API call was started.

    • statusstringoptional

      The status of the API call. The status of an async API call.

      Possible values
      • Queued
      • Uploaded
      • In Progress
      • Completed
      • Failed
    • updated_atstringISO-8601optional

      The time and date the API call was last updated.

    • user_idstringoptional

      The user ID of the user who created the API call.

    POST/file/conversion/{src_format}/{output_format}
    $ curl -X POST "https://api.kittycad.io/file/conversion/{src_format}/{output_format}" \
    	--header "Authorization: Bearer $TOKEN" \
    	--header "Content-Type: application/octet-stream" \
    	--data-binary "@path/to/file"
    201 Created
    Response
    {
      "completed_at": "2022-09-22T21:57:32.409Z",
      "created_at": "2022-09-22T21:57:32.409Z",
      "error": "xHCx6krTz4uTQCa",
      "id": "8ceb40f7-a4bc-4469-8187-7136be5c1cee",
      "output": "BASE64_ENCODED_BYTE_STRING",
      "output_format": "step",
      "src_format": "dae",
      "started_at": "2022-09-22T21:57:32.409Z",
      "status": "Queued",
      "updated_at": "2022-09-22T21:57:32.409Z",
      "user_id": "rf88yG5G5ymYCMnPA1ym9ce"
    }

    Get a file conversion

    Get the status and output of an async file conversion.

    This endpoint requires authentication by any KittyCAD user. It returns details of the requested file conversion for the user.

    If the user is not authenticated to view the specified file conversion, then it is not returned.

    Only KittyCAD employees with the proper access can view file conversions for other users.

    Parameters

    • idstringrequired

      The ID of the async operation.

    Returns

    200 OK

    successful operation

      GET/file/conversions/{id}
      $ curl "https://api.kittycad.io/file/conversions/{id}" \
      	--header "Authorization: Bearer $TOKEN"
      200 OK
      Response
      {
        "completed_at": "2022-09-22T21:57:32.441Z",
        "created_at": "2022-09-22T21:57:32.441Z",
        "error": "IqMRytoMH7",
        "id": "5027806a-ebd7-40e6-94c9-af4ca413ae60",
        "output": "BASE64_ENCODED_BYTE_STRING",
        "output_format": "dae",
        "src_format": "step",
        "started_at": "2022-09-22T21:57:32.441Z",
        "status": "Queued",
        "updated_at": "2022-09-22T21:57:32.441Z",
        "user_id": "0dZh34cLe3WI0GqB1iJ1ndTIE"
      }

      Get CAD file density   
      beta

      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.

      Parameters

      • material_massnumberrequired

        The material mass.

      • src_formatstringrequired

        The format of the file.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • bodyapplication/octet-streamstringBINARYoptional

      Returns

      201 Created

      successful creation

      • completed_atstringISO-8601optional

        The time and date the API call was completed.

      • created_atstringISO-8601optional

        The time and date the API call was created.

      • densitynumberoptional

        The resulting density.

      • errorstringoptional

        The error the function returned, if any.

      • idstringUUIDoptional

        The unique identifier of the API call.

        This is the same as the API call ID. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • material_massnumberoptional

        The material mass as denoted by the user.

      • src_formatstringoptional

        The source format of the file. The valid types of source file formats.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • started_atstringISO-8601optional

        The time and date the API call was started.

      • statusstringoptional

        The status of the API call. The status of an async API call.

        Possible values
        • Queued
        • Uploaded
        • In Progress
        • Completed
        • Failed
      • updated_atstringISO-8601optional

        The time and date the API call was last updated.

      • user_idstringoptional

        The user ID of the user who created the API call.

      POST/file/density
      $ curl -X POST "https://api.kittycad.io/file/density" \
      	--header "Authorization: Bearer $TOKEN" \
      	--header "Content-Type: application/octet-stream" \
      	--data-binary "@path/to/file"
      201 Created
      Response
      {
        "completed_at": "2022-09-22T21:57:32.499Z",
        "created_at": "2022-09-22T21:57:32.499Z",
        "density": 29,
        "error": "rv87zhHXVuFrnHdDQl97",
        "id": "398e013c-0597-4e4f-a2b5-3e517bd37dca",
        "material_mass": 17,
        "src_format": "dae",
        "started_at": "2022-09-22T21:57:32.499Z",
        "status": "In Progress",
        "updated_at": "2022-09-22T21:57:32.499Z",
        "user_id": "VtWG9W5CFW"
      }

      Get CAD file mass   
      beta

      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.

      Parameters

      • material_densitynumberrequired

        The material density.

      • src_formatstringrequired

        The format of the file.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • bodyapplication/octet-streamstringBINARYoptional

      Returns

      201 Created

      successful creation

      • completed_atstringISO-8601optional

        The time and date the API call was completed.

      • created_atstringISO-8601optional

        The time and date the API call was created.

      • errorstringoptional

        The error the function returned, if any.

      • idstringUUIDoptional

        The unique identifier of the API call.

        This is the same as the API call ID. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • massnumberoptional

        The resulting mass.

      • material_densitynumberoptional

        The material density as denoted by the user.

      • src_formatstringoptional

        The source format of the file. The valid types of source file formats.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • started_atstringISO-8601optional

        The time and date the API call was started.

      • statusstringoptional

        The status of the API call. The status of an async API call.

        Possible values
        • Queued
        • Uploaded
        • In Progress
        • Completed
        • Failed
      • updated_atstringISO-8601optional

        The time and date the API call was last updated.

      • user_idstringoptional

        The user ID of the user who created the API call.

      POST/file/mass
      $ curl -X POST "https://api.kittycad.io/file/mass" \
      	--header "Authorization: Bearer $TOKEN" \
      	--header "Content-Type: application/octet-stream" \
      	--data-binary "@path/to/file"
      201 Created
      Response
      {
        "completed_at": "2022-09-22T21:57:32.537Z",
        "created_at": "2022-09-22T21:57:32.537Z",
        "error": "7CuPqRhrp",
        "id": "98d878e4-3cf5-45e2-8c9f-8d1daf34194e",
        "mass": 16,
        "material_density": 22,
        "src_format": "stl",
        "started_at": "2022-09-22T21:57:32.537Z",
        "status": "Completed",
        "updated_at": "2022-09-22T21:57:32.537Z",
        "user_id": "dn7Czi4s3dB8"
      }

      Get CAD file surface area   
      beta

      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.

      Parameters

      • src_formatstringrequired

        The format of the file.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • bodyapplication/octet-streamstringBINARYoptional

      Returns

      201 Created

      successful creation

      • completed_atstringISO-8601optional

        The time and date the API call was completed.

      • created_atstringISO-8601optional

        The time and date the API call was created.

      • errorstringoptional

        The error the function returned, if any.

      • idstringUUIDoptional

        The unique identifier of the API call.

        This is the same as the API call ID. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • src_formatstringoptional

        The source format of the file. The valid types of source file formats.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • started_atstringISO-8601optional

        The time and date the API call was started.

      • statusstringoptional

        The status of the API call. The status of an async API call.

        Possible values
        • Queued
        • Uploaded
        • In Progress
        • Completed
        • Failed
      • surface_areanumberoptional

        The resulting surface area.

      • updated_atstringISO-8601optional

        The time and date the API call was last updated.

      • user_idstringoptional

        The user ID of the user who created the API call.

      POST/file/surface-area
      $ curl -X POST "https://api.kittycad.io/file/surface-area" \
      	--header "Authorization: Bearer $TOKEN" \
      	--header "Content-Type: application/octet-stream" \
      	--data-binary "@path/to/file"
      201 Created
      Response
      {
        "completed_at": "2022-09-22T21:57:32.597Z",
        "created_at": "2022-09-22T21:57:32.597Z",
        "error": "oXjoLqW6J",
        "id": "88c72a12-5399-4a4f-997e-a0249a43a175",
        "src_format": "stl",
        "started_at": "2022-09-22T21:57:32.597Z",
        "status": "Queued",
        "surface_area": 31,
        "updated_at": "2022-09-22T21:57:32.597Z",
        "user_id": "ubTWMnDmBx5dPVqopSgpt"
      }

      Get CAD file volume   
      beta

      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.

      Parameters

      • src_formatstringrequired

        The format of the file.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • bodyapplication/octet-streamstringBINARYoptional

      Returns

      201 Created

      successful creation

      • completed_atstringISO-8601optional

        The time and date the API call was completed.

      • created_atstringISO-8601optional

        The time and date the API call was created.

      • errorstringoptional

        The error the function returned, if any.

      • idstringUUIDoptional

        The unique identifier of the API call.

        This is the same as the API call ID. A uuid.

        A Version 4 UUID is a universally unique identifier that is generated using random numbers.

      • src_formatstringoptional

        The source format of the file. The valid types of source file formats.

        Possible values
        • stl
        • obj
        • dae
        • step
        • fbx
      • started_atstringISO-8601optional

        The time and date the API call was started.

      • statusstringoptional

        The status of the API call. The status of an async API call.

        Possible values
        • Queued
        • Uploaded
        • In Progress
        • Completed
        • Failed
      • updated_atstringISO-8601optional

        The time and date the API call was last updated.

      • user_idstringoptional

        The user ID of the user who created the API call.

      • volumenumberoptional

        The resulting volume.

      POST/file/volume
      $ curl -X POST "https://api.kittycad.io/file/volume" \
      	--header "Authorization: Bearer $TOKEN" \
      	--header "Content-Type: application/octet-stream" \
      	--data-binary "@path/to/file"
      201 Created
      Response
      {
        "completed_at": "2022-09-22T21:57:32.628Z",
        "created_at": "2022-09-22T21:57:32.628Z",
        "error": "eeK0ZUd36",
        "id": "a6f23f37-6687-417a-af65-5f85eb576129",
        "src_format": "fbx",
        "started_at": "2022-09-22T21:57:32.629Z",
        "status": "Failed",
        "updated_at": "2022-09-22T21:57:32.629Z",
        "user_id": "Y0GxiYbAx9jbrgdFKDNQfJaj",
        "volume": 17
      }

      Get a file conversion for your user

      Get the status and output of an async file conversion. If completed, the contents of the converted file (output) will be returned as a base64 encoded string.

      This endpoint requires authentication by any KittyCAD user. It returns details of the requested file conversion for the user.

      Parameters

      • idstringrequired

        The ID of the async operation.

      Returns

      200 OK

      successful operation

        GET/user/file/conversions/{id}
        $ curl "https://api.kittycad.io/user/file/conversions/{id}" \
        	--header "Authorization: Bearer $TOKEN"
        200 OK
        Response
        {
          "completed_at": "2022-09-22T21:57:32.646Z",
          "created_at": "2022-09-22T21:57:32.646Z",
          "error": "EHGLojeswg2mHKlA",
          "id": "65ec7cf9-e8b8-4b9e-ad24-2683e453b74e",
          "src_format": "stl",
          "started_at": "2022-09-22T21:57:32.646Z",
          "status": "Failed",
          "updated_at": "2022-09-22T21:57:32.646Z",
          "user_id": "dEMAGVVyzjKJo9fA",
          "volume": 28
        }

        Meta

        Get OpenAPI schema

        Parameters

        No parameters

        Returns

        200 OK

        successful operation

          GET/
          $ curl "https://api.kittycad.io/" \
          	--header "Authorization: Bearer $TOKEN"
          200 OK
          Response

          Return pong

          Parameters

          No parameters

          Returns

          200 OK

          successful operation

          • messagestringoptional

            The pong response.

          GET/ping
          $ curl "https://api.kittycad.io/ping" \
          	--header "Authorization: Bearer $TOKEN"
          200 OK
          Response
          {
            "message": "aFFF5GPvxSfmROSj"
          }

          Oauth2

          Payments

          Delete payment info for your user

          This includes billing address, phone, and name.

          This endpoint requires authentication by any KittyCAD user. It deletes the payment information for the authenticated user.

          Parameters

          No parameters

          Returns

          204 No Content

          successful deletion

          DELETE/user/payment
          $ curl -X DELETE "https://api.kittycad.io/user/payment" \
          	--header "Authorization: Bearer $TOKEN"

          Get payment info about your user

          This includes billing address, phone, and name.

          This endpoint requires authentication by any KittyCAD user. It gets the payment information for the authenticated user.

          Parameters

          No parameters

          Returns

          200 OK

          successful operation

          • addressobjectoptional

            The customer's address. The struct that is used to create a new record. This is automatically generated and has all the same fields as the main struct only it is missing the id.

            Object
            • citystringoptional

              The city component.

            • countrystringoptional

              The country component.

            • statestringoptional

              The state component.

            • street1stringoptional

              The first street component.

            • street2stringoptional

              The second street component.

            • user_idstringoptional

              The user ID that this address belongs to.

            • zipstringoptional

              The zip component.

          • balancenumberUSD Priceoptional

            Current balance, if any, being stored on the customer in the payments service.

            If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that will be added to their next invoice. The balance does not refer to any unpaid invoices; it solely takes into account amounts that have yet to be successfully applied to any invoice. This balance is only taken into account as invoices are finalized.

          • created_atstringISO-8601optional

            Time at which the object was created.

          • currencystringoptional

            Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes. Currency is the list of supported currencies.

            For more details see https://support.stripe.com/questions/which-currencies-does-stripe-support.

            Possible values
            • aed
            • afn
            • all
            • amd
            • ang
            • aoa
            • ars
            • aud
            • awg
            • azn
            • bam
            • bbd
            • bdt
            • bgn
            • bif
            • bmd
            • bnd
            • bob
            • brl
            • bsd
            • bwp
            • bzd
            • cad
            • cdf
            • chf
            • clp
            • cny
            • cop
            • crc
            • cve
            • czk
            • djf
            • dkk
            • dop
            • dzd
            • eek
            • egp
            • etb
            • eur
            • fjd
            • fkp
            • gbp
            • gel
            • gip
            • gmd
            • gnf
            • gtq
            • gyd
            • hkd
            • hnl
            • hrk
            • htg
            • huf
            • idr
            • ils
            • inr
            • isk
            • jmd
            • jpy
            • kes
            • kgs
            • khr
            • kmf
            • krw
            • kyd
            • kzt
            • lak
            • lbp
            • lkr
            • lrd
            • lsl
            • ltl
            • lvl
            • mad
            • mdl
            • mga
            • mkd
            • mnt
            • mop
            • mro
            • mur
            • mvr
            • mwk
            • mxn
            • myr
            • mzn
            • nad
            • ngn
            • nio
            • nok
            • npr
            • nzd
            • pab
            • pen
            • pgk
            • php
            • pkr
            • pln
            • pyg
            • qar
            • ron
            • rsd
            • rub
            • rwf
            • sar
            • sbd
            • scr
            • sek
            • sgd
            • shp
            • sll
            • sos
            • srd
            • std
            • svc
            • szl
            • thb
            • tjs
            • top
            • try
            • ttd
            • twd
            • tzs
            • uah
            • ugx
            • usd
            • uyu
            • uzs
            • vef
            • vnd
            • vuv
            • wst
            • xaf
            • xcd
            • xof
            • xpf
            • yer
            • zar
            • zmw
          • delinquentbooleanoptional

            When the customer's latest invoice is billed by charging automatically, delinquent is true if the invoice's latest charge failed.

            When the customer's latest invoice is billed by sending an invoice, delinquent is true if the invoice isn't paid by its due date. If an invoice is marked uncollectible by dunning, delinquent doesn't get reset to false.

          • emailstringEmail Addressoptional

            The customer's email address.

          • idstringoptional

            Unique identifier for the object.

          • metadataobjectoptional

            Set of key-value pairs.

          • namestringoptional

            The customer's full name or business name.

          • phonestringPhone Numberoptional

            The customer's phone number.

          GET/user/payment
          $ curl "https://api.kittycad.io/user/payment" \
          	--header "Authorization: Bearer $TOKEN"
          200 OK
          Response
          {
            "address": {
              "city": "H5G3B6MVe9xnjlJCfn1MxMPS",
              "country": "Xw9AktCrWzY",
              "state": "",
              "street1": "Tqyd78LPodwEhL",
              "street2": "ndfLo0Q",
              "user_id": "V5dXsZeuoFEhMiVhv8yvqU",
              "zip": "742udGhuE8YXNdK"
            },
            "balance": "33.39",
            "created_at": "2022-09-22T21:57:32.723Z",
            "currency": "idr",
            "delinquent": false,
            "email": "YBAFB@X.com",
            "id": "Ao6jQUdyqS1k6l7zGFdjFq",
            "metadata": {},
            "name": "uLUp3Q9I4VyOlv0nooh",
            "phone": "+1-709-490-4093"
          }

          Create payment info for your user

          This includes billing address, phone, and name.

          This endpoint requires authentication by any KittyCAD user. It creates the payment information for the authenticated user.

          Parameters

          • bodyapplication/jsonobjectoptional

            The billing information for payments.

            Object
            • addressobjectoptional

              The address of the customer. The struct that is used to create a new record. This is automatically generated and has all the same fields as the main struct only it is missing the id.

              Object
              • citystringoptional

                The city component.

              • countrystringoptional

                The country component.

              • statestringoptional

                The state component.

              • street1stringoptional

                The first street component.

              • street2stringoptional

                The second street component.

              • user_idstringoptional

                The user ID that this address belongs to.

              • zipstringoptional

                The zip component.

            • namestringoptional

              The name of the customer.

            • phonestringPhone Numberoptional

              The phone for the customer.

          Returns

          201 Created

          successful creation

          • addressobjectoptional

            The customer's address. The struct that is used to create a new record. This is automatically generated and has all the same fields as the main struct only it is missing the id.

            Object
            • citystringoptional

              The city component.

            • countrystringoptional

              The country component.

            • statestringoptional

              The state component.

            • street1stringoptional

              The first street component.

            • street2stringoptional

              The second street component.

            • user_idstringoptional

              The user ID that this address belongs to.

            • zipstringoptional

              The zip component.

          • balancenumberUSD Priceoptional

            Current balance, if any, being stored on the customer in the payments service.

            If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that will be added to their next invoice. The balance does not refer to any unpaid invoices; it solely takes into account amounts that have yet to be successfully applied to any invoice. This balance is only taken into account as invoices are finalized.

          • created_atstringISO-8601optional

            Time at which the object was created.

          • currencystringoptional

            Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes. Currency is the list of supported currencies.

            For more details see https://support.stripe.com/questions/which-currencies-does-stripe-support.

            Possible values
            • aed
            • afn
            • all
            • amd
            • ang
            • aoa
            • ars
            • aud
            • awg
            • azn
            • bam
            • bbd
            • bdt
            • bgn
            • bif
            • bmd
            • bnd
            • bob
            • brl
            • bsd
            • bwp
            • bzd
            • cad
            • cdf
            • chf
            • clp
            • cny
            • cop
            • crc
            • cve
            • czk
            • djf
            • dkk
            • dop
            • dzd
            • eek
            • egp
            • etb
            • eur
            • fjd
            • fkp
            • gbp
            • gel
            • gip
            • gmd
            • gnf
            • gtq
            • gyd
            • hkd
            • hnl
            • hrk
            • htg
            • huf
            • idr
            • ils
            • inr
            • isk
            • jmd
            • jpy
            • kes
            • kgs
            • khr
            • kmf
            • krw
            • kyd
            • kzt
            • lak
            • lbp
            • lkr
            • lrd
            • lsl
            • ltl
            • lvl
            • mad
            • mdl
            • mga
            • mkd
            • mnt
            • mop
            • mro
            • mur
            • mvr
            • mwk
            • mxn
            • myr
            • mzn
            • nad
            • ngn
            • nio
            • nok
            • npr
            • nzd
            • pab
            • pen
            • pgk
            • php
            • pkr
            • pln
            • pyg
            • qar
            • ron
            • rsd
            • rub
            • rwf
            • sar
            • sbd
            • scr
            • sek
            • sgd
            • shp
            • sll
            • sos
            • srd
            • std
            • svc
            • szl
            • thb
            • tjs
            • top
            • try
            • ttd
            • twd
            • tzs
            • uah
            • ugx
            • usd
            • uyu
            • uzs
            • vef
            • vnd
            • vuv
            • wst
            • xaf
            • xcd
            • xof
            • xpf
            • yer
            • zar
            • zmw
          • delinquentbooleanoptional

            When the customer's latest invoice is billed by charging automatically, delinquent is true if the invoice's latest charge failed.

            When the customer's latest invoice is billed by sending an invoice, delinquent is true if the invoice isn't paid by its due date. If an invoice is marked uncollectible by dunning, delinquent doesn't get reset to false.

          • emailstringEmail Addressoptional

            The customer's email address.

          • idstringoptional

            Unique identifier for the object.

          • metadataobjectoptional

            Set of key-value pairs.

          • namestringoptional

            The customer's full name or business name.

          • phonestringPhone Numberoptional

            The customer's phone number.

          POST/user/payment
          $ curl -X POST "https://api.kittycad.io/user/payment" \
          	--header "Authorization: Bearer $TOKEN" \
          	--header "Content-Type: application/json" \
          	--data '{
            "address": {
              "city": "2GAaEmXCcJ9nFHiMDLRiB64",
              "country": "YDxFgh3dOEi",
              "state": "8sj42sk5a4wviTARbpRyxFuMr8hV37",
              "street1": "JgSYTdGnFBESeiN",
              "street2": "pcH0TXzyQuEJF",
              "user_id": "Gr9oSufx14Eanjcg6amVMTSUS",
              "zip": "KJAtePoYDhhpKBHhFl4aYO"
            },
            "name": "eFPXmpt6iDcePAAM4r",
            "phone": "+1-737-934-4265"
          }'
          201 Created
          Response
          {
            "address": {
              "city": "wd9bZzR",
              "country": "W05VFyujKah",
              "state": "S6Ymxt8XSQ",
              "street1": "ZULGoCtVD",
              "street2": "QjkbDXXLeDZcdc3d67Y",
              "user_id": "Ab4",
              "zip": "lAxzjhQmQetOBzAriTJCHxSfO"
            },
            "balance": "82.31",
            "created_at": "2022-09-22T21:57:32.797Z",
            "currency": "gip",
            "delinquent": false,
            "email": "wCUsV@FK.com",
            "id": "JOQS0KA",
            "metadata": {},
            "name": "qyPqB2H6xPY68VWTnHnTNY3",
            "phone": "+1-111-826-6041"
          }

          Update payment info for your user

          This includes billing address, phone, and name.

          This endpoint requires authentication by any KittyCAD user. It updates the payment information for the authenticated user.

          Parameters

          • bodyapplication/jsonobjectoptional

            The billing information for payments.

            Object
            • addressobjectoptional

              The address of the customer. The struct that is used to create a new record. This is automatically generated and has all the same fields as the main struct only it is missing the id.

              Object
              • citystringoptional

                The city component.

              • countrystringoptional

                The country component.

              • statestringoptional

                The state component.

              • street1stringoptional

                The first street component.

              • street2stringoptional

                The second street component.

              • user_idstringoptional

                The user ID that this address belongs to.

              • zipstringoptional

                The zip component.

            • namestringoptional

              The name of the customer.

            • phonestringPhone Numberoptional

              The phone for the customer.

          Returns

          200 OK

          successful operation

          • addressobjectoptional

            The customer's address. The struct that is used to create a new record. This is automatically generated and has all the same fields as the main struct only it is missing the id.

            Object
            • citystringoptional

              The city component.

            • countrystringoptional

              The country component.

            • statestringoptional

              The state component.

            • street1stringoptional

              The first street component.

            • street2stringoptional

              The second street component.

            • user_idstringoptional

              The user ID that this address belongs to.

            • zipstringoptional

              The zip component.

          • balancenumberUSD Priceoptional

            Current balance, if any, being stored on the customer in the payments service.

            If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that will be added to their next invoice. The balance does not refer to any unpaid invoices; it solely takes into account amounts that have yet to be successfully applied to any invoice. This balance is only taken into account as invoices are finalized.

          • created_atstringISO-8601optional

            Time at which the object was created.

          • currencystringoptional

            Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes. Currency is the list of supported currencies.

            For more details see https://support.stripe.com/questions/which-currencies-does-stripe-support.

            Possible values
            • aed
            • afn
            • all
            • amd
            • ang
            • aoa
            • ars
            • aud
            • awg
            • azn
            • bam
            • bbd
            • bdt
            • bgn
            • bif
            • bmd
            • bnd
            • bob
            • brl
            • bsd
            • bwp
            • bzd
            • cad
            • cdf
            • chf
            • clp
            • cny
            • cop
            • crc
            • cve
            • czk
            • djf
            • dkk
            • dop
            • dzd
            • eek
            • egp
            • etb
            • eur
            • fjd
            • fkp
            • gbp
            • gel
            • gip
            • gmd
            • gnf
            • gtq
            • gyd
            • hkd
            • hnl
            • hrk
            • htg
            • huf
            • idr
            • ils
            • inr
            • isk
            • jmd
            • jpy
            • kes
            • kgs
            • khr
            • kmf
            • krw
            • kyd
            • kzt
            • lak
            • lbp
            • lkr
            • lrd
            • lsl
            • ltl
            • lvl
            • mad
            • mdl
            • mga
            • mkd
            • mnt
            • mop
            • mro
            • mur
            • mvr
            • mwk
            • mxn
            • myr
            • mzn
            • nad
            • ngn
            • nio
            • nok
            • npr
            • nzd
            • pab
            • pen
            • pgk
            • php
            • pkr
            • pln
            • pyg
            • qar
            • ron
            • rsd
            • rub
            • rwf
            • sar
            • sbd
            • scr
            • sek
            • sgd
            • shp
            • sll
            • sos
            • srd
            • std
            • svc
            • szl
            • thb
            • tjs
            • top
            • try
            • ttd
            • twd
            • tzs
            • uah
            • ugx
            • usd
            • uyu
            • uzs
            • vef
            • vnd
            • vuv
            • wst
            • xaf
            • xcd
            • xof
            • xpf
            • yer
            • zar
            • zmw
          • delinquentbooleanoptional

            When the customer's latest invoice is billed by charging automatically, delinquent is true if the invoice's latest charge failed.

            When the customer's latest invoice is billed by sending an invoice, delinquent is true if the invoice isn't paid by its due date. If an invoice is marked uncollectible by dunning, delinquent doesn't get reset to false.

          • emailstringEmail Addressoptional

            The customer's email address.

          • idstringoptional

            Unique identifier for the object.

          • metadataobjectoptional

            Set of key-value pairs.

          • namestringoptional

            The customer's full name or business name.

          • phonestringPhone Numberoptional

            The customer's phone number.

          PUT/user/payment
          $ curl -X PUT "https://api.kittycad.io/user/payment" \
          	--header "Authorization: Bearer $TOKEN" \
          	--header "Content-Type: application/json" \
          	--data '{
            "address": {
              "city": "bdyeY9zwfBJkezeZK3w",
              "country": "IHRV3T4a3v",
              "state": "WYIl0K0FIWq0erSyKDDIPaljVZ6B79",
              "street1": "YstsykAydjU8sv0UVVk6TKnqg",
              "street2": "zJRCVJt3GcDGJgeG",
              "user_id": "GTWkCRKSslvdIL5UzyVkn",
              "zip": "1wGtvjx"
            },
            "name": "YDMFvUVxAgchg",
            "phone": "+1-211-875-5660"
          }'
          200 OK
          Response
          {
            "address": {
              "city": "dkzI5ssAjYlACitvtekXWrndgOVH",
              "country": "IIkE",
              "state": "",
              "street1": "v1sMhVdzswZ",
              "street2": "EloiKcixNxORlwpHJH",
              "user_id": "qEIwjFvm6q9j213Qj5vC3A",
              "zip": "vQzJ3A3jGy"
            },
            "balance": "10.87",
            "created_at": "2022-09-22T21:57:32.860Z",
            "currency": "bmd",
            "delinquent": false,
            "email": "D@Ml30GUo7gP.com",
            "id": "mrH5YlJNaghb02dTom",
            "metadata": {},
            "name": "",
            "phone": "+1-186-165-7001"
          }

          Get balance for your user

          This endpoint requires authentication by any KittyCAD user. It gets the balance information for the authenticated user.

          Parameters

          No parameters

          Returns

          200 OK

          successful operation

          • created_atstringISO-8601optional

            The date and time the balance was created.

          • idstringUUIDoptional

            The unique identifier for the balance. A uuid.

            A Version 4 UUID is a universally unique identifier that is generated using random numbers.

          • monthly_credits_remainingnumberUSD Priceoptional

            The monthy credits remaining in the balance. This gets re-upped every month, but if the credits are not used for a month they do not carry over to the next month. It is a stable amount granted to the user per month.

          • pre_pay_cash_remainingnumberUSD Priceoptional

            The amount of pre-pay cash remaining in the balance. This number goes down as the user uses their pre-paid credits. The reason we track this amount is if a user ever wants to withdraw their pre-pay cash, we can use this amount to determine how much to give them. Say a user has $100 in pre-paid cash, their bill is worth, $50 after subtracting any other credits (like monthly etc.) Their bill is $50, their pre-pay cash remaining will be subtracted by 50 to pay the bill and their pre_pay_credits_remaining will be subtracted by 50 to pay the bill. This way if they want to withdraw money after, they can only withdraw $50 since that is the amount of cash they have remaining.

          • pre_pay_credits_remainingnumberUSD Priceoptional

            The amount of credits remaining in the balance. This is typically the amount of cash * some multiplier they get for pre-paying their account. This number lowers every time a bill is paid with the balance. This number increases every time a user adds funds to their balance. This may be through a subscription or a one off payment.

          • total_duenumberUSD Priceoptional

            This includes any outstanding, draft, or open invoices and any pending invoice items. This does not include any credits the user has on their account.

          • updated_atstringISO-8601optional

            The date and time the balance was last updated.

          • user_idstringoptional

            The user ID the balance belongs to.

          GET/user/payment/balance
          $ curl "https://api.kittycad.io/user/payment/balance" \
          	--header "Authorization: Bearer $TOKEN"
          200 OK
          Response
          {
            "created_at": "2022-09-22T21:57:32.890Z",
            "id": "ebb266ad-916e-42a3-8b5a-676466a98450",
            "monthly_credits_remaining": "98.22",
            "pre_pay_cash_remaining": "73.94",
            "pre_pay_credits_remaining": "75.44",
            "total_due": "28.28",
            "updated_at": "2022-09-22T21:57:32.890Z",
            "user_id": "qNqNLFF9m7asEN2Iio0nbOci7GPib"
          }

          List invoices for your user

          This endpoint requires authentication by any KittyCAD user. It lists invoices for the authenticated user.

          Parameters

          No parameters

          Returns

          200 OK

          successful operation

            GET/user/payment/invoices
            $ curl "https://api.kittycad.io/user/payment/invoices" \
            	--header "Authorization: Bearer $TOKEN"
            200 OK
            Response
            [
              {
                "amount_due": "9.62",
                "amount_paid": "35.07",
                "amount_remaining": "94.43",
                "attempt_count": 7,
                "attempted": false,
                "created_at": "2022-09-22T21:57:32.896Z",
                "currency": "xcd",
                "customer_email": "BBd9Vma@.com",
                "customer_id": "iASaBGEUcQT8km9XvL63P",
                "default_payment_method": "rgAHu",
                "description": "fwNFsxWhdQQRO",
                "id": "P2CtTFPR1Js7wOG6769mBxyiPR41",
                "lines": [
                  {
                    "amount": "10.82",
                    "currency": "jmd",
                    "description": "qhfxvzz9Y5wNIQeeQlCP",
                    "id": "",
                    "invoice_item": "FPg1iFPD7EAS",
                    "metadata": {}
                  }
                ],
                "metadata": {},
                "number": "dI6Dl01WIvC1XpWwv6tD6qmC",
                "paid": true,
                "pdf": "https://MeQg9.ol197.com/lfOdQ/k",
                "receipt_number": "pGUCiPVTj",
                "statement_descriptor": "CBRnYz80V8hExwj4dROFUgan",
                "status": "open",
                "subtotal": "52.15",
                "tax": "52.89",
                "total": "62.18",
                "url": "https://N9Kg4.ISmRY.com/3Ug8arqSL/21B4y"
              }
            ]

            List payment methods for your user

            This endpoint requires authentication by any KittyCAD user. It lists payment methods for the authenticated user.

            Parameters

            No parameters

            Returns

            200 OK

            successful operation

              GET/user/payment/methods
              $ curl "https://api.kittycad.io/user/payment/methods" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              [
                {
                  "billing_info": {
                    "address": {
                      "city": "z0WxTQBi0cAfcAra8Lix3bUtXv4l",
                      "country": "5nf8VxeKlm23wrn",
                      "state": "WxMjs6Eq5ka2j4IhVvVeYg4iI",
                      "street1": "LWN7",
                      "street2": "fCVCr00iL",
                      "user_id": "y8R3WHRjpupIdDt",
                      "zip": "y8"
                    },
                    "name": "DRYTxRGwAahhZfnZh3cTME",
                    "phone": "+1-862-295-8921"
                  },
                  "card": {
                    "brand": "pOwHpD2Dl91Ozv",
                    "checks": {
                      "address_line1_check": "d5nDuAXLgRbertzhcWf",
                      "address_postal_code_check": "LxbngJw7V3zrAJ0yDB",
                      "cvc_check": "lapB"
                    },
                    "country": "0ZZHb76X3tQGa7Iw",
                    "exp_month": 31,
                    "exp_year": 4,
                    "fingerprint": "X3",
                    "funding": "MbS18X18IFjstqs7L",
                    "last4": "exrNEgoJ6pp5SEYpO3p"
                  },
                  "created_at": "2022-09-22T21:57:32.912Z",
                  "id": "CouagmKWgdlymdQQ",
                  "metadata": {},
                  "type": "card"
                }
              ]

              Sessions

              Get a session for your user

              This endpoint requires authentication by any KittyCAD user. It returns details of the requested API token for the user.

              Parameters

              • tokenstringUUIDrequired

                The API token.

              Returns

              200 OK

              successful operation

              • created_atstringISO-8601optional

                The date and time the session was created.

              • expiresstringISO-8601optional

                The date and time the session expires.

              • idstringoptional

                The unique identifier for the session.

              • session_tokenstringUUIDoptional

                The session token. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • updated_atstringISO-8601optional

                The date and time the session was last updated.

              • user_idstringoptional

                The user ID of the user that the session belongs to.

              GET/user/session/{token}
              $ curl "https://api.kittycad.io/user/session/{token}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "created_at": "2022-09-22T21:57:32.949Z",
                "expires": "2022-09-22T21:57:32.949Z",
                "id": "LuLk3eUC5PVVVApZPR5Z60Er",
                "session_token": "95929371-9ed6-45a9-87f2-87755f8cc4c3",
                "updated_at": "2022-09-22T21:57:32.949Z",
                "user_id": "TFVWPikYtAKmfV1SW6T"
              }

              Unit

              Unit conversion operations.

              Endpoints

              GET/unit/conversion/acceleration/{src_format}/{output_format}

              GET/unit/conversion/angle/{src_format}/{output_format}

              GET/unit/conversion/angular-velocity/{src_format}/{output_format}

              GET/unit/conversion/area/{src_format}/{output_format}

              GET/unit/conversion/charge/{src_format}/{output_format}

              GET/unit/conversion/concentration/{src_format}/{output_format}

              GET/unit/conversion/data-transfer-rate/{src_format}/{output_format}

              GET/unit/conversion/data/{src_format}/{output_format}

              GET/unit/conversion/density/{src_format}/{output_format}

              GET/unit/conversion/energy/{src_format}/{output_format}

              GET/unit/conversion/force/{src_format}/{output_format}

              GET/unit/conversion/illuminance/{src_format}/{output_format}

              GET/unit/conversion/length/{src_format}/{output_format}

              GET/unit/conversion/magnetic-field-strength/{src_format}/{output_format}

              GET/unit/conversion/magnetic-flux/{src_format}/{output_format}

              GET/unit/conversion/mass/{src_format}/{output_format}

              GET/unit/conversion/metric/cubed/{src_format}/{output_format}

              GET/unit/conversion/metric/power/{src_format}/{output_format}

              GET/unit/conversion/metric/squared/{src_format}/{output_format}

              GET/unit/conversion/power/{src_format}/{output_format}

              GET/unit/conversion/pressure/{src_format}/{output_format}

              GET/unit/conversion/radiation/{src_format}/{output_format}

              GET/unit/conversion/solid-angle/{src_format}/{output_format}

              GET/unit/conversion/temperature/{src_format}/{output_format}

              GET/unit/conversion/time/{src_format}/{output_format}

              GET/unit/conversion/velocity/{src_format}/{output_format}

              GET/unit/conversion/voltage/{src_format}/{output_format}

              GET/unit/conversion/volume/{src_format}/{output_format}

              Convert acceleration units   
              beta

              Convert an acceleration unit value to another acceleration unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • meters_per_second_squared
                • feet_per_second_squared
                • standard_gravity
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • meters_per_second_squared
                • feet_per_second_squared
                • standard_gravity
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of metric unit formats.

                Possible values
                • meters_per_second_squared
                • feet_per_second_squared
                • standard_gravity
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of metric unit formats.

                Possible values
                • meters_per_second_squared
                • feet_per_second_squared
                • standard_gravity
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/acceleration/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/acceleration/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:32.985Z",
                "created_at": "2022-09-22T21:57:32.985Z",
                "error": "FOiEPFti510s",
                "id": "dc671685-9d99-464c-ab45-9096d13756a4",
                "input": 32,
                "output": 10,
                "output_format": "standard_gravity",
                "src_format": "meters_per_second_squared",
                "started_at": "2022-09-22T21:57:32.985Z",
                "status": "Queued",
                "updated_at": "2022-09-22T21:57:32.985Z",
                "user_id": "3Cqv9Gqh1WyBOXCaamiH9PwKpExbi"
              }

              Convert angle units   
              beta

              Convert an angle unit value to another angle unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • radian
                • degree
                • arcminute
                • arcsecond
                • milliarcsecond
                • turn
                • gradian
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • radian
                • degree
                • arcminute
                • arcsecond
                • milliarcsecond
                • turn
                • gradian
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of angle formats.

                Possible values
                • radian
                • degree
                • arcminute
                • arcsecond
                • milliarcsecond
                • turn
                • gradian
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of angle formats.

                Possible values
                • radian
                • degree
                • arcminute
                • arcsecond
                • milliarcsecond
                • turn
                • gradian
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/angle/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/angle/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.015Z",
                "created_at": "2022-09-22T21:57:33.015Z",
                "error": "omKrDpJcJoNJTqnXvUf0F8jd",
                "id": "8e58210a-de68-4ce5-b072-d289378240ec",
                "input": 20,
                "output": 1,
                "output_format": "turn",
                "src_format": "arcminute",
                "started_at": "2022-09-22T21:57:33.015Z",
                "status": "In Progress",
                "updated_at": "2022-09-22T21:57:33.015Z",
                "user_id": "6kz9MVql4EDi2svWmP2U3pEiN8gdf"
              }

              Convert angular velocity units   
              beta

              Convert an angular velocity unit value to another angular velocity unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • radians_per_second
                • degrees_per_second
                • revolutions_per_minute
                • milliarcseconds_per_year
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • radians_per_second
                • degrees_per_second
                • revolutions_per_minute
                • milliarcseconds_per_year
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of angular velocity unit formats.

                Possible values
                • radians_per_second
                • degrees_per_second
                • revolutions_per_minute
                • milliarcseconds_per_year
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of angular velocity unit formats.

                Possible values
                • radians_per_second
                • degrees_per_second
                • revolutions_per_minute
                • milliarcseconds_per_year
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/angular-velocity/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/angular-velocity/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.051Z",
                "created_at": "2022-09-22T21:57:33.051Z",
                "error": "1jgsO1taSWNZD10yGzIFGxcmy",
                "id": "b6a3680d-d98d-4a87-8adc-b40c5ef650cf",
                "input": 1,
                "output": 25,
                "output_format": "revolutions_per_minute",
                "src_format": "revolutions_per_minute",
                "started_at": "2022-09-22T21:57:33.051Z",
                "status": "Completed",
                "updated_at": "2022-09-22T21:57:33.051Z",
                "user_id": "hJbeuieovukiVg"
              }

              Convert area units   
              beta

              Convert an area unit value to another area unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • square_meter
                • square_foot
                • square_inch
                • square_mile
                • square_kilometer
                • hectare
                • acre
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • square_meter
                • square_foot
                • square_inch
                • square_mile
                • square_kilometer
                • hectare
                • acre
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of area unit formats.

                Possible values
                • square_meter
                • square_foot
                • square_inch
                • square_mile
                • square_kilometer
                • hectare
                • acre
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of area unit formats.

                Possible values
                • square_meter
                • square_foot
                • square_inch
                • square_mile
                • square_kilometer
                • hectare
                • acre
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/area/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/area/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.081Z",
                "created_at": "2022-09-22T21:57:33.081Z",
                "error": "3jdXF5Mvbr7pn",
                "id": "eb3ecef0-6e94-46b0-b5f7-bfb720554610",
                "input": 26,
                "output": 27,
                "output_format": "square_kilometer",
                "src_format": "hectare",
                "started_at": "2022-09-22T21:57:33.082Z",
                "status": "In Progress",
                "updated_at": "2022-09-22T21:57:33.082Z",
                "user_id": "MpvlmH"
              }

              Convert charge units   
              beta

              Convert a charge unit value to another charge unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • coulomb
                • ampere_hour
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • coulomb
                • ampere_hour
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of charge unit formats.

                Possible values
                • coulomb
                • ampere_hour
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of charge unit formats.

                Possible values
                • coulomb
                • ampere_hour
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/charge/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/charge/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.134Z",
                "created_at": "2022-09-22T21:57:33.134Z",
                "error": "lRW7CzuxDXMl2i",
                "id": "e8d8b4fb-d73e-4f98-8fa8-01fde8c18157",
                "input": 13,
                "output": 9,
                "output_format": "ampere_hour",
                "src_format": "coulomb",
                "started_at": "2022-09-22T21:57:33.134Z",
                "status": "Failed",
                "updated_at": "2022-09-22T21:57:33.134Z",
                "user_id": "boKPFySgPFpP5H3mzlghTe5"
              }

              Convert concentration units   
              beta

              Convert a concentration unit value to another concentration unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • parts_per_million
                • parts_per_billion
                • parts_per_trillion
                • percent
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • parts_per_million
                • parts_per_billion
                • parts_per_trillion
                • percent
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of concentration unit formats.

                Possible values
                • parts_per_million
                • parts_per_billion
                • parts_per_trillion
                • percent
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of concentration unit formats.

                Possible values
                • parts_per_million
                • parts_per_billion
                • parts_per_trillion
                • percent
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/concentration/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/concentration/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.164Z",
                "created_at": "2022-09-22T21:57:33.164Z",
                "error": "QllesnhjG9u7FQOQENwqDRdcPHa5l",
                "id": "2b2719aa-f5a6-4283-b548-095d6b6f2294",
                "input": 32,
                "output": 25,
                "output_format": "percent",
                "src_format": "parts_per_billion",
                "started_at": "2022-09-22T21:57:33.164Z",
                "status": "In Progress",
                "updated_at": "2022-09-22T21:57:33.164Z",
                "user_id": "0XX9a3Lx4HzkFuYTIWZdm6pOXl"
              }

              Convert data transfer rate units   
              beta

              Convert a data transfer rate unit value to another data transfer rate unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • bytes_per_second
                • exabytes_per_second
                • bits_per_second
                • exabits_per_second
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • bytes_per_second
                • exabytes_per_second
                • bits_per_second
                • exabits_per_second
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of data transfer unit formats.

                Possible values
                • bytes_per_second
                • exabytes_per_second
                • bits_per_second
                • exabits_per_second
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of data transfer unit formats.

                Possible values
                • bytes_per_second
                • exabytes_per_second
                • bits_per_second
                • exabits_per_second
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/data-transfer-rate/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/data-transfer-rate/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.204Z",
                "created_at": "2022-09-22T21:57:33.204Z",
                "error": "PLVgELPrw70PPeZ",
                "id": "6ab0e522-1762-4d3e-8849-533600350221",
                "input": 1,
                "output": 3,
                "output_format": "exabits_per_second",
                "src_format": "bytes_per_second",
                "started_at": "2022-09-22T21:57:33.204Z",
                "status": "Queued",
                "updated_at": "2022-09-22T21:57:33.204Z",
                "user_id": "wiboSMXM5"
              }

              Convert data units   
              beta

              Convert a data unit value to another data unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • byte
                • exabyte
                • bit
                • exabit
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • byte
                • exabyte
                • bit
                • exabit
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of data unit formats.

                Possible values
                • byte
                • exabyte
                • bit
                • exabit
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of data unit formats.

                Possible values
                • byte
                • exabyte
                • bit
                • exabit
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/data/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/data/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.236Z",
                "created_at": "2022-09-22T21:57:33.236Z",
                "error": "chVP",
                "id": "b2acc9a9-c957-4304-96f4-70f965a4c72a",
                "input": 29,
                "output": 2,
                "output_format": "byte",
                "src_format": "bit",
                "started_at": "2022-09-22T21:57:33.236Z",
                "status": "Completed",
                "updated_at": "2022-09-22T21:57:33.236Z",
                "user_id": "NDw0PmOCOaFjRyvJXRQIGTMXNlz"
              }

              Convert density units   
              beta

              Convert a density unit value to another density unit value. This is a nice endpoint to use for helper functions.

              Parameters

              • output_formatstringrequired

                The output format of the unit.

                Possible values
                • kilograms_per_cubic_meter
                • grams_per_milliliter
                • kilograms_per_liter
                • ounces_per_cubic_foot
                • ounces_per_cubic_inch
                • ounces_per_gallon
                • pounds_per_cubic_foot
                • pounds_per_cubic_inch
                • pounds_per_gallon
                • slugs_per_cubic_foot
              • src_formatstringrequired

                The source format of the unit.

                Possible values
                • kilograms_per_cubic_meter
                • grams_per_milliliter
                • kilograms_per_liter
                • ounces_per_cubic_foot
                • ounces_per_cubic_inch
                • ounces_per_gallon
                • pounds_per_cubic_foot
                • pounds_per_cubic_inch
                • pounds_per_gallon
                • slugs_per_cubic_foot
              • valuenumberrequired

                The initial value.

              Returns

              200 OK

              successful operation

              • completed_atstringISO-8601optional

                The time and date the API call was completed.

              • created_atstringISO-8601optional

                The time and date the API call was created.

              • errorstringoptional

                The error the function returned, if any.

              • idstringUUIDoptional

                The unique identifier of the API call.

                This is the same as the API call ID. A uuid.

                A Version 4 UUID is a universally unique identifier that is generated using random numbers.

              • inputnumberoptional

                The input value.

              • outputnumberoptional

                The resulting value.

              • output_formatstringoptional

                The output format of the unit conversion. The valid types of density unit formats.

                Possible values
                • kilograms_per_cubic_meter
                • grams_per_milliliter
                • kilograms_per_liter
                • ounces_per_cubic_foot
                • ounces_per_cubic_inch
                • ounces_per_gallon
                • pounds_per_cubic_foot
                • pounds_per_cubic_inch
                • pounds_per_gallon
                • slugs_per_cubic_foot
              • src_formatstringoptional

                The source format of the unit conversion. The valid types of density unit formats.

                Possible values
                • kilograms_per_cubic_meter
                • grams_per_milliliter
                • kilograms_per_liter
                • ounces_per_cubic_foot
                • ounces_per_cubic_inch
                • ounces_per_gallon
                • pounds_per_cubic_foot
                • pounds_per_cubic_inch
                • pounds_per_gallon
                • slugs_per_cubic_foot
              • started_atstringISO-8601optional

                The time and date the API call was started.

              • statusstringoptional

                The status of the API call. The status of an async API call.

                Possible values
                • Queued
                • Uploaded
                • In Progress
                • Completed
                • Failed
              • updated_atstringISO-8601optional

                The time and date the API call was last updated.

              • user_idstringoptional

                The user ID of the user who created the API call.

              GET/unit/conversion/density/{src_format}/{output_format}
              $ curl "https://api.kittycad.io/unit/conversion/density/{src_format}/{output_format}" \
              	--header "Authorization: Bearer $TOKEN"
              200 OK
              Response
              {
                "completed_at": "2022-09-22T21:57:33.277Z",
                "created_at": "2022-09-22T21:57:33.277Z",
                "error": "8QhGSQ0",
                "id": "05ddc1ac-1798-4f71-8d8f-7a47abdef59a",
                "input": 16,
                "output": 5,
                "output_format": "pounds_per_cubic_inch",
                "src_format": "kilograms_per_cubic_meter",
                "started_at": "2022-09-22T21:57:33.277Z",
                "status": "Failed",
                "updated_at": "2022-09-22T21:57:33.277Z",
                "user_id": "HeW077mquexiC4ZFbm"
              }