Autodesk Fusion Hooks API

The Hooks API from Autodesk Fusion — 5 operation(s) for hooks.

OpenAPI Specification

autodesk-fusion-hooks-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Construction.Account.Admin Account Management Hooks API
  version: '1.0'
  contact:
    name: Autodesk Plaform Services
    url: https://aps.autodesk.com/
    email: aps.help@autodesk.com
  termsOfService: https://www.autodesk.com/company/legal-notices-trademarks/terms-of-service-autodesk360-web-services/forge-platform-web-services-api-terms-of-service
  x-support: https://stackoverflow.com/questions/tagged/autodesk-platform-services
  description: 'The Account Admin API automates creating and managing projects, assigning and managing project users, and managing member and partner company directories. You can also synchronize data with external systems.

    '
servers:
- url: https://developer.api.autodesk.com
security:
- 2-legged: []
- 3-legged: []
tags:
- name: Hooks
paths:
  /webhooks/v1/systems/{system}/events/{event}/hooks/{hook_id}:
    parameters:
    - $ref: '#/components/parameters/system'
    - $ref: '#/components/parameters/event'
    - schema:
        type: string
      name: hook_id
      in: path
      required: true
      description: The ID of the webhook to delete.
    get:
      summary: Get Webhook Details
      tags:
      - Hooks
      responses:
        '200':
          description: 'Webhook details were successfully returned. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HookDetails'
              examples: {}
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: get-hook-details
      description: Retrieves the details of the webhook for the specified event within the specified system.
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/region'
      security:
      - 2-legged:
        - data:read
        3-legged:
        - data:read
    patch:
      summary: Update a Webhook
      tags:
      - Hooks
      responses:
        '200':
          description: 'The webhook was updated successfully. '
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: patch-system-event-hook
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/region'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ModifyHookPayload'
      description: "Updates the webhook specified by the ``hook_id`` parameter. Currently the only attributes you can update are: \n\n- filter\n- status\n- hook attribute\n- token\n- auto-reactivate hook flag\n- hook expiry\n- callbackWithEventPaylaod flag \n\nSee the request body documentation for more information."
      security:
      - 2-legged:
        - data:read
        - data:write
        3-legged:
        - data:read
        - data:write
    delete:
      summary: Delete a Webhook
      tags:
      - Hooks
      responses:
        '204':
          description: The webhook was deleted successfully.
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: delete-system-event-hook
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/region'
      description: Deletes the webhook specified by its ID.
      security:
      - 2-legged:
        - data:read
        - data:write
        3-legged:
        - data:read
        - data:write
  /webhooks/v1/systems/{system}/events/{event}/hooks:
    parameters:
    - $ref: '#/components/parameters/system'
    - $ref: '#/components/parameters/event'
    get:
      summary: List All Webhooks for an Event
      tags:
      - Hooks
      responses:
        '200':
          description: 'A list webhooks was returned successfully. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Hooks'
        '204':
          description: No webhooks exist.
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: get-system-event-hooks
      description: 'Retrieves a paginated list of webhooks for the specified event. The returned list contains a subset of webhooks accessible to the provided access token within the specified region. Each page includes up to 200 webhooks.


        If the ``pageState`` query string parameter is not provided, the first page of results is returned. Use the ``next`` value from the previous response to fetch subsequent pages.'
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/region'
      - schema:
          type: string
        in: query
        name: scopeName
        description: 'Filters retrieved webhooks by the scope name used to create hook. For example : ``folder``.  If this parameter is not specified, the filter is not applied.'
      - $ref: '#/components/parameters/pageState'
      - $ref: '#/components/parameters/status'
      security:
      - 2-legged:
        - data:read
        3-legged: []
    post:
      summary: Create a Webhook for an Event
      tags:
      - Hooks
      responses:
        '201':
          description: The webhook was created successfully.
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '409':
          description: The specified hook already exists.
        '500':
          $ref: '#/components/responses/500-general'
      operationId: create-system-event-hook
      description: Adds a new webhook to receive notifications of the occurrence of a specified event for the specified system.
      parameters:
      - $ref: '#/components/parameters/region'
      - $ref: '#/components/parameters/x-ads-region'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HookPayload'
        description: ''
      security:
      - 2-legged:
        - data:read
        - data:write
        3-legged:
        - data:read
        - data:write
  /webhooks/v1/systems/{system}/hooks:
    parameters:
    - $ref: '#/components/parameters/system'
    get:
      summary: List All Webhooks for a System
      tags:
      - Hooks
      responses:
        '200':
          description: A list webhooks was returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Hooks'
        '204':
          description: No webhooks exist.
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: get-system-hooks
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/status'
      - $ref: '#/components/parameters/pageState'
      - $ref: '#/components/parameters/region'
      description: 'Retrieves a paginated list of webhooks for the specified system. The returned list contains a subset of webhooks accessible to the provided access token within the specified region. Each page includes up to 200 webhooks.


        If the ``pageState`` query string parameter is not provided, the first page of results is returned. Use the ``next`` value from the previous response to fetch subsequent pages.'
      security:
      - 2-legged:
        - data:read
        3-legged:
        - data:read
    post:
      summary: Create Webhooks for All Events
      tags:
      - Hooks
      responses:
        '201':
          description: The webhooks were created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Hook'
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: create-system-hook
      description: Adds a new webhook to receive notifications of all events for the specified system.
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/region'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HookPayload'
      security:
      - 2-legged:
        - data:read
        - data:write
        3-legged:
        - data:read
        - data:write
  /webhooks/v1/hooks:
    parameters: []
    get:
      summary: List All Webhooks
      tags:
      - Hooks
      responses:
        '200':
          description: 'A list webhooks was returned successfully. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Hooks'
        '204':
          description: No webhooks exist.
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: get-hooks
      parameters:
      - $ref: '#/components/parameters/pageState'
      - $ref: '#/components/parameters/status'
      - $ref: '#/components/parameters/region'
      - $ref: '#/components/parameters/x-ads-region'
      description: 'Retrieves a paginated list of webhooks available to the provided access token within the specified region. Each page includes up to 200 webhooks.


        If the ``pageState`` query string parameter is not provided, the first page of results is returned. Use the ``next`` value from the previous response to fetch subsequent pages.'
      security:
      - 2-legged:
        - data:read
        3-legged:
        - data:read
  /webhooks/v1/app/hooks:
    parameters: []
    get:
      summary: List All Webhooks for an App
      tags:
      - Hooks
      responses:
        '200':
          description: 'A list webhooks was returned successfully. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Hooks'
        '400':
          $ref: '#/components/responses/400-general'
        '401':
          $ref: '#/components/responses/401-general'
        '403':
          $ref: '#/components/responses/403-general'
        '404':
          $ref: '#/components/responses/404-general'
        '500':
          $ref: '#/components/responses/500-general'
      operationId: get-app-hooks
      description: 'Retrieves a paginated list of webhooks created by the calling application. Each page includes up to 200 webhooks.


        If the ``pageState`` query string parameter is not provided, the first page of results is returned. Use the ``next`` value from the previous response to fetch subsequent pages.


        **Note:** This operation requires an access token through a Client Credentials flow (two-legged OAuth). '
      parameters:
      - $ref: '#/components/parameters/x-ads-region'
      - $ref: '#/components/parameters/pageState'
      - $ref: '#/components/parameters/status'
      - $ref: '#/components/parameters/sort'
      - $ref: '#/components/parameters/region'
      security:
      - 2-legged:
        - data:read
components:
  responses:
    403-general:
      description: Access denied regardless of authorization status.
      content:
        application/json:
          schema:
            properties:
              id:
                type: string
    500-general:
      description: Unexpected service interruption
      content:
        application/json:
          schema:
            properties:
              id:
                type: string
    401-general:
      description: Invalid authorization header.
      content:
        application/json:
          schema:
            properties:
              id:
                type: string
    404-general:
      description: The specified resource was not found.
      content:
        application/json:
          schema:
            properties:
              id:
                type: string
    400-general:
      description: The request is invalid.
      content:
        application/json:
          schema:
            properties:
              id:
                type: string
  schemas:
    status:
      type: string
      enum:
      - active
      - inactive
      - reactivated
      description: "Indicates the current state of the webhook. Possible values are \n\n- ``active`` - Successfully delivered most recent event notifications. \n- ``inactive`` - Failed to deliver most recent event notification and has been deactivated.\n- ``reactivated`` - Previously inactive webhook that has been reactivated. No events have occurred since reactivation.\n\nSee [Event Delivery Guarantees](/en/docs/webhooks/v1/developers_guide/event-delivery-guarantees/) for more information on how the system deactivates webhooks and subsequently reactivates them.    \n"
    sort:
      x-stoplight:
        id: x0dbxqcegubv1
      description: "Specifies the sorting order of the list of webhooks by their ``lastUpdatedDate`` attribute. \n\n- ``asc`` - Ascending order.\n- ``desc`` - (Default) Descending order.\n"
      enum:
      - asc
      - desc
      title: ''
    HookPayload:
      type: object
      x-examples:
        example-1:
          callbackUrl: http://bf067e05.ngrok.io/callback
          autoReactivateHook: false
          scope:
            folder: urn:adsk.wipprod:fs.folder:co.wT5lCWlXSKeo3razOfHJAw
          hookAttribute:
            myfoo: 33
            projectId: someURN
            myobject:
              nested: true
          hookExpiry: '2017-09-21T17:04:10.444Z'
      title: HookPayload
      description: 'Specifies the details of a webhook to be created. '
      properties:
        callbackUrl:
          type: string
          minLength: 1
          description: "The URL to send notifications to when the \nevent is triggered. "
        autoReactivateHook:
          type: boolean
          description: '``true`` - Automatically reactivate the webhook if it becomes ``inactive``.


            ``false`` - (Default) Do not reactivate the webhook if it becomes ``inactive``.


            See [Event Delivery Guarantees](/en/docs/webhooks/v1/developers_guide/event-delivery-guarantees/) for more information on how the webhooks service handles reactivation.'
        scope:
          type: object
          description: Specifies the extent to which the event is monitored. For example, if the scope is folder, the webhooks service generates a notification for the specified event occurring in any sub folder or item within that folder.
        hookAttribute:
          type: object
          description: Specifies the extent to which the event is monitored. For example, if the scope is folder, the webhooks service generates a notification for the specified event occurring in any sub folder or item within that folder.
        hookExpiry:
          type: string
          minLength: 1
          description: The date and time the webhook will expire, formatted as an ISO 8601 date/time string. If you do not specify this attribute or set it to null, the webhook will never expire.
        filter:
          type: string
          x-stoplight:
            id: ovklq1q6l4fne
          description: 'A Jsonpath expression that you can use to filter the callbacks you receive.


            See [Callback Filtering](/en/docs/webhooks/v1/developers_guide/callback-filtering/) for more information.'
        hubId:
          type: string
          x-stoplight:
            id: ofruyk46skf30
          description: 'The ID of the hub that contains the entity that you want to monitor. Specify this attribute if the user calling this operation is a member of a large number of projects.


            For BIM 360 Docs and ACC Docs, a hub ID corresponds to an Account ID. To convert a BIM 360 or ACC Account ID to a hub ID, prefix the Account ID with ``b.``. For example, an Account ID of ```c8b0c73d-3ae9``` translates to a hub ID of ``b.c8b0c73d-3ae9``.'
        projectId:
          type: string
          x-stoplight:
            id: xxxpsee8dhjma
          description: 'The ID of the project that contains the entity that you want to monitor Specify this attribute if the user calling this operation is a member of a large number of projects.


            BIM 360 and ACC project IDs are different to Data Management project IDs. To convert a BIM 360 and ACC project IDs to  Data Management project IDs, prefix the BIM 360 or ACC Project ID with ``b.``. For example, a project ID of ``c8b0c73d-3ae9`` translates to a project ID of ``b.c8b0c73d-3ae9``.'
        tenant:
          type: string
          x-stoplight:
            id: aebt81azd05bz
          description: The tenant associated with the event. If specified on the webhook, the event's tenant must match the webhook's tenant.
        callbackWithEventPayloadOnly:
          type: boolean
          x-stoplight:
            id: tep138os1k7nl
          description: '``true`` - The callback request payload must only contain information about the event. It must not contain any information about the webhook.


            ``false`` - (Default) The callback request payload must contain information about the event as well as the webhook.'
      required:
      - callbackUrl
      - scope
    ModifyHookPayload:
      type: object
      x-examples:
        example-1:
          status: active
          autoReactivateHook: false
          filter: $[?(@.ext=='txt')]
          hookAttribute:
            myfoo: 34
            projectId: someURN
            myobject:
              nested: true
      title: ModifyHookPayload
      description: 'Specifies the details of a webhook to be updated. '
      properties:
        status:
          $ref: '#/components/schemas/StatusRequest'
        autoReactivateHook:
          type: boolean
          description: '``true`` - Automatically reactivate the webhook if it becomes ``inactive``.


            ``false`` - (Default) Do not reactivate the webhook if it becomes ``inactive``.


            See [Event Delivery Guarantees](/en/docs/webhooks/v1/developers_guide/event-delivery-guarantees/) for more information on how the webhooks service handles reactivation.'
        filter:
          type: string
          minLength: 1
          description: 'A Jsonpath expression that you can use to filter the callbacks you receive.


            See [Callback Filtering](/en/docs/webhooks/v1/developers_guide/callback-filtering/) for more information.'
        hookAttribute:
          type: object
          description: Specifies the extent to which the event is monitored. For example, if the scope is folder, the webhooks service generates a notification for the specified event occurring in any sub folder or item within that folder.
        token:
          type: string
          x-stoplight:
            id: icxzgacs5blwe
          description: 'A secret token that is used to generate a hash signature, which is passed along with notification requests to the callback URL.


            See the [Secret Token](/en/docs/webhooks/v1/developers_guide/basics/#secret-token) section in API Basics for more information.'
        hookExpiry:
          type: string
          x-stoplight:
            id: vem2t2o5bdt9r
          description: The date and time the webhook will expire, formatted as an ISO 8601 date/time string. If you set this to null, the webhook will never expire.
    region:
      type: string
      enum:
      - US
      - EMEA
      - AUS
      - CAN
      - DEU
      - IND
      - JPN
      - GBR
      description: 'Specifies the geographical location (region) of the server a request must be executed on. This also corresponds to the region where the Webhook data is stored. It is also the location of the server that will make requests to your callback URL. Possible values:


        - ``US`` - (Default) Data center dedicated to serve the United States region.

        - ``EMEA`` - Data center dedicated to serve the European Union, Middle East, and Africa regions.

        - ``AUS`` - (Beta) Data center dedicated to serve the Australia region.

        - ``CAN`` - Data center dedicated to serve the Canada region.

        - ``DEU`` - Data center dedicated to serve the Germany region.

        - ``IND`` - Data center dedicated to serve the India region.

        - ``JPN`` - Data center dedicated to serve the Japan region.

        - ``GBR`` - Data center dedicated to serve the United Kingdom region.


        **Note:** Beta features are subject to change. Please avoid using them in production environments.

        '
    statusFilter:
      type: string
      x-stoplight:
        id: b6sikyj6f62vu
      enum:
      - active
      - inactive
      description: "Filters retrieved webhooks by their current state. Possible values are \n\n- ``active`` - Successfully delivered most recent event notifications. \n- ``inactive`` - Failed to deliver most recent event notification and has been deactivated.\n\nIf this parameter is not specified, the filter is not applied. See [Event Delivery Guarantees](/en/docs/webhooks/v1/developers_guide/event-delivery-guarantees/) for more information on how the state of a webhook changes.\n"
    Hook:
      x-stoplight:
        id: b96631228222b
      type: object
      x-examples:
        example-1:
          hooks:
          - hookId: 04f1033e-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.version.added
            createdDate: 2017-09-19T18:58:16.636+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f1033e-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.version.added/hooks/04f1033e-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f1092e-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.version.copied
            createdDate: 2017-09-19T18:58:16.312+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f1092e-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.version.copied/hooks/04f1092e-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10a50-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.version.deleted
            createdDate: 2017-09-19T18:58:16.716+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: true
            urn: urn:adsk.webhooks:events.hook:04f10a50-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.version.deleted/hooks/04f10a50-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10b22-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.version.modified
            createdDate: 2017-09-19T18:58:16.121+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f10b22-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.version.modified/hooks/04f10b22-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10bea-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.version.moved
            createdDate: 2017-09-19T18:58:16.819+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            urn: urn:adsk.webhooks:events.hook:04f10bea-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.version.moved/hooks/04f10bea-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10ca8-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.folder.added
            createdDate: 2017-09-19T18:58:16.636+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f10ca8-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.folder.added/hooks/04f10ca8-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10d70-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.folder.copied
            createdDate: 2017-09-19T18:58:16.215+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: true
            urn: urn:adsk.webhooks:events.hook:04f10d70-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.folder.copied/hooks/04f10d70-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f10e2e-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.folder.deleted
            createdDate: 2017-09-19T18:58:16.896+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: true
            urn: urn:adsk.webhooks:events.hook:04f10e2e-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.folder.deleted/hooks/04f10e2e-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f112d4-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.folder.modified
            createdDate: 2017-09-19T18:58:16.771+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f112d4-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.folder.modified/hooks/04f112d4-aa58-11e7-abc4-cec278b6b50a
          - hookId: 04f113d8-aa58-11e7-abc4-cec278b6b50a
            tenant: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            callbackUrl: http://bf067e05.ngrok.io/callback
            createdBy: '*****'
            event: dm.folder.moved
            createdDate: 2017-09-19T18:58:16.229+0000
            lastUpdatedDate: 2020-09-14T17:04:10.444+0000
            system: data
            creatorType: O2User
            scope:
              folder: urn:adsk.wipprod:fs.folder:co.CHO-BbcmTsigjzymYeRCmQ
            status: active
            autoReactivateHook: false
            urn: urn:adsk.webhooks:events.hook:04f113d8-aa58-11e7-abc4-cec278b6b50a
            __self__: /systems/data/events/dm.folder.moved/hooks/04f113d8-aa58-11e7-abc4-cec278b6b50a
      title: Hook
      properties:
        hooks:
          type: array
          uniqueItems: true
          minItems: 1
          description: An array of objects, where each object represents a webhook that was created.
          items:
            $ref: '#/components/schemas/HookDetails'
      description: Contains the response to a Create Webhooks for All Events request.
    HookDetails:
      description: Contains the details of a webhook.
      x-stoplight:
        id: c20b19264ce9a
      type: object
      x-examples:
        example-1:
          hookId: 05f10350-991a-11e7-8cd7-91969336b9c2
          tenant: urn:adsk.wipprod:fs.folder:co.VsFvE6y5SNKnhSnogSeqcg
          callbackUrl: http://cf069e23.ngrok.io/callback_test
          createdBy: '********'
          event: dm.version.added
          createdDate: 2017-09-14T06:57:50.597+0000
          lastUpdatedDate: 2020-09-14T17:04:10.444+0000
          system: data
          creatorType: Application
          status: active
          autoReactivateHook: false
          hookExpiry: '2017-09-21T17:04:10.444Z'
          scope:
            folder: urn:adsk.wipprod:fs.folder:co.VsFvE6y5SNKnhSnogSeqcg
          urn: urn:adsk.webhooks:events.hook:05f10350-991a-11e7-8cd7-91969336b9c2
          __self__: /systems/data/events/dm.version.added/hooks/05f10350-991a-11e7-8cd7-91969336b9c2
      title: HookDetails
      properties:
        hookId:
          type: string
          minLength: 1
          description: The ID that uniquely identifies the webhook.
        tenant:
          type: string
          minLength: 1
          description: "The ID of the tenant from which the event \noriginates."
        callbackUrl:
          type: string
          minLength: 1
          description: "The URL to send notifications to when the \nevent is triggered. "
        createdBy:
          type: string
          minLength: 1
          description: "The ID of the enti

# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/autodesk-fusion/refs/heads/main/openapi/autodesk-fusion-hooks-api-openapi.yml