Cintoo Autodesk API

The Autodesk API from Cintoo — 3 operation(s) for autodesk.

Operations 7

GET /api/2/accounts/{accountRef}/projects/{projectRef}/integrations/autodesk Get configuration of integration with Autodesk on a Project #
POST /api/2/accounts/{accountRef}/projects/{projectRef}/integrations/autodesk Create configuration of integration with Autodesk on Project #
PUT /api/2/accounts/{accountRef}/projects/{projectRef}/integrations/autodesk Update configuration of the integration with Autodesk on Project #
DELETE /api/2/accounts/{accountRef}/projects/{projectRef}/integrations/autodesk Delete the integration with Autodesk on Project #
GET /api/2/integrations/autodesk/connection Get my connection to Autodesk #
DELETE /api/2/integrations/autodesk/connection Disconnect me from Autodesk #
GET /api/2/integrations/autodesk/connection/url Create or update Autodesk connection #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cintoo-autodesk-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cintoo-autodesk-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.0.0
  title: Cintoo Open Autodesk API
  description: 'Cintoo Open API 1.x documentation: https://aec.cintoo.com/api


    BETA: API v2 endpoints tagged "BETA" are available in beta-version, meaning that changes may be done later on.'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  contact:
    name: API Support
    email: support@cintoo.com
  x-logo:
    url: ./assets/logo_api.svg
    altText: Cintoo API
servers:
- url: https://aec.cintoo.com
security:
- oauth2: []
tags:
- name: Autodesk
paths:
  /api/2/accounts/{accountRef}/projects/{projectRef}/integrations/autodesk:
    get:
      summary: Get configuration of integration with Autodesk on a Project
      operationId: getAutodeskProjectIntegration
      description: 'BETAGet the integration with Autodesk configured on the project


        Requires the permission `project:integrations:read` automatically granted for users having

        `workzone:annotations:write` on the root work zone of the project.'
      tags:
      - Autodesk
      parameters:
      - $ref: '#/components/parameters/accountRef'
      - $ref: '#/components/parameters/projectRef'
      responses:
        '200':
          description: The configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectIntegrationAutodesk'
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\nexport ACCOUNTUUID=...\nexport PROJECTUUID=...\n\ncurl --url \"https://aec.cintoo.com/api/2/accounts/$ACCOUNTUUID/projects/$PROJECTUUID/integrations/autodesk\" \\\n  --header \"Authorization: Bearer $TOKEN\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\naccountUUID = \"...\"\nprojectUUID = \"...\"\ntoken = \"...\"\n\nresponse = requests.get(\n  \"https://%s/api/2/accounts/%s/projects/%s/integrations/autodesk\"\n    % (host, accountUUID, projectUUID),\n  headers = { \"Authorization\": \"Bearer %s\" % token}\n)\nprint(response.status_code)\nprint(response.json())\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst accountUUID = \"...\";\nconst projectUUID = \"...\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/accounts/${accountUUID}/projects/${projectUUID}/integrations/autodesk`;\nconst res = await fetch(url, {\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n  },\n});\n\nconsole.log(res.status);\nconst data = await res.json();\nconsole.log(data);\n"
    post:
      summary: Create configuration of integration with Autodesk on Project
      operationId: createAutodeskProjectIntegration
      description: 'BETACreate the configuration for the integration with Autodesk.


        Requires the permission `project:integrations:write` automatically granted for users having

        `workzone:annotations:write` on the root work zone of the project.'
      tags:
      - Autodesk
      parameters:
      - $ref: '#/components/parameters/accountRef'
      - $ref: '#/components/parameters/projectRef'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/projectIntegrationAutodeskCreate'
      responses:
        '201':
          description: The integration was successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectIntegrationAutodesk'
        '409':
          description: A configuration already exists on this project
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorConflict'
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\nexport ACCOUNTUUID=...\nexport PROJECTUUID=...\n\ncurl --request POST --url \"https://aec.cintoo.com/api/2/accounts/$ACCOUNTUUID/projects/$PROJECTUUID/integrations/autodesk\" \\\n  --header \"Authorization: Bearer $TOKEN\" \\\n  --header \"Content-Type: application/json\" \\\n  --data \"{\\\"autodeskHubId\\\":\\\"...\\\",\\\"autodeskProjectId\\\":\\\"...\\\"}\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\naccountUUID = \"...\"\nprojectUUID = \"...\"\ntoken = \"...\"\n\nresponse = requests.post(\n  \"https://%s/api/2/accounts/%s/projects/%s/integrations/autodesk\"\n    % (host, accountUUID, projectUUID),\n  headers = { \"Authorization\": \"Bearer %s\" % token },\n  json = {\n    \"autodeskHubId\": \"...\",\n    \"autodeskProjectId\": \"...\"\n  }\n)\nprint(response.status_code)\nprint(response.json())\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst accountUUID = \"...\";\nconst projectUUID = \"...\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/accounts/${accountUUID}/projects/${projectUUID}/integrations/autodesk`;\nconst res = await fetch(url, {\n  method: \"POST\",\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n    \"Content-Type\": \"application/json\",\n  },\n  body: JSON.stringify(\n    {\"autodeskHubId\":\"...\",\"autodeskProjectId\":\"...\"}\n  ),\n});\n\nconsole.log(res.status);\nconst data = await res.json();\nconsole.log(data);\n"
    put:
      summary: Update configuration of the integration with Autodesk on Project
      operationId: updateAutodeskProjectIntegration
      description: 'BETAUpdate the configuration for the integration with Autodesk.


        Requires the permission `project:integrations:write` automatically granted for users having

        `workzone:annotations:write` on the root work zone of the project.'
      tags:
      - Autodesk
      parameters:
      - $ref: '#/components/parameters/accountRef'
      - $ref: '#/components/parameters/projectRef'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/projectIntegrationAutodeskUpdate'
      responses:
        '200':
          description: The integration was successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectIntegrationAutodesk'
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\nexport ACCOUNTUUID=...\nexport PROJECTUUID=...\n\ncurl --request PUT --url \"https://aec.cintoo.com/api/2/accounts/$ACCOUNTUUID/projects/$PROJECTUUID/integrations/autodesk\" \\\n  --header \"Authorization: Bearer $TOKEN\" \\\n  --header \"Content-Type: application/json\" \\\n  --data \"{\\\"autodeskHubId\\\":\\\"...\\\",\\\"autodeskProjectId\\\":\\\"...\\\"}\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\naccountUUID = \"...\"\nprojectUUID = \"...\"\ntoken = \"...\"\n\nresponse = requests.put(\n  \"https://%s/api/2/accounts/%s/projects/%s/integrations/autodesk\"\n    % (host, accountUUID, projectUUID),\n  headers = { \"Authorization\": \"Bearer %s\" % token },\n  json = {\n    \"autodeskHubId\": \"...\",\n    \"autodeskProjectId\": \"...\"\n  }\n)\nprint(response.status_code)\nprint(response.json())\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst accountUUID = \"...\";\nconst projectUUID = \"...\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/accounts/${accountUUID}/projects/${projectUUID}/integrations/autodesk`;\nconst res = await fetch(url, {\n  method: \"PUT\",\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n    \"Content-Type\": \"application/json\",\n  },\n  body: JSON.stringify(\n    {\"autodeskHubId\":\"...\",\"autodeskProjectId\":\"...\"}\n  ),\n});\n\nconsole.log(res.status);\nconst data = await res.json();\nconsole.log(data);\n"
    delete:
      summary: Delete the integration with Autodesk on Project
      operationId: deleteAutodeskProjectIntegration
      description: 'BETADelete the integration with Autodesk on the project.


        Requires the permission `project:integrations:write` automatically granted for users having

        `workzone:annotations:write` on the root work zone of the project.'
      tags:
      - Autodesk
      parameters:
      - $ref: '#/components/parameters/accountRef'
      - $ref: '#/components/parameters/projectRef'
      responses:
        '204':
          description: The integration was successfully deleted
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\nexport ACCOUNTUUID=...\nexport PROJECTUUID=...\n\ncurl --request DELETE --url \"https://aec.cintoo.com/api/2/accounts/$ACCOUNTUUID/projects/$PROJECTUUID/integrations/autodesk\" \\\n  --header \"Authorization: Bearer $TOKEN\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\naccountUUID = \"...\"\nprojectUUID = \"...\"\ntoken = \"...\"\n\nresponse = requests.delete(\n  \"https://%s/api/2/accounts/%s/projects/%s/integrations/autodesk\"\n    % (host, accountUUID, projectUUID),\n  headers = { \"Authorization\": \"Bearer %s\" % token }\n)\nprint(response.status_code)\nif response.status_code != 204:\n  print(response.json())\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst accountUUID = \"...\";\nconst projectUUID = \"...\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/accounts/${accountUUID}/projects/${projectUUID}/integrations/autodesk`;\nconst res = await fetch(url, {\n  method: \"DELETE\",\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n  },\n});\n\nconsole.log(res.status);\nif (res.status !== 204) {\n  const data = await res.json();\n  console.log(data);\n}\n"
  /api/2/integrations/autodesk/connection:
    get:
      summary: Get my connection to Autodesk
      operationId: getAutodeskConnection
      description: 'BETAGet the Autodesk user connected for the current user


        Requires no permission, but must be logged in as a user.


        If no connection exists, an error 404 is returned. To create a connection, the user needs to follow the

        OAuth flow on Autodesk, using the /integrations/autodesk/connection/url endpoint.'
      tags:
      - Autodesk
      responses:
        '200':
          description: Connection to Autodesk
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AutodeskConnection'
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\n\ncurl --url \"https://aec.cintoo.com/api/2/integrations/autodesk/connection\" \\\n  --header \"Authorization: Bearer $TOKEN\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\ntoken = \"...\"\n\nresponse = requests.get(\n  \"https://%s/api/2/integrations/autodesk/connection\"\n    % (host),\n  headers = { \"Authorization\": \"Bearer %s\" % token}\n)\nprint(response.status_code)\nprint(response.json())\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/integrations/autodesk/connection`;\nconst res = await fetch(url, {\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n  },\n});\n\nconsole.log(res.status);\nconst data = await res.json();\nconsole.log(data);\n"
    delete:
      summary: Disconnect me from Autodesk
      operationId: deleteAutodeskConnection
      description: 'BETADelete connection on Autodesk for the current user


        Requires no permission, but must be logged in as a user.


        Removing the connection to Autodesk implies that annotations created by the user won''t be synchronized on

        Autodesk for all accounts and all projects.'
      tags:
      - Autodesk
      responses:
        '204':
          description: Connection successfully deleted
        4XX:
          $ref: '#/components/responses/UnexpectedError'
      x-codeSamples:
      - lang: cURL
        source: "export TOKEN=...\n\ncurl --request DELETE --url \"https://aec.cintoo.com/api/2/integrations/autodesk/connection\" \\\n  --header \"Authorization: Bearer $TOKEN\"\n"
      - lang: Python
        source: "import requests\n\nhost = \"aec.cintoo.com\"\ntoken = \"...\"\n\nresponse = requests.delete(\n  \"https://%s/api/2/integrations/autodesk/connection\"\n    % (host),\n  headers = { \"Authorization\": \"Bearer %s\" % token}\n)\nprint(response.status_code)\n"
      - lang: TypeScript
        source: "const host = \"aec.cintoo.com\";\nconst token = \"...\";\n\nconst url = `https://${host}/api/2/integrations/autodesk/connection`;\nconst res = await fetch(url, {\n  method: \"DELETE\",\n  headers: {\n    \"Authorization\": `Bearer ${token}`,\n  },\n});\n\nconsole.log(res.status);\nif (res.status !== 204) {\n  const data = await res.json();\n  console.log(data);\n}\n"
  /api/2/integrations/autodesk/connection/url:
    get:
      summary: Create or update Autodesk connection
      operationId: getAutodeskConnectionUrl
      description: 'BETAForward to the OAuth flow on Autodesk. If the user successfully signed in Autodesk and allows Cintoo to

        access his account, his Autodesk connection is created or updated.


        This endpoint needs to be called using a browser to allow the user to sign in on Autodesk.


        On success, the user is finally redirected to the given query parameter `redirectUri`, allowing your application

        to be notified.


        Requires no permission, but must be logged in as a user.'
      tags:
      - Autodesk
      parameters:
      - $ref: '#/components/parameters/redirectUri'
      responses:
        '302':
          description: Forward to the OAuth flow on Autodesk
        4XX:
          $ref: '#/components/responses/UnexpectedError'
components:
  schemas:
    projectIntegrationAutodeskCreate:
      type: object
      required:
      - autodeskHubId
      - autodeskProjectId
      properties:
        autodeskHubId:
          type: string
          minLength: 1
        autodeskProjectId:
          type: string
          minLength: 1
    AutodeskConnection:
      type: object
      x-tags:
      - Autodesk
      required:
      - email
      - userName
      - firstName
      - lastName
      - hubs
      properties:
        email:
          type:
          - string
          - 'null'
        userName:
          type:
          - string
          - 'null'
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
        hubs:
          type: array
          items:
            type: object
            required:
            - autodeskId
            - name
            - projects
            properties:
              autodeskId:
                type: string
              name:
                type: string
              projects:
                type: array
                items:
                  type: object
                  required:
                  - autodeskId
                  - name
                  properties:
                    autodeskId:
                      type: string
                    name:
                      type: string
    Error:
      type: object
      required:
      - status
      - title
      properties:
        status:
          type: integer
          format: int32
        title:
          type: string
        detail:
          type: string
          description: human readable description of the error in english
        errorCode:
          type: string
          description: detailed code describing error, can be used to map to a localized message
        errorValues:
          type: object
          description: values implied in the error, typically an input parameter, can be used to include in a localized message
    AccountUrn:
      type: string
      description: '"urn:cintoo:account:" followed by an UUIDv4

        '
    ProjectIntegrationAutodesk:
      type: object
      x-tags:
      - Autodesk
      required:
      - projectId
      - autodeskHubId
      - autodeskProjectId
      - link
      - createdAt
      - createdBy
      - updatedAt
      - updatedBy
      properties:
        projectId:
          $ref: '#/components/schemas/ProjectUrn'
        autodeskHubId:
          type: string
        autodeskProjectId:
          type: string
        link:
          type: string
        createdAt:
          $ref: '#/components/schemas/DateTime'
        createdBy:
          $ref: '#/components/schemas/UserUrn'
        updatedAt:
          $ref: '#/components/schemas/DateTime'
        updatedBy:
          $ref: '#/components/schemas/UserUrn'
    ProjectUrn:
      type: string
      description: '"urn:cintoo:project:" followed by an UUIDv4

        '
    Uuid:
      type: string
      description: UUIDv4
      format: uuid
      example: 156fff1a-0ef7-4335-891a-627928a19e29
    UserUrn:
      type: string
      description: '"urn:cintoo:user:" followed by an UUIDv4

        '
    AccountId:
      allOf:
      - $ref: '#/components/schemas/Uuid'
      example: 8196e320-8a4d-4d29-b0a9-077cd7ed3368
    ProjectId:
      allOf:
      - $ref: '#/components/schemas/Uuid'
      example: 8196e320-8a4d-4d29-b0a9-077cd7ed3368
    DateTime:
      type: string
      format: date-time
      description: 'The date-time notation as defined by RFC 3339, section 5.6 (ex: 2017-08-18T12:41:31Z)'
      example: '2017-08-18T12:41:31Z'
    ErrorConflict:
      type: object
      required:
      - status
      - title
      properties:
        status:
          type: integer
          format: int32
          enum:
          - 409
        title:
          type: string
          enum:
          - Conflict
        detail:
          type: string
          description: human readable description of the error in english
    projectIntegrationAutodeskUpdate:
      type: object
      required:
      - autodeskHubId
      - autodeskProjectId
      properties:
        autodeskHubId:
          type: string
          minLength: 1
        autodeskProjectId:
          type: string
          minLength: 1
  parameters:
    accountRef:
      name: accountRef
      in: path
      required: true
      description: The Id or Urn of the account
      schema:
        oneOf:
        - $ref: '#/components/schemas/AccountUrn'
        - $ref: '#/components/schemas/AccountId'
    projectRef:
      name: projectRef
      in: path
      required: true
      description: The Id or Urn of the project
      schema:
        oneOf:
        - $ref: '#/components/schemas/ProjectUrn'
        - $ref: '#/components/schemas/ProjectId'
    redirectUri:
      name: redirectUri
      in: query
      required: true
      description: 'The URL to redirect the user once the OAuth flow is successful.

        '
      schema:
        type: string
  responses:
    UnexpectedError:
      description: unexpected error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            '400':
              value:
                status: 400
                title: Bad Request
            '401':
              value:
                status: 401
                title: Unauthorized
            '403':
              value:
                status: 403
                title: Forbidden
            '404':
              value:
                status: 404
                title: Not Found
            '405':
              value:
                status: 405
                title: Method Not Allowed
            '406':
              value:
                status: 406
                title: Not Acceptable
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://aec.cintoo.com/oauth/authorize
          tokenUrl: https://aec.cintoo.com/oauth/token
          scopes: {}
          refreshUrl: https://aec.cintoo.com/oauth/token
x-tagGroups:
- name: General
  tags:
  - errors_list
  - internal_information
  - token_management
  - Permissions
  - Authentication
- name: Resources
  tags:
  - Resources
- name: Tenant
  tags:
  - Tenant
- name: Account
  tags:
  - Account
  - Subscription
  - Role
  - User
  - Group
  - Trusted Device
- name: Subscription
  tags:
  - Usage Report
- name: Project
  tags:
  - Project
  - Members
  - Workzone
- name: Project Data
  tags:
  - File
  - Annotation
  - Saved View
  - Share Link
  - Crop
  - Measurement
  - Tag List
  - Tag
- name: Jobs
  tags:
  - Progress Monitoring
  - Import Model
  - Export Scene
  - Segmentation
  - Video360
  - Import IDD
- name: Integrations
  tags:
  - Integrations
  - Konekt
  - Autodesk
  - Procore
- name: Tutorials
  tags:
  - tuto_upload_file
  - understand_tag_data