Pular para o conteúdo
Referência de API
Referência de API

Atualizar um guardrail

Substitua os campos de guardrail fornecidos, mantendo os campos omitidos inalterados.

Substitua os campos de guardrail fornecidos, mantendo os campos omitidos inalterados.

Endpoint

PATCH /api/v1/guardrails/:id
URL base
https://runapi.ai
Versão da API
v1
Autenticação
Authorization: Bearer YOUR_MANAGEMENT_API_KEY
Autorização
Requer uma chave de API de gerenciamento de administrador de conta.
02

Solicitação

Corpo JSON

Envie valores apenas no local de requisição listado.

Corpo JSON10 campos
allowed_modelsarray | null
Opcional

Lista de permissões de modelos substituta.

allowed_providersarray | null
Opcional

Lista de permissões de nomes de provedores substituta.

blocked_modelsarray | null
Opcional

Lista de bloqueio de modelos substituta.

blocked_providersarray | null
Opcional

Lista de bloqueio de nomes de provedores substituta.

credit_limit_centsinteger | null
Opcional

Limite total de gastos em centavos de USD.

credit_limit_reset_intervalstring | null
Opcional

Cadência de redefinição para o limite total de gastos.

Valores permitidos: daily, weekly, monthly
descriptionstring
Opcional

Descrição de forma livre substituta.

enabledboolean
Opcional

Se o guardrail é aplicado.

model_budgetsarray | null
Opcional

Regras de orçamento por modelo substitutas.

namestring
Opcional

Nome de guardrail substituto.

Parâmetros de caminho1 campo
idstring
Obrigatório

ID de prefixo do guardrail, por exemplo guardrail_abc123.

03

Resposta de sucesso

HTTP 200

PATCH /api/v1/guardrails/:id

JSON
{
  "allowed_models": [
    "gpt-5.4"
  ],
  "allowed_providers": [],
  "assignment_count": 1,
  "blocked_models": [],
  "blocked_providers": [],
  "created_at": "2026-07-27T10:00:00.000Z",
  "credit_limit_cents": 50000,
  "credit_limit_reset_interval": "monthly",
  "description": "Production policy",
  "enabled": false,
  "id": "guardrail_123",
  "model_budgets": [
    {
      "credit_limit_cents": 10000,
      "credit_limit_reset_interval": "monthly",
      "match_mode": "include",
      "models": [
        "gpt-5.4"
      ]
    }
  ],
  "name": "Production budget"
}
04

Resposta de erro (401)

HTTP 401
Esquema de resposta
JSON
{
  "properties": {
    "error": {
      "description": "Mensagem de erro legível por humanos.",
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "type": "object",
  "unevaluatedProperties": false
}

Exemplo de resposta

JSON
{
  "error": "Authentication required"
}
05

Resposta de erro (403)

HTTP 403
Esquema de resposta
JSON
{
  "properties": {
    "error": {
      "description": "Mensagem de erro legível por humanos.",
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "type": "object",
  "unevaluatedProperties": false
}

Exemplo de resposta

JSON
{
  "error": "Management API key required"
}
06

Resposta de erro (403)

HTTP 403
Esquema de resposta
JSON
{
  "properties": {
    "error": {
      "description": "Mensagem de erro legível por humanos.",
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "type": "object",
  "unevaluatedProperties": false
}

Exemplo de resposta

JSON
{
  "error": "Account admin required"
}
07

Resposta de erro (400)

HTTP 400
Esquema de resposta
JSON
{
  "oneOf": [
    {
      "properties": {
        "error": {
          "description": "Mensagem de erro legível por humanos.",
          "type": "string"
        }
      },
      "required": [
        "error"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    {
      "properties": {
        "error": {
          "description": "Resumo de validação legível por humanos.",
          "type": "string"
        },
        "errors": {
          "additionalProperties": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": "Mensagens de validação com chaves por campo de requisição público, com um array de strings legíveis por humanos para cada campo.",
          "type": "object"
        }
      },
      "required": [
        "error",
        "errors"
      ],
      "type": "object",
      "unevaluatedProperties": false
    }
  ]
}

Exemplo de resposta

JSON
{
  "error": "page must be an integer"
}
08

Resposta de erro (404)

HTTP 404
Esquema de resposta
JSON
{
  "properties": {
    "error": {
      "description": "Mensagem de erro legível por humanos.",
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "type": "object",
  "unevaluatedProperties": false
}

Exemplo de resposta

JSON
{
  "error": "Resource not found"
}
09

Resposta de erro (422)

HTTP 422
Esquema de resposta
JSON
{
  "properties": {
    "error": {
      "description": "Resumo de validação legível por humanos.",
      "type": "string"
    },
    "errors": {
      "additionalProperties": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "description": "Mensagens de validação com chaves por campo de requisição público, com um array de strings legíveis por humanos para cada campo.",
      "type": "object"
    }
  },
  "required": [
    "error",
    "errors"
  ],
  "type": "object",
  "unevaluatedProperties": false
}

Exemplo de resposta

JSON
{
  "error": "Validation failed",
  "errors": {
    "base": [
      "Validation failed"
    ]
  }
}
10

Exemplo de cURL

CURL
curl -X PATCH https://runapi.ai/api/v1/guardrails/guardrail_123 \
  -H 'Authorization: Bearer YOUR_MANAGEMENT_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"enabled":false}'