Microsoft Azure · Capability

Microsoft Azure Azure OpenAI Service API — Assistants

Microsoft Azure Azure OpenAI Service API — Assistants. 27 operations. Lead operation: Microsoft Azure Returns A List Of Assistants. Self-contained Naftiko capability covering one Microsoft Azure business surface.

Run with Naftiko Microsoft AzureAssistants

What You Can Do

GET
Microsoftazurelistassistants — Microsoft Azure Returns A List Of Assistants
/v1/assistants
POST
Microsoftazurecreateassistant — Microsoft Azure Create An Assistant With A Model And Instructions
/v1/assistants
GET
Microsoftazuregetassistant — Microsoft Azure Retrieves An Assistant
/v1/assistants/{assistant-id}
DELETE
Microsoftazuredeleteassistant — Microsoft Azure Delete An Assistant
/v1/assistants/{assistant-id}
GET
Microsoftazurelistassistantfiles — Microsoft Azure Returns A List Of Assistant Files
/v1/assistants/{assistant-id}/files
POST
Microsoftazurecreateassistantfile — Microsoft Azure Create An Assistant File By Attaching A [file] Docs Api Reference Files To An [assistant] Docs Api Reference Assistants
/v1/assistants/{assistant-id}/files
GET
Microsoftazuregetassistantfile — Microsoft Azure Retrieves An Assistantfile
/v1/assistants/{assistant-id}/files/{file-id}
DELETE
Microsoftazuredeleteassistantfile — Microsoft Azure Delete An Assistant File
/v1/assistants/{assistant-id}/files/{file-id}
POST
Microsoftazurecreatethread — Microsoft Azure Create A Thread
/v1/threads
POST
Microsoftazurecreatethreadandrun — Microsoft Azure Create A Thread And Run It In One Request
/v1/threads/runs
GET
Microsoftazuregetthread — Microsoft Azure Retrieves A Thread
/v1/threads/{thread-id}
POST
Microsoftazuremodifythread — Microsoft Azure Modifies A Thread
/v1/threads/{thread-id}
DELETE
Microsoftazuredeletethread — Microsoft Azure Delete A Thread
/v1/threads/{thread-id}
GET
Microsoftazurelistmessages — Microsoft Azure Returns A List Of Messages For A Given Thread
/v1/threads/{thread-id}/messages
POST
Microsoftazurecreatemessage — Microsoft Azure Create A Message
/v1/threads/{thread-id}/messages
GET
Microsoftazuregetmessage — Microsoft Azure Retrieve A Message
/v1/threads/{thread-id}/messages/{message-id}
POST
Microsoftazuremodifymessage — Microsoft Azure Modifies A Message
/v1/threads/{thread-id}/messages/{message-id}
GET
Microsoftazurelistmessagefiles — Microsoft Azure Returns A List Of Message Files
/v1/threads/{thread-id}/messages/{message-id}/files
GET
Microsoftazuregetmessagefile — Microsoft Azure Retrieves A Message File
/v1/threads/{thread-id}/messages/{message-id}/files/{file-id}
GET
Microsoftazurelistruns — Microsoft Azure Returns A List Of Runs Belonging To A Thread
/v1/threads/{thread-id}/runs
POST
Microsoftazurecreaterun — Microsoft Azure Create A Run
/v1/threads/{thread-id}/runs
GET
Microsoftazuregetrun — Microsoft Azure Retrieves A Run
/v1/threads/{thread-id}/runs/{run-id}
POST
Microsoftazuremodifyrun — Microsoft Azure Modifies A Run
/v1/threads/{thread-id}/runs/{run-id}
POST
Microsoftazurecancelrun — Microsoft Azure Cancels A Run That Is `in Progress`
/v1/threads/{thread-id}/runs/{run-id}/cancel
GET
Microsoftazurelistrunsteps — Microsoft Azure Returns A List Of Run Steps Belonging To A Run
/v1/threads/{thread-id}/runs/{run-id}/steps
GET
Microsoftazuregetrunstep — Microsoft Azure Retrieves A Run Step
/v1/threads/{thread-id}/runs/{run-id}/steps/{step-id}
POST
Microsoftazuresubmittooloutputstorun — Microsoft Azure When A Run Has The `status: "requires Action"` And `required Action Type` Is `submit Tool Outputs`, This Endpoint Can Be Used To Submit The Outputs From The Tool Calls Once They Re All Completed All Outputs Must Be Submitted
/v1/threads/{thread-id}/runs/{run-id}/submit-tool-outputs

MCP Tools

microsoft-azure-returns-list-assistants

Microsoft Azure Returns A List Of Assistants

read-only idempotent
microsoft-azure-create-assistant-model

Microsoft Azure Create An Assistant With A Model And Instructions

microsoft-azure-retrieves-assistant

Microsoft Azure Retrieves An Assistant

read-only idempotent
microsoft-azure-delete-assistant

Microsoft Azure Delete An Assistant

idempotent
microsoft-azure-returns-list-assistant

Microsoft Azure Returns A List Of Assistant Files

read-only idempotent
microsoft-azure-create-assistant-file

Microsoft Azure Create An Assistant File By Attaching A [file] Docs Api Reference Files To An [assistant] Docs Api Reference Assistants

microsoft-azure-retrieves-assistantfile

Microsoft Azure Retrieves An Assistantfile

read-only idempotent
microsoft-azure-delete-assistant-file

Microsoft Azure Delete An Assistant File

idempotent
microsoft-azure-create-thread

Microsoft Azure Create A Thread

microsoft-azure-create-thread-and

Microsoft Azure Create A Thread And Run It In One Request

microsoft-azure-retrieves-thread

Microsoft Azure Retrieves A Thread

read-only idempotent
microsoft-azure-modifies-thread

Microsoft Azure Modifies A Thread

microsoft-azure-delete-thread

Microsoft Azure Delete A Thread

idempotent
microsoft-azure-returns-list-messages

Microsoft Azure Returns A List Of Messages For A Given Thread

read-only idempotent
microsoft-azure-create-message

Microsoft Azure Create A Message

microsoft-azure-retrieve-message

Microsoft Azure Retrieve A Message

read-only idempotent
microsoft-azure-modifies-message

Microsoft Azure Modifies A Message

microsoft-azure-returns-list-message

Microsoft Azure Returns A List Of Message Files

read-only idempotent
microsoft-azure-retrieves-message-file

Microsoft Azure Retrieves A Message File

read-only idempotent
microsoft-azure-returns-list-runs

Microsoft Azure Returns A List Of Runs Belonging To A Thread

read-only idempotent
microsoft-azure-create-run

Microsoft Azure Create A Run

microsoft-azure-retrieves-run

Microsoft Azure Retrieves A Run

read-only idempotent
microsoft-azure-modifies-run

Microsoft Azure Modifies A Run

microsoft-azure-cancels-run-that

Microsoft Azure Cancels A Run That Is `in Progress`

microsoft-azure-returns-list-run

Microsoft Azure Returns A List Of Run Steps Belonging To A Run

read-only idempotent
microsoft-azure-retrieves-run-step

Microsoft Azure Retrieves A Run Step

read-only idempotent
microsoft-azure-when-run-has

Microsoft Azure When A Run Has The `status: "requires Action"` And `required Action Type` Is `submit Tool Outputs`, This Endpoint Can Be Used To Submit The Outputs From The Tool Calls Once They Re All Completed All Outputs Must Be Submitted

Capability Spec

azure-openai-service-assistants.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Azure Azure OpenAI Service API — Assistants
  description: 'Microsoft Azure Azure OpenAI Service API — Assistants. 27 operations. Lead operation: Microsoft Azure Returns
    A List Of Assistants. Self-contained Naftiko capability covering one Microsoft Azure business surface.'
  tags:
  - Microsoft Azure
  - Assistants
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY
capability:
  consumes:
  - type: http
    namespace: azure-openai-service-assistants
    baseUri: https://{endpoint}/openai
    description: Microsoft Azure Azure OpenAI Service API — Assistants business capability. Self-contained, no shared references.
    resources:
    - name: assistants
      path: /assistants
      operations:
      - name: microsoftazurelistassistants
        method: GET
        description: Microsoft Azure Returns A List Of Assistants
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazurecreateassistant
        method: POST
        description: Microsoft Azure Create An Assistant With A Model And Instructions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: assistants-assistant_id
      path: /assistants/{assistant_id}
      operations:
      - name: microsoftazuregetassistant
        method: GET
        description: Microsoft Azure Retrieves An Assistant
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant to retrieve.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazuredeleteassistant
        method: DELETE
        description: Microsoft Azure Delete An Assistant
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant to delete.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: assistants-assistant_id-files
      path: /assistants/{assistant_id}/files
      operations:
      - name: microsoftazurelistassistantfiles
        method: GET
        description: Microsoft Azure Returns A List Of Assistant Files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant the file belongs to.
          required: true
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazurecreateassistantfile
        method: POST
        description: Microsoft Azure Create An Assistant File By Attaching A [file] Docs Api Reference Files To An [assistant]
          Docs Api Reference Assistants
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant for which to create a File.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: assistants-assistant_id-files-file_id
      path: /assistants/{assistant_id}/files/{file_id}
      operations:
      - name: microsoftazuregetassistantfile
        method: GET
        description: Microsoft Azure Retrieves An Assistantfile
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant who the file belongs to.
          required: true
        - name: file_id
          in: path
          type: string
          description: The ID of the file we're getting.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazuredeleteassistantfile
        method: DELETE
        description: Microsoft Azure Delete An Assistant File
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: assistant_id
          in: path
          type: string
          description: The ID of the assistant that the file belongs to.
          required: true
        - name: file_id
          in: path
          type: string
          description: The ID of the file to delete.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads
      path: /threads
      operations:
      - name: microsoftazurecreatethread
        method: POST
        description: Microsoft Azure Create A Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-runs
      path: /threads/runs
      operations:
      - name: microsoftazurecreatethreadandrun
        method: POST
        description: Microsoft Azure Create A Thread And Run It In One Request
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-thread_id
      path: /threads/{thread_id}
      operations:
      - name: microsoftazuregetthread
        method: GET
        description: Microsoft Azure Retrieves A Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to retrieve.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazuremodifythread
        method: POST
        description: Microsoft Azure Modifies A Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to modify. Only the `metadata` can be modified.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: microsoftazuredeletethread
        method: DELETE
        description: Microsoft Azure Delete A Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to delete.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-messages
      path: /threads/{thread_id}/messages
      operations:
      - name: microsoftazurelistmessages
        method: GET
        description: Microsoft Azure Returns A List Of Messages For A Given Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) the messages belong to.
          required: true
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazurecreatemessage
        method: POST
        description: Microsoft Azure Create A Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) to create a message for.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-thread_id-messages-message_id
      path: /threads/{thread_id}/messages/{message_id}
      operations:
      - name: microsoftazuregetmessage
        method: GET
        description: Microsoft Azure Retrieve A Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) to which this message belongs.
          required: true
        - name: message_id
          in: path
          type: string
          description: The ID of the message to retrieve.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazuremodifymessage
        method: POST
        description: Microsoft Azure Modifies A Message
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to which this message belongs.
          required: true
        - name: message_id
          in: path
          type: string
          description: The ID of the message to modify.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-thread_id-messages-message_id-files
      path: /threads/{thread_id}/messages/{message_id}/files
      operations:
      - name: microsoftazurelistmessagefiles
        method: GET
        description: Microsoft Azure Returns A List Of Message Files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread that the message and files belong to.
          required: true
        - name: message_id
          in: path
          type: string
          description: The ID of the message that the files belongs to.
          required: true
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-messages-message_id-files-file_id
      path: /threads/{thread_id}/messages/{message_id}/files/{file_id}
      operations:
      - name: microsoftazuregetmessagefile
        method: GET
        description: Microsoft Azure Retrieves A Message File
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to which the message and File belong.
          required: true
        - name: message_id
          in: path
          type: string
          description: The ID of the message the file belongs to.
          required: true
        - name: file_id
          in: path
          type: string
          description: The ID of the file being retrieved.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-runs
      path: /threads/{thread_id}/runs
      operations:
      - name: microsoftazurelistruns
        method: GET
        description: Microsoft Azure Returns A List Of Runs Belonging To A Thread
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread the run belongs to.
          required: true
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazurecreaterun
        method: POST
        description: Microsoft Azure Create A Run
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to run.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-thread_id-runs-run_id
      path: /threads/{thread_id}/runs/{run_id}
      operations:
      - name: microsoftazuregetrun
        method: GET
        description: Microsoft Azure Retrieves A Run
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) that was run.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run to retrieve.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
      - name: microsoftazuremodifyrun
        method: POST
        description: Microsoft Azure Modifies A Run
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) that was run.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run to modify.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: threads-thread_id-runs-run_id-cancel
      path: /threads/{thread_id}/runs/{run_id}/cancel
      operations:
      - name: microsoftazurecancelrun
        method: POST
        description: Microsoft Azure Cancels A Run That Is `in Progress`
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to which this run belongs.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run to cancel.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-runs-run_id-steps
      path: /threads/{thread_id}/runs/{run_id}/steps
      operations:
      - name: microsoftazurelistrunsteps
        method: GET
        description: Microsoft Azure Returns A List Of Run Steps Belonging To A Run
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread the run and run steps belong to.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run the run steps belong to.
          required: true
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 20.
        - name: order
          in: query
          type: string
          description: Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending
            order.
        - name: after
          in: query
          type: string
          description: A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance,
            if you make a list request and receive 100 objects, e
        - name: before
          in: query
          type: string
          description: 'A cursor for use in pagination. `before` is an object ID that defines your place in the list. For
            instance, if you make a list request and receive 100 objects, '
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-runs-run_id-steps-step_id
      path: /threads/{thread_id}/runs/{run_id}/steps/{step_id}
      operations:
      - name: microsoftazuregetrunstep
        method: GET
        description: Microsoft Azure Retrieves A Run Step
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the thread to which the run and run step belongs.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run to which the run step belongs.
          required: true
        - name: step_id
          in: path
          type: string
          description: The ID of the run step to retrieve.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
    - name: threads-thread_id-runs-run_id-submit_tool_outputs
      path: /threads/{thread_id}/runs/{run_id}/submit_tool_outputs
      operations:
      - name: microsoftazuresubmittooloutputstorun
        method: POST
        description: 'Microsoft Azure When A Run Has The `status: "requires Action"` And `required Action Type` Is `submit
          Tool Outputs`, This Endpoint Can Be Used To Submit The Outputs From The Tool Calls Once They Re All Completed All
          Outputs Must Be Submitted'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: thread_id
          in: path
          type: string
          description: The ID of the [thread](/docs/api-reference/threads) to which this run belongs.
          required: true
        - name: run_id
          in: path
          type: string
          description: The ID of the run that requires the tool output submission.
          required: true
        - name: api-version
          in: query
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.MICROSOFT_AZURE_API_KEY}}'
  exposes:
  - type: rest
    namespace: azure-openai-service-assistants-rest
    port: 8080
    description: REST adapter for Microsoft Azure Azure OpenAI Service API — Assistants. One Spectral-compliant resource per
      consumed operation, prefixed with /v1.
    resources:
    - path: /v1/assistants
      name: assistants
      description: REST surface for assistants.
      operations:
      - method: GET
        name: microsoftazurelistassistants
        description: Microsoft Azure Returns A List Of Assistants
        call: azure-openai-service-assistants.microsoftazurelistassistants
        with:
          limit: rest.limit
          order: rest.order
          after: rest.after
          before: rest.before
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: microsoftazurecreateassistant
        description: Microsoft Azure Create An Assistant With A Model And Instructions
        call: azure-openai-service-assistants.microsoftazurecreateassistant
        with:
          api-version: rest.api-version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/assistants/{assistant-id}
      name: assistants-assistant-id
      description: REST surface for assistants-assistant_id.
      operations:
      - method: GET
        name: microsoftazuregetassistant
        description: Microsoft Azure Retrieves An Assistant
        call: azure-openai-service-assistants.microsoftazuregetassistant
        with:
          assistant_id: rest.assistant_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: microsoftazuredeleteassistant
        description: Microsoft Azure Delete An Assistant
        call: azure-openai-service-assistants.microsoftazuredeleteassistant
        with:
          assistant_id: rest.assistant_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/assistants/{assistant-id}/files
      name: assistants-assistant-id-files
      description: REST surface for assistants-assistant_id-files.
      operations:
      - method: GET
        name: microsoftazurelistassistantfiles
        description: Microsoft Azure Returns A List Of Assistant Files
        call: azure-openai-service-assistants.microsoftazurelistassistantfiles
        with:
          assistant_id: rest.assistant_id
          limit: rest.limit
          order: rest.order
          after: rest.after
          before: rest.before
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: microsoftazurecreateassistantfile
        description: Microsoft Azure Create An Assistant File By Attaching A [file] Docs Api Reference Files To An [assistant]
          Docs Api Reference Assistants
        call: azure-openai-service-assistants.microsoftazurecreateassistantfile
        with:
          assistant_id: rest.assistant_id
          api-version: rest.api-version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/assistants/{assistant-id}/files/{file-id}
      name: assistants-assistant-id-files-file-id
      description: REST surface for assistants-assistant_id-files-file_id.
      operations:
      - method: GET
        name: microsoftazuregetassistantfile
        description: Microsoft Azure Retrieves An Assistantfile
        call: azure-openai-service-assistants.microsoftazuregetassistantfile
        with:
          assistant_id: rest.assistant_id
          file_id: rest.file_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: microsoftazuredeleteassistantfile
        description: Microsoft Azure Delete An Assistant File
        call: azure-openai-service-assistants.microsoftazuredeleteassistantfile
        with:
          assistant_id: rest.assistant_id
          file_id: rest.file_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/threads
      name: threads
      description: REST surface for threads.
      operations:
      - method: POST
        name: microsoftazurecreatethread
        description: Microsoft Azure Create A Thread
        call: azure-openai-service-assistants.microsoftazurecreatethread
        with:
          api-version: rest.api-version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/threads/runs
      name: threads-runs
      description: REST surface for threads-runs.
      operations:
      - method: POST
        name: microsoftazurecreatethreadandrun
        description: Microsoft Azure Create A Thread And Run It In One Request
        call: azure-openai-service-assistants.microsoftazurecreatethreadandrun
        with:
          api-version: rest.api-version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/threads/{thread-id}
      name: threads-thread-id
      description: REST surface for threads-thread_id.
      operations:
      - method: GET
        name: microsoftazuregetthread
        description: Microsoft Azure Retrieves A Thread
        call: azure-openai-service-assistants.microsoftazuregetthread
        with:
          thread_id: rest.thread_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: microsoftazuremodifythread
        description: Microsoft Azure Modifies A Thread
        call: azure-openai-service-assistants.microsoftazuremodifythread
        with:
          thread_id: rest.thread_id
          api-version: rest.api-version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: microsoftazuredeletethread
        description: Microsoft Azure Delete A Thread
        call: azure-openai-service-assistants.microsoftazuredeletethread
        with:
          thread_id: rest.thread_id
          api-version: rest.api-version
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/threads/{thread-id}/messages
      name: threads-thread-id-messages
      description: REST surface for threads-thread_id-messages.
      operations:
      - method: GET
        name: microsoftazurelistmess

# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/microsoft-azure/refs/heads/main/capabilities/azure-openai-service-assistants.yaml