Atualizar contrato
POST /update_contract
Resumo
Este endpoint permite editar dados de um contrato em uma unidade específica.
Descrição
Utilize este endpoint para atualizar um contrato existente no sistema, associado a uma unidade específica.
Requisição
Headers
Content-Type: multipart/form-data
Body da Requisição
O corpo deve ser um objeto JSON com os seguintes parâmetros:
| Parâmetro | Tipo | Obrigatório | Descrição | Exemplo |
|---|---|---|---|---|
access_token | string | Sim | Token de autenticação do usuário. | aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee |
unit_token | string | Sim | Token identificador da unidade. | aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee |
id_token_unit | string | Não | Id de unidade para alterar. | aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee |
id_token_contact | string | Sim | Id do contato associado ao contrato. | aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee |
contract_name | string | Sim | Nome do contrato. | Nome |
validity_start | string | Sim | Inicio da data de vigência. | 2025-01-01 |
validity_end | string | Sim | Fim da data de vigência. | 2025-01-31 |
is_recurring | boolean | Não | Se é recorrente ou não. | false |
recurrency_type | string | Sim | Tipos de recorrencia: unique, monthly, yearly. | unique |
generates_payment | boolean | Não | Se gera pagamento ou não. | false |
auto_extend | boolean | Não | Prorrogar o contrato automaticamente, ele vai continuar gerando pedido de venda e cobrança mesmo após o término da vigência. | false |
id_token_sales_orders | list | Não | Lista de ids de pedidos de vendas associados ao contrato. | [aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee] |
sales_order | string | Não | Pedidos de venda para inserir junto ao contrato. | null |
description | string | Não | Descrição do contrato. | Descrição do contrato. |
Anexos de Arquivos:
files: Arquivos anexados ao contrato(PDF ou imagem).
Pedidos de Vendas (para uma documentaçao mais detalhada ir para Inserir de Pedido de Venda):
sales_order:
"sales_order": {
"id_token": "<id_token>",
"id_token_unit": "<id_token_unit>",
"id_token_stock_item": "<id_token_stock_item>",
"description": "<description>",
"value": "<value>",
"id_token_category": "<id_token_category>",
"estimated_payment_date": "<estimated_payment_date>",
"id_token_project": "<id_token_project>",
"id_token_contact": "<id_token_contact>",
"id_token_bank_account": "<id_token_bank_account>",
"id_token_bank_account_payment": "<id_token_bank_account_payment>",
"quantity": "<quantity>",
"service_id_token": "<service_id_token>",
"service_location": "<service_location>",
"tax_service_gross_amount": "<tax_service_gross_amount>",
"tax_service_deduction_amount": "<tax_service_deduction_amount>",
"tax_service_uncond_discount_amount": "<tax_service_uncond_discount_amount>",
"tax_service_cond_discount_amount": "<tax_service_cond_discount_amount>",
"tax_iss_rate_percent": "<tax_iss_rate_percent>",
"tax_service_base_amount": "<tax_service_base_amount>",
"tax_iss_amount": "<tax_iss_amount>",
"ret_pis_rate_percent": "<ret_pis_rate_percent>",
"ret_inss_rate_percent": "<ret_inss_rate_percent>",
"ret_csll_rate_percent": "<ret_csll_rate_percent>",
"ret_cofins_rate_percent": "<ret_cofins_rate_percent>",
"ret_ir_rate_percent": "<ret_ir_rate_percent>",
"ret_other_rate_percent": "<ret_other_rate_percent>",
"ret_pis_amount": "<ret_pis_amount>",
"ret_inss_amount": "<ret_inss_amount>",
"ret_csll_amount": "<ret_csll_amount>",
"ret_cofins_amount": "<ret_cofins_amount>",
"ret_ir_amount": "<ret_ir_amount>",
"ret_other_amount": "<ret_other_amount>",
"ret_total_amount": "<ret_total_amount>",
"net_receivable_amount": "<net_receivable_amount>",
"payment_type": "<payment_type>",
"installment": "<installment>",
"pix_key": "<pix_key>",
"charge_pix_key": "<charge_pix_key>",
"generate_aasas": "<generate_aasas>",
"generate_with_asaas": "<generate_with_asaas>",
"generate_cora": "<generate_cora>",
"generate_c6": "<generate_c6>",
"generateNFWebhook": "<generateNFWebhook>",
"charge_boleto_name": "<charge_boleto_name>",
"charge_boleto_url": "<charge_boleto_url>",
"observation": "<observation>",
"nf_kind": "<nf_kind>",
"product_id_tokens": "<product_id_tokens>",
"product_qtys": "<product_qtys>",
"freight_mode": "<freight_mode>",
"freight_total": "<freight_total>",
"local_destino": "<local_destino>",
"tipo_documento": "<tipo_documento>",
"finalidade_emissao": "<finalidade_emissao>",
"presenca_comprador": "<presenca_comprador>",
"consumidor_final": "<consumidor_final>",
"notify_days_charge": "<notify_days_charge>",
"recurrence": "<recurrence>",
"in_automation": "<in_automation>",
"conciliation": "<conciliation>",
"observation_sales": "<observation_sales>",
"notify_email_charge": "<notify_email_charge>",
"notify_email_nf": "<notify_email_nf>",
"notify_email_alert": "<notify_email_alert>"
}
Respostas
Abaixo estão algumas respostas que podem ser retornadas dependendo dos parâmetros:
200 Sucesso
{
"success": true,
"message": "Expense inserted successfuly",
"data": {
"id_token": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"id_sales_order": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
}
}
400 Requisição Inválida
{
"success": false,
"message": "Missing parameters",
"data": null
}
403 Acesso Negado
{
"success": false,
"message": "Invalid data",
"data": null
}
500 Erro no Servidor
{
"success": false,
"error": "Internal server error",
"data": null
}
Exemplo de Requisição
curl -s -X POST 'https://portal.fipli.pro/api/v1/update_contract' \
-F 'metadata={
"access_token": "<access_token>",
"unit_token": "<unit_token>",
"id_token_contact": "<id_token_contact>",
"contract_name": "<contract_name>",
"validity_start": "<validity_start>",
"validity_end": "<validity_end>"
};type=application/json' \
-F 'files=@./<filename_1>' \
| jq