Pular para o conteúdo principal

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âmetroTipoObrigatórioDescriçãoExemplo
access_tokenstringSimToken de autenticação do usuário.aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
unit_tokenstringSimToken identificador da unidade.aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
id_token_unitstringNãoId de unidade para alterar.aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
id_token_contactstringSimId do contato associado ao contrato.aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
contract_namestringSimNome do contrato.Nome
validity_startstringSimInicio da data de vigência.2025-01-01
validity_endstringSimFim da data de vigência.2025-01-31
is_recurringbooleanNãoSe é recorrente ou não.false
recurrency_typestringSimTipos de recorrencia: unique, monthly, yearly.unique
generates_paymentbooleanNãoSe gera pagamento ou não.false
auto_extendbooleanNãoProrrogar 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_orderslistNãoLista de ids de pedidos de vendas associados ao contrato.[aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee]
sales_orderstringNãoPedidos de venda para inserir junto ao contrato.null
descriptionstringNãoDescriçã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