> ## Documentation Index
> Fetch the complete documentation index at: https://docs.talqui.chat/llms.txt
> Use this file to discover all available pages before exploring further.

# Read plugin

> Reads one plugin with what its install and settings screens show: name,
icon, description, author, the permissions it asks for, its help link, the
address of its settings page and the integrations it fronts. Hidden plugins
are found too, so an operator can keep configuring one already installed.
Callable by an operator, a plugin or a plugin connection.



## OpenAPI

````yaml /api/services-api.yaml get /v1/plugins/{pluginID}
openapi: 3.0.3
info:
  description: >-
    Talqui is an omnichannel customer service platform that unifies
    conversations from WhatsApp, Instagram, Telegram, and many other channels
    into a single attendant panel, alongside a broader ecosystem of plugins and
    integrations. This API gives developers programmatic access to Talqui's
    services layer, exposing the operations needed to read and manage tenants,
    conversations, plugins, and related resources that power that platform.


    Authentication is available on behalf of an Operator (the default for this
    API), a Plugin Connection, or a Plugin — see the [Talqui authentication
    guide](https://docs.talqui.chat/guides/introduction/authentication/) for how
    each token is obtained and when to use it.


    Need help or have questions not covered here? Reach out to
    support@talqui.com.
  license:
    name: ISC
    url: https://opensource.org/license/isc-license-txt
  title: Talqui - Services API
  version: 0.71.0
servers:
  - description: Production
    url: https://services-api.talqui.chat
security: []
tags:
  - name: Tenants
  - name: Settings
  - name: Analytics/Reports
  - name: Analytics
  - name: Campaigns
  - name: Campaigns/Models
  - name: Contacts
  - name: Contacts/Imports
  - name: Handoff links
  - name: Inboxes
  - name: Messages
  - name: Notifications
  - name: Sessions
  - name: Operators/Shortcuts
  - name: Operators
  - name: Plugins
  - name: Setup
  - name: Uploads
paths:
  /v1/plugins/{pluginID}:
    get:
      tags:
        - Plugins
      summary: Read plugin
      description: >-
        Reads one plugin with what its install and settings screens show: name,

        icon, description, author, the permissions it asks for, its help link,
        the

        address of its settings page and the integrations it fronts. Hidden
        plugins

        are found too, so an operator can keep configuring one already
        installed.

        Callable by an operator, a plugin or a plugin connection.
      operationId: ReadPluginController
      parameters:
        - in: path
          name: pluginID
          required: true
          schema:
            description: Identifier of the plugin.
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  plugin:
                    additionalProperties: false
                    properties:
                      pluginAuthor:
                        additionalProperties: false
                        default: null
                        description: Who publishes the plugin.
                        nullable: true
                        properties:
                          avatar:
                            default: null
                            description: Avatar URL of the plugin author.
                            nullable: true
                            type: string
                          business_name:
                            default: null
                            description: Business name of the plugin author.
                            nullable: true
                            type: string
                          first_name:
                            default: null
                            description: First name of the plugin author.
                            nullable: true
                            type: string
                          last_name:
                            default: null
                            description: Last name of the plugin author.
                            nullable: true
                            type: string
                        required:
                          - first_name
                          - last_name
                          - business_name
                          - avatar
                        type: object
                      pluginDescription:
                        default: null
                        description: Markdown body describing the plugin.
                        nullable: true
                        type: string
                      pluginHelp:
                        default: null
                        description: Link to help/documentation for this plugin, if any.
                        nullable: true
                        type: string
                      pluginID:
                        description: Identifier of the plugin.
                        type: string
                      pluginIcon:
                        default: null
                        description: Icon URL.
                        nullable: true
                        type: string
                      pluginName:
                        description: Display name of the plugin.
                        type: string
                      pluginPresentations:
                        default: []
                        description: >-
                          Integrations this plugin fronts, each with its own
                          name and icon. Empty for a single integration.
                        items:
                          additionalProperties: false
                          properties:
                            adapter:
                              default: null
                              description: >-
                                Integration this presentation fronts (e.g.
                                `hubspot`).
                              nullable: true
                              type: string
                            pluginDescription:
                              default: null
                              description: Markdown body describing this presentation.
                              nullable: true
                              type: string
                            pluginIcon:
                              default: null
                              description: Icon URL of this presentation.
                              nullable: true
                              type: string
                            pluginName:
                              default: null
                              description: Display name of this presentation.
                              nullable: true
                              type: string
                            pluginSlug:
                              default: null
                              description: Public identifier of this presentation.
                              nullable: true
                              type: string
                            pluginSummary:
                              default: null
                              description: Short, one-line summary of this presentation.
                              nullable: true
                              type: string
                            presentationKey:
                              default: null
                              description: Identifies this presentation of the plugin.
                              nullable: true
                              type: string
                          required:
                            - presentationKey
                            - adapter
                            - pluginName
                            - pluginIcon
                            - pluginSummary
                            - pluginDescription
                            - pluginSlug
                          type: object
                        nullable: true
                        type: array
                      pluginScopes:
                        default: []
                        description: Permissions the plugin asks for when installed.
                        items:
                          additionalProperties: false
                          properties:
                            namespace:
                              description: >-
                                Area of Talqui the plugin can reach (e.g.
                                `website:conversation:messages`).
                              type: string
                            permissions:
                              description: What the plugin may do there (`read`, `write`).
                              items:
                                type: string
                              type: array
                          required:
                            - namespace
                            - permissions
                          type: object
                        nullable: true
                        type: array
                      pluginSettings:
                        default: null
                        description: >-
                          Address of the settings page embedded for an installed
                          plugin, or null when it has none.
                        nullable: true
                        type: string
                      pluginURN:
                        description: Internal identifier of the plugin type.
                        nullable: true
                        type: string
                    required:
                      - pluginID
                      - pluginURN
                      - pluginName
                      - pluginIcon
                      - pluginDescription
                      - pluginAuthor
                      - pluginScopes
                      - pluginHelp
                      - pluginSettings
                      - pluginPresentations
                    type: object
                required:
                  - plugin
                type: object
          description: Response for status 200.
        '400':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      $ref: '#/components/schemas/RequestValidationError'
                    maxItems: 1
                    minItems: 1
                    type: array
                required:
                  - errors
                type: object
          description: >-
            RequestValidationError (error_code 1002): pluginID is not a valid
            UUID.
        '401':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      $ref: '#/components/schemas/UnauthorizedError'
                    maxItems: 1
                    minItems: 1
                    type: array
                required:
                  - errors
                type: object
          description: 'UnauthorizedError (error_code 1003): missing/invalid token.'
        '403':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      $ref: '#/components/schemas/ForbiddenError'
                    maxItems: 1
                    minItems: 1
                    type: array
                required:
                  - errors
                type: object
          description: 'ForbiddenError (error_code 1004): token rejected upstream.'
        '404':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      $ref: '#/components/schemas/PluginNotFoundError'
                    maxItems: 1
                    minItems: 1
                    type: array
                required:
                  - errors
                type: object
          description: 'PluginNotFoundError (error_code 1207): no plugin has the given id.'
        '500':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      $ref: '#/components/schemas/UnknownError'
                    maxItems: 1
                    minItems: 1
                    type: array
                required:
                  - errors
                type: object
          description: >-
            UnknownError (error_code 5999): Unexpected internal error not
            otherwise documented for this endpoint.
components:
  schemas:
    RequestValidationError:
      additionalProperties: false
      properties:
        error:
          enum:
            - RequestValidationError
          type: string
        error_code:
          enum:
            - 1002
          type: number
        fields:
          items:
            additionalProperties: false
            properties:
              allowed:
                type: string
              field:
                type: string
              received:
                type: string
            required:
              - field
              - received
              - allowed
            type: object
          type: array
        message:
          example: Invalid request data.
          type: string
        statusCode:
          enum:
            - 400
          type: number
      required:
        - statusCode
        - error
        - error_code
        - message
        - fields
      type: object
    UnauthorizedError:
      additionalProperties: false
      properties:
        error:
          enum:
            - UnauthorizedError
          type: string
        error_code:
          enum:
            - 1003
          type: number
        message:
          example: You are not authorized to perform this request.
          type: string
        statusCode:
          enum:
            - 401
          type: number
      required:
        - statusCode
        - error
        - error_code
        - message
      type: object
    ForbiddenError:
      additionalProperties: false
      properties:
        error:
          enum:
            - ForbiddenError
          type: string
        error_code:
          enum:
            - 1004
          type: number
        message:
          example: You do not have access to this resource.
          type: string
        statusCode:
          enum:
            - 403
          type: number
      required:
        - statusCode
        - error
        - error_code
        - message
      type: object
    PluginNotFoundError:
      additionalProperties: false
      properties:
        error:
          enum:
            - PluginNotFoundError
          type: string
        error_code:
          enum:
            - 1207
          type: number
        message:
          example: Plugin not found.
          type: string
        statusCode:
          enum:
            - 404
          type: number
      required:
        - statusCode
        - error
        - error_code
        - message
      type: object
    UnknownError:
      additionalProperties: false
      properties:
        error:
          enum:
            - UnknownError
          type: string
        error_code:
          enum:
            - 5999
          type: number
        message:
          example: For some unknown reason your request has not succeeded.
          type: string
        statusCode:
          enum:
            - 500
          type: number
      required:
        - statusCode
        - error
        - error_code
        - message
      type: object

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.