Este endpoint permite atualizar um alerta de gastos existente, modificando categoria, valor, período ou status de ativação.
Descrição
O endpoint PUT /tools/api/update-spending-limit permite modificar os parâmetros de um alerta de gastos existente. Você pode atualizar um ou mais campos de cada vez.
Autenticação
Este endpoint requer autenticação via Bearer token.
Bearer token com a API key do usuário. Formato: Bearer sk-your-api-key-here
Parâmetros de Query
Parâmetro interno para indicar requisições via MCP. Use s=s para requisições MCP.
Body Parameters
ID do alerta a ser atualizado
Nova categoria a ser monitorada
Novo valor limite em BRL. Deve ser um número positivo.
Novo período do alerta. Valores válidos: daily, weekly, biweekly, monthly
Define se o alerta está ativo ou não
Resposta
Sucesso (200)
{
"success" : true ,
"data" : {
"id" : "limit_123456789" ,
"userId" : "user_abc123" ,
"category" : "Alimentação" ,
"limitAmount" : 1200.00 ,
"period" : "monthly" ,
"isActive" : true ,
"isRecurring" : false ,
"periodStart" : null ,
"createdAt" : "2024-10-15T10:30:00Z" ,
"updatedAt" : "2024-11-04T15:30:00Z"
},
"message" : "Spending limit updated successfully" ,
"timestamp" : "2024-11-04T15:30:00Z"
}
Erro de Validação (400)
Error - Missing limitId
Error - No Updates
Error - Invalid Category
Error - Invalid Amount
Error - Invalid Period
Error - Invalid isActive
{
"error" : "Invalid or missing limitId" ,
"message" : "limitId must be a non-empty string"
}
Erro de Autenticação (401)
{
"error" : "Invalid or inactive API key" ,
"message" : "Please check your API key and try again" ,
"type" : "invalid_api_key"
}
Erro - Alerta Não Encontrado (404)
{
"error" : "Spending limit not found" ,
"message" : "No spending limit found with ID: limit_123456789"
}
Erro de Permissão (403)
{
"error" : "Access denied" ,
"message" : "You can only update your own spending limits"
}
Campos da Resposta
Indica se a requisição foi bem-sucedida
Objeto com os dados atualizados do alerta Show Updated Spending Limit Object
Identificador único do alerta
ID do usuário proprietário do alerta
Categoria de gasto monitorada (atualizada)
Valor limite configurado em BRL (atualizado)
Período do alerta (atualizado)
Se o alerta está ativo (atualizado)
Se o alerta se renova automaticamente
Data de início do período
Data de criação original do alerta (ISO 8601)
Data da atualização (ISO 8601)
Mensagem de confirmação da atualização
Timestamp da requisição em formato ISO 8601
Exemplos de Uso
cURL
# Atualizar apenas o valor limite
curl -X PUT 'https://www.pierre.finance/tools/api/update-spending-limit' \
-H 'Authorization: Bearer sk-your-api-key-here' \
-H 'Content-Type: application/json' \
-d '{
"limitId": "limit_123456789",
"limitAmount": 1200
}'
# Atualizar categoria e período
curl -X PUT 'https://www.pierre.finance/tools/api/update-spending-limit' \
-H 'Authorization: Bearer sk-your-api-key-here' \
-H 'Content-Type: application/json' \
-d '{
"limitId": "limit_123456789",
"category": "Compras Online",
"period": "weekly"
}'
# Desativar um alerta
curl -X PUT 'https://www.pierre.finance/tools/api/update-spending-limit' \
-H 'Authorization: Bearer sk-your-api-key-here' \
-H 'Content-Type: application/json' \
-d '{
"limitId": "limit_123456789",
"isActive": false
}'
JavaScript
const API_KEY = 'sk-your-api-key-here' ;
const BASE_URL = 'https://www.pierre.finance/tools/api' ;
async function updateSpendingLimit ( limitId , updates ) {
const response = await fetch ( ` ${ BASE_URL } /update-spending-limit` , {
method: 'PUT' ,
headers: {
'Authorization' : `Bearer ${ API_KEY } ` ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ({ limitId , ... updates })
});
return await response . json ();
}
// Exemplos de uso
updateSpendingLimit ( 'limit_123' , { limitAmount: 1200 });
updateSpendingLimit ( 'limit_123' , { category: 'Compras Online' , period: 'weekly' });
updateSpendingLimit ( 'limit_123' , { isActive: false });
Python
import requests
API_KEY = 'sk-your-api-key-here'
BASE_URL = 'https://www.pierre.finance/tools/api'
headers = {
'Authorization' : f 'Bearer { API_KEY } ' ,
'Content-Type' : 'application/json'
}
def update_spending_limit ( limit_id , ** updates ):
data = { 'limitId' : limit_id, ** updates}
response = requests.put( f ' { BASE_URL } /update-spending-limit' ,
headers = headers, json = data)
return response.json()
# Exemplos de uso
update_spending_limit( 'limit_123' , limitAmount = 1200 )
update_spending_limit( 'limit_123' , category = 'Compras Online' , period = 'weekly' )
update_spending_limit( 'limit_123' , isActive = False )
Códigos de Status
200: Sucesso - Alerta atualizado
400: Parâmetros inválidos ou nenhum campo para atualizar
401: Erro de autenticação
403: Acesso negado - alerta pertence a outro usuário
404: Alerta não encontrado
500: Erro interno do servidor
Atualização Parcial
Este endpoint suporta atualização parcial - você pode enviar apenas os campos que deseja modificar. Os campos não incluídos no body permanecerão inalterados.
Ao atualizar um alerta, o campo updatedAt é automaticamente atualizado com o timestamp da modificação.
Você só pode atualizar alertas que pertencem ao seu usuário. Tentar atualizar alertas de outros usuários resultará em erro 403 (Access denied).
Use isActive: false para pausar temporariamente um alerta sem deletá-lo. Isso é útil se você quiser reativá-lo depois.
API key in Bearer token format. Example: Bearer sk-your-api-key-here
Limite de gastos atualizado com sucesso
Example: "Spending limit updated successfully"