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

# Atualizar um Provedor

> Use este endpoint para atualizar a configuração de um provedor. Observe que `category` e `type` não podem ser alterados após a criação.



## OpenAPI

````yaml pt/openapi/v3-current/AM-identity.yaml patch /v1/providers/{id}
openapi: 3.1.0
info:
  title: Plugin de Identidade
  description: ''
  version: 2.4.5
servers:
  - url: https://identity.sandbox.lerian.net
security: []
tags:
  - name: API de Grupos
  - name: API de Aplicações
  - name: API de Usuários
  - name: API de MFA
  - name: API de Provedores
  - name: API de Provedores de Aplicação
paths:
  /v1/providers/{id}:
    patch:
      tags:
        - API de Provedores
      summary: Atualizar um Provedor
      description: >-
        Use este endpoint para atualizar a configuração de um provedor. Observe
        que `category` e `type` não podem ser alterados após a criação.
      parameters:
        - $ref: '#/components/parameters/ProviderIdPath'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProviderUpdateInput'
            example:
              name: sendgrid-primary-v2
              host: smtp.sendgrid.net
              port: 465
              disableSsl: true
      responses:
        '200':
          description: >-
            Indica que o provedor foi atualizado com sucesso e a operação foi
            concluída conforme esperado.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderResponse'
              example:
                id: 019c96a0-1a10-7abc-d1e2-8c9d0e1f2a3b
                name: sendgrid-primary-v2
                category: Email
                type: SendGrid
                host: smtp.sendgrid.net
                port: 465
                disableSsl: true
                createdAt: '2025-04-08T08:01:30.000Z'
          headers: {}
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0003:
                  $ref: '#/components/examples/Error0003'
                Error0004:
                  $ref: '#/components/examples/Error0004'
                Error0007:
                  $ref: '#/components/examples/Error0007'
                Error0010:
                  $ref: '#/components/examples/Error0010'
                Error0011:
                  $ref: '#/components/examples/Error0011'
          headers: {}
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error1007:
                  $ref: '#/components/examples/Error1007'
          headers: {}
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0006:
                  $ref: '#/components/examples/Error0006'
          headers: {}
      security:
        - bearer: []
components:
  parameters:
    ProviderIdPath:
      name: id
      in: path
      description: O identificador único do provedor.
      required: true
      example: 019c96a0-1a10-7abc-d1e2-8c9d0e1f2a3b
      schema:
        type: string
  schemas:
    ProviderUpdateInput:
      description: >-
        Informações usadas para atualizar um provedor existente. Observe que
        `category` e `type` são imutáveis após a criação.
      type: object
      properties:
        name:
          type: string
          description: Nome atualizado do provedor.
        subType:
          type: string
          description: Subtipo do provedor atualizado.
        method:
          type: string
          description: Método de autenticação ou entrega atualizado.
        clientId:
          type: string
          description: ID do cliente ou chave de API atualizado.
        clientSecret:
          type: string
          description: Segredo do cliente ou segredo de API atualizado.
        clientId2:
          type: string
          description: ID de cliente secundário atualizado.
        clientSecret2:
          type: string
          description: Segredo de cliente secundário atualizado.
        host:
          type: string
          description: Endereço de host SMTP ou da API atualizado.
        port:
          type: integer
          description: Porta SMTP atualizada.
        disableSsl:
          type: boolean
          description: Configuração SSL/TLS atualizada.
        title:
          type: string
          description: Título/assunto padrão atualizado.
        content:
          type: string
          description: Modelo de conteúdo padrão atualizado.
        receiver:
          type: string
          description: Endereço do destinatário padrão atualizado.
        regionId:
          type: string
          description: ID da região da nuvem atualizado.
        signName:
          type: string
          description: Nome de assinatura do SMS atualizado.
        templateCode:
          type: string
          description: Código do modelo de SMS atualizado.
        appId:
          type: string
          description: ID da aplicação atualizado.
        endpoint:
          type: string
          description: URL do endpoint da API do provedor atualizado.
        intranetEndpoint:
          type: string
          description: Endpoint de intranet atualizado.
        domain:
          type: string
          description: Domínio do provedor atualizado.
    ProviderResponse:
      description: Informações sobre um provedor de comunicação.
      type: object
      properties:
        id:
          type: string
          description: Identificador único do provedor.
        name:
          type: string
          description: Nome do provedor.
        category:
          type: string
          description: Categoria do provedor.
          enum:
            - Email
            - SMS
        type:
          type: string
          description: Tipo de implementação do provedor.
          enum:
            - SendGrid
            - Twilio
        subType:
          type: string
          description: Subtipo do provedor, se aplicável.
        method:
          type: string
          description: Método de autenticação ou de entrega.
        clientId:
          type: string
          description: ID do cliente ou chave de API (o segredo nunca é retornado).
        clientId2:
          type: string
          description: ID de cliente secundário, se aplicável.
        host:
          type: string
          description: Endereço de host SMTP ou da API.
        port:
          type: integer
          description: Porta SMTP.
        disableSsl:
          type: boolean
          description: Indica se SSL/TLS está desabilitado.
        title:
          type: string
          description: Título/assunto padrão do e-mail ou SMS.
        content:
          type: string
          description: Modelo de conteúdo padrão da mensagem.
        receiver:
          type: string
          description: Endereço do destinatário padrão para testes.
        regionId:
          type: string
          description: ID da região da nuvem (específico do provedor).
        signName:
          type: string
          description: Nome de assinatura do SMS (específico do provedor).
        templateCode:
          type: string
          description: Código do modelo de SMS (específico do provedor).
        appId:
          type: string
          description: ID da aplicação (específico do provedor).
        endpoint:
          type: string
          description: URL do endpoint da API do provedor.
        intranetEndpoint:
          type: string
          description: Endpoint de intranet para acesso por rede privada.
        domain:
          type: string
          description: Domínio do provedor.
        providerUrl:
          type: string
          description: URL específica do provedor.
        createdAt:
          type: string
          format: date-time
          description: Registro de data e hora de quando o provedor foi criado.
    ErrorMessage:
      description: A mensagem de erro da resposta.
      type: object
      properties:
        code:
          type: string
          description: Um identificador único e estável para o erro.
        title:
          type: string
          description: Um breve resumo do problema.
        message:
          type: string
          description: Orientação detalhada para resolver o erro.
  examples:
    Error0003:
      summary: Invalid Path Parameter
      value:
        code: IDE-0003
        title: Invalid Path Parameter
        message: One or more path parameters are in an incorrect format.
    Error0004:
      summary: Unexpected Fields in the Request
      value:
        code: IDE-0004
        title: Unexpected Fields in the Request
        message: >-
          The request body contains more fields than expected. Please send only
          the allowed fields.
    Error0007:
      summary: Bad Request
      value:
        code: IDE-0007
        title: Bad Request
        message: The server could not understand the request due to malformed syntax.
    Error0010:
      summary: Unmodifiable Field Error
      value:
        code: IDE-0010
        title: Unmodifiable Field Error
        message: Your request includes a field that cannot be modified.
    Error0011:
      summary: Immutable Field Error
      value:
        code: IDE-0011
        title: Immutable Field Error
        message: The field cannot be modified. Please remove it from your request.
    Error1007:
      summary: Provider Not Found
      value:
        code: IDE-1007
        title: Provider Not Found
        message: The provided provider ID does not exist in our records.
    Error0006:
      summary: Internal Server Error
      value:
        code: IDE-0006
        title: Internal Server Error
        message: The server encountered an unexpected error. Please try again later.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: O token de autorização no formato 'Bearer <token>'.

````