PUT | Atualizar agente do Network Connector

Prev Next

Descrição

Substitua os dados editáveis de um agente ativo do Network Connector. O nome é o único campo editável, então este endpoint renomeia o agente.

Renomear não altera o id, a porta nem o fingerprint do agente. Para alterar apenas alguns campos, use PATCH | Atualizar agente do Network Connector.


Pré-requisitos


Requisição

PUT /api/v2/platform/network-connector/agents/{agent_id}

Parâmetros de caminho

Campo Tipo Obrigatório Descrição
agent_id integer Sim Código de identificação único do agente. Aceita apenas dígitos. Para encontrá-lo, acesse GET | Listar todos os agentes do Network Connector.

Cabeçalhos

Cabeçalho Obrigatório Valor
Content-Type Sim application/json
If-Match Sim Valor de ETag do estado atual do agente.

Para obter o ETag atual, consulte o agente com GET | Listar um agente do Network Connector por [id] e copie o cabeçalho ETag da resposta.

Corpo da requisição

Campo Tipo Obrigatório Descrição
name string Sim Novo nome do agente. Os espaços no início e no fim são removidos. Máximo: 255 caracteres. Precisa ser único entre os agentes do Network Connector, incluindo os desativados. O nome atual do agente é aceito.

Envie apenas name. Enviar id, port, active ou fingerprint retorna 422.


Exemplo de requisição

PUT {{url}}/api/v2/platform/network-connector/agents/12

If-Match: "9b2f6c0d4e8a1f3b7c5d2e9a0b4c6d8e"
{
    "name": "agent-rj-branch"
}

Resposta

HTTP/1.1 200 OK

A resposta inclui o cabeçalho ETag com o novo estado do agente. Use-o na próxima atualização.

Exemplo de corpo da resposta

{
    "data": {
        "id": "12",
        "network_connector_agent": {
            "name": "agent-rj-branch",
            "port": "30003",
            "active": true,
            "fingerprint": "EXAMPLE-FINGERPRINT-0003"
        }
    },
    "meta": {
        "links": {
            "self": "/api/v2/platform/network-connector/agents/12"
        }
    }
}

Campos do corpo da resposta

Campo Tipo Descrição
data object O agente atualizado.
data.id string Código de identificação único do agente, retornado como string.
data.network_connector_agent object Atributos do agente.
data.network_connector_agent.name string Novo nome do agente.
data.network_connector_agent.port string Porta do agente, retornada como string. Não muda.
data.network_connector_agent.active boolean Sempre true, porque apenas agentes ativos podem ser atualizados.
data.network_connector_agent.fingerprint string Valor usado para instalar o agente. Não muda. Guarde-o com segurança e compartilhe-o apenas com quem vai instalar o agente. Pode ser null.
meta object Links de navegação.
meta.links.self string Caminho do agente.

Erros

Código HTTP Mensagem Causa possível Solução
400 api.request.bad_request O corpo não é um JSON válido. Confira a sintaxe do payload.
403 api.auth.insufficient_permission A Permissão do recurso PAM da aplicação é Apenas leitura. Peça ao administrador para definir a Permissão do recurso PAM como Leitura e escrita no A2A.
404 api.resource.not_found O agente não existe. Verifique o código de identificação enviado no caminho.
404 api.route.not_found O valor de agent_id não é formado apenas por dígitos. Envie o código de identificação do agente usando apenas dígitos.
409 api.resource.inactive O agente está desativado. Ative o agente com POST | Ativar agente do Network Connector e reenvie a requisição.
412 api.precondition.failed O valor de If-Match não corresponde ao estado atual do agente. O agente mudou depois que você o consultou. Consulte o agente de novo e reenvie a requisição com o novo ETag.
415 api.request.unsupported_media_type O cabeçalho Content-Type não é application/json. Envie Content-Type: application/json.
422 api.validation.required_field name está ausente, vazio ou contém apenas espaços. Envie um nome para o agente.
422 api.validation.invalid_type name não é uma string. Envie name como string.
422 api.validation.invalid_value name tem mais de 255 caracteres. Envie um nome com até 255 caracteres.
422 api.validation.duplicate Outro agente, ativo ou desativado, já usa o nome. Escolha outro nome.
422 patch.field.not_allowed O corpo contém id, port, active ou fingerprint. Envie apenas name.
422 api.validation.unknown_field O corpo contém um campo que não faz parte do contrato. Envie apenas name.
428 api.precondition.required A requisição não tem o cabeçalho If-Match. Envie o ETag atual do agente no cabeçalho If-Match.

Para erros de autenticação, limites de requisição e o formato da resposta de erro, acesse API v2 - Convenções e comportamentos compartilhados.

Exemplo de resposta de erro

412 o agente mudou depois que você o consultou:

{
    "code": "api.precondition.failed",
    "message": "Precondition failed.",
    "details": null
}

Documentos relacionados