get:
  tags:
    - Service Desk Integration
  summary: Get a Service Desk integration by ID
  description: Get an existing Service Desk integration by ID.  A token with Org Admin or Service Desk Admin authority is required to access this endpoint.
  operationId: getServiceDeskIntegration
  parameters:
    - name: id
      in: path
      description: ID of the Service Desk integration to get
      required: true
      style: simple
      explode: false
      schema:
        type: string
        example: anId
  responses:
    "200":
      description: ServiceDeskIntegrationDto with the given ID
      content:
        application/json:
          schema:
            $ref: '../schemas/ServiceDeskIntegrationDto.yaml'
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '404':
      $ref: '../../v3/responses/404.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:service-desk-admin:read,idn:service-desk-integration:read]

put:
  tags:
    - Service Desk Integration
  summary: Update a Service Desk integration by ID
  description: Update an existing Service Desk integration by ID with updated value in JSON form as the request body.  A token with Org Admin or Service Desk Admin authority is required to access this endpoint.
  operationId: updateServiceDeskIntegration
  parameters:
    - name: id
      in: path
      description: ID of the Service Desk integration to update
      required: true
      style: simple
      explode: false
      schema:
        type: string
        example: anId
  requestBody:
    description: The specifics of the integration to update
    content:
      application/json:
        schema:
          $ref: '../schemas/ServiceDeskIntegrationDto.yaml'
    required: true
  responses:
    "200":
      description: ServiceDeskIntegrationDto as updated
      content:
        application/json:
          schema:
            $ref: '../schemas/ServiceDeskIntegrationDto.yaml'
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '404':
      $ref: '../../v3/responses/404.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:service-desk-admin:write,idn:service-desk-integration:write]

delete:
  tags:
    - Service Desk Integration
  summary: Delete a Service Desk integration by ID
  description: Delete an existing Service Desk integration by ID.  A token with Org Admin or Service Desk Admin authority is required to access this endpoint.
  operationId: deleteServiceDeskIntegration
  parameters:
    - name: id
      in: path
      description: ID of Service Desk integration to delete
      required: true
      style: simple
      explode: false
      schema:
        type: string
        example: anId
  responses:
    "204":
      description: Service Desk integration with the given ID successfully deleted
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '404':
      $ref: '../../v3/responses/404.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:service-desk-admin:write,idn:service-desk-integration:write]

patch:
  operationId: patchServiceDeskIntegration
  tags:
    - Service Desk Integration
  summary: Service Desk Integration Update - PATCH
  description: Update an existing ServiceDeskIntegration by ID with a PATCH request.
  parameters:
    - name: id
      in: path
      description: ID of the Service Desk integration to update
      required: true
      style: simple
      explode: false
      schema:
        type: string
        example: anId
  requestBody:
    required: true
    description: |
      A list of SDIM update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.

      PATCH can only be applied to the following fields:
        *   "beforeProvisioningRule"

      A 403 Forbidden Error indicates that you attempted to PATCH a field that is not allowed.
    content:
      application/json-patch+json:
        schema:
          $ref: '../schemas/JsonPatch.yaml'
  responses:
    "200":
      description: ServiceDeskIntegrationDto as updated
      content:
        application/json:
          schema:
            $ref: '../schemas/ServiceDeskIntegrationDto.yaml'
    '400':
      $ref: '../../v3/responses/400.yaml'
    '401':
      $ref: '../../v3/responses/401.yaml'
    '403':
      $ref: '../../v3/responses/403.yaml'
    '404':
      $ref: '../../v3/responses/404.yaml'
    '429':
      $ref: '../../v3/responses/429.yaml'
    '500':
      $ref: '../../v3/responses/500.yaml'
  security:
    - oauth2: [idn:service-desk-admin:write,idn:service-desk-integration:write]