# Modificar dados do formulário de solicitações

## Como copiar valores de campos de formulário entre instâncias utilizando as API's do Zeev?

Para copiar valores de campos de formulário entre instâncias utilizando as API's do Zeev, siga os passos abaixo:

1. **Autenticação**: Primeiro obtenha um [token de autenticação](https://kb.zeev.it/apis/como-gerar-tokens-para-autenticar-nas-apis) com permissão de realizar essa operação;
2. **Obtenha o Id dados da instância de origem**:  O Id é o código único da solicitação, você pode encontrar ele  buscando em monitorar -> solicitações, ou   utilizando o endpoint de API do Zeev para consultar instâncias através de filtros conforme descrito em [Listar todas as solicitações do sistema](/zeev/apis/all/instances/report.md).
3. **Prepare os dados para a instância de destino**: Como no passo anterior, encontre o Id da instância para qual você deseja copiar os dados.
4. **Atualize a instância de destino**: Use o endpoint [#api-2-formvalues-frominstanceid-copy-to-toinstanceid](#api-2-formvalues-frominstanceid-copy-to-toinstanceid "mention") para atualizar os campos da instância de destino substituindo os parâmetros pelos dados obtidos nas consultas dos passos 2 e 3 (troque seu\_endereco.do.zeev pelo endereço que você usa para acessar o Zeev).

{% hint style="warning" %}
Apenas campos comuns (simples) podem ser modificados por meio dessa requisição.

Os campos de tipos específicos, como campos de arquivo, **não podem ser modificados ou manipulados** por meio desse *endpoint*.
{% endhint %}

{% openapi src="/files/DYIxvabeLXa2mL6uE2si" path="/api/2/formvalues/{frominstanceid}/copy-to/{toinstanceid}" method="patch" %}
[ZeevApi's\_new.json](https://3371003943-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MD66pBdRalAQgnhNstG%2Fuploads%2Ff5huLIsAqm88oSjkTavv%2FZeevApi's_new.json?alt=media\&token=aae47f9f-90ca-48d0-b250-fc38fe74e6c0)
{% endopenapi %}

Exemplos de requisição

{% tabs %}
{% tab title="Node.js" %}

```javascript
let fromInstanceId = 1234; //Id da solicitação de origem obtido por outra chamada de API ou informado manualmente
let toInstanceId = 4321; //Id da solicitação de destino obtido por outra chamada de API ou informado manualmente

const myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "TOKEN_DO_USUARIO");


const raw = "";

const requestOptions = {
  method: "PATCH",
  headers: myHeaders,
  body: raw
};

try {
  const response = await fetch(`https://seu_endereco.do.zeev/api/2/formvalues/${fromInstanceId}/copy-to/${toInstanceId}`, requestOptions);
  const result = await response.json();
  console.log(result)
} catch (error) {
  console.error(error);
};
```

{% endtab %}
{% endtabs %}

***

## Como modificar valores os dados de campos de uma instância utilizando as API's do Zeev?

Para modificar valores de campos de uma instância utilizando as API's do Zeev, siga os passos abaixo:

1. **Autenticação**: Primeiro obtenha um [token de autenticação](https://kb.zeev.it/apis/como-gerar-tokens-para-autenticar-nas-apis) com permissão de realizar essa operação;
2. O Id é o código único da solicitação, você pode encontrar ele  buscando em monitorar -> solicitações, ou   utilizando o endpoint de API do Zeev para consultar instâncias através de filtros conforme descrito em [Listar todas as solicitações do sistema](/zeev/apis/all/instances/report.md).
3. **Prepare os dados a serem atualizados**: Identifique os campos e os novos valores que serão atribuídos na instância selecionada.
4. **Atualize os campos da instância**: Utilize o endpoint [#api-2-formvalues-instanceid](#api-2-formvalues-instanceid "mention") para alterar os valores dos campos, enviando a requisição com os novos dados e o Id da instância alvo, confira abaixo os detalhes e modelos de requisição  (troque seu\_endereco.do.zeev pelo endereço que você usa para acessar o Zeev).

{% openapi src="/files/DYIxvabeLXa2mL6uE2si" path="/api/2/formvalues/{instanceid}" method="patch" %}
[ZeevApi's\_new.json](https://3371003943-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MD66pBdRalAQgnhNstG%2Fuploads%2Ff5huLIsAqm88oSjkTavv%2FZeevApi's_new.json?alt=media\&token=aae47f9f-90ca-48d0-b250-fc38fe74e6c0)
{% endopenapi %}

Exemplos de requisição

{% tabs %}
{% tab title="Node.js" %}

```javascript
//Id da instancia em que os dados serão atualizados obtido através de API ou informado manualmente
let instanceId = 1234; 

const myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer TOKEN_DO_USUARIO");

const raw = JSON.stringify({
  "formValues": [
    {
      "name": "razaoSocial",
      "value": "SML",
      "row": 1
    },
    {
      "name": "cidade",
      "value": "São Paulo",
      "row": 1
    }
  ],
  "updateClosedInstance": false
});

const requestOptions = {
  method: "PATCH",
  headers: myHeaders,
  body: raw
};

try {
  const response = await fetch(`https://seu_endereco.do.zeev/api/2/formvalues/${instanceId}`, requestOptions);
  const result = await response.json();
  console.log(result)
} catch (error) {
  console.error(error);
};
```

{% endtab %}
{% endtabs %}

## Como apagar o histórico de campos de uma instância utilizando as API's do Zeev?

Para apagar o histórico de campos de uma instância utilizando as API's do Zeev, siga os passos abaixo: <br>

1. Autenticação: Primeiro obtenha um [token de autenticação](https://kb.zeev.it/apis/como-gerar-tokens-para-autenticar-nas-apis) com permissão de realizar essa operação;
2. **Obtenha o Id dados da instância de origem**: O ID é o código único da solicitação, você pode encontrar ele buscando em monitorar -> solicitações, ou utilizando o endpoint de API do Zeev para consultar instâncias através de filtros conforme descrito em  [Listar todas as solicitações do sistema](/zeev/apis/all/instances/report.md).
3. **Prepare os dados a serem atualizados:** Identifique os campos que terão o histórico apagado na instância selecionada.
4. **Apague o histórico dos campos da instância:** Utilize o endpoint PATCH /api/2/formvalues/{instanceid} /history/clear para apagar o histórico dos campos, enviando a requisição com a lista de nomes de campos da instância alvo, confira abaixo os detalhes e modelos de requisição (troque seu\_endereco.do.zeev pelo endereço que você usa para acessar o Zeev).

## Apaga o histórico do preenchimento dos campos do formulário em todas as tarefas concluídas, se o campo estiver em tabela todas as linhas serão apagadas (Auth)

> \[<https://kb.zeev.it/apis/all/instances/form-fields]\\(https://kb.zeev.it/apis/all/instances/form-fields)>

```json
{"openapi":"3.1.1","info":{"title":"API RESTFul versão 2.0 ","version":"2"},"servers":[{"url":"https://candidate-zeev.zeev.app"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","description":"Utilize um token válido de usuário para realizar a requisição","name":"Authorization","in":"header"}},"schemas":{"Orquestra.Models.Workflow.ApiModels.External._20.FormValues.UpdateFormValuesModelResult":{"type":"object","properties":{"success":{"description":"Indica se houve sucesso na operação","type":"boolean","readOnly":true}}},"Orquestra.Models.Base.ApiModels.Suport.ErrorResponse":{"type":"object","properties":{"error":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.Error"}}},"Orquestra.Models.Base.ApiModels.Suport.Error":{"type":"object","properties":{"code":{"type":"string"},"key":{"type":"string"},"message":{"type":"string"},"vars":{"type":"array","items":{"type":"string"}},"details":{"type":"array","items":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.Error"}}}},"Orquestra.Models.Workflow.ApiModels.External._20.FormValues.ClearFormHistoryValuesModel":{"required":["fieldList","deleteEvenIfThereIsASignature"],"type":"object","properties":{"fieldList":{"description":"Lista de campos","type":"array","items":{"type":"string"}},"deleteEvenIfThereIsASignature":{"description":"Apagar histórico mesmo que haja assinatura eletrônica na instância.","type":"boolean"}}}}},"paths":{"/api/2/formvalues/{instanceid}/history/clear":{"patch":{"tags":["FormValues / Valores de campos do formulário"],"summary":"Apaga o histórico do preenchimento dos campos do formulário em todas as tarefas concluídas, se o campo estiver em tabela todas as linhas serão apagadas (Auth)","description":"[https://kb.zeev.it/apis/all/instances/form-fields](https://kb.zeev.it/apis/all/instances/form-fields)","operationId":"FormValues_ClearInstanceFormValuesHistory","parameters":[{"schema":{"type":"integer","format":"int32"},"name":"instanceId","in":"path","description":"Código identificador da instância da solicitação","required":true}],"responses":{"200":{"description":"Sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Workflow.ApiModels.External._20.FormValues.UpdateFormValuesModelResult"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Workflow.ApiModels.External._20.FormValues.UpdateFormValuesModelResult"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Workflow.ApiModels.External._20.FormValues.UpdateFormValuesModelResult"}}}},"400":{"description":"Solicitação ou dados da solicitação são inválidas","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}},"401":{"description":"Pessoa não autorizada","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}},"403":{"description":"Pessoa não tem permissão de executar essa operação","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}},"404":{"description":"O registro não foi encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}},"429":{"description":"Muitas requisições em um determinado período de tempo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}},"500":{"description":"Ocorreu algum erro interno no servidor","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}},"text/xml":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Base.ApiModels.Suport.ErrorResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Orquestra.Models.Workflow.ApiModels.External._20.FormValues.ClearFormHistoryValuesModel"}}},"description":"Nomes dos campos do formulário","required":true}}}}}
```

***

## Links relacionados:

* [O que é preciso para fazer integrações do Zeev para outros sistemas?](/zeev/integracoes/o-que-e-preciso-para-fazer-integracoes.md)
* [Como autenticar nas APIs do Zeev](/zeev/apis/como-utilizar-as-apis-do-zeev/como-gerar-tokens-para-autenticar-nas-apis.md)
* [Como controlar o volume máximo de requisições à APIs](/zeev/apis/como-utilizar-as-apis-do-zeev/como-controlar-o-volume-maximo-de-requisicoes-a-apis.md)
* [Como acessar o Swagger / OpenAPI](/zeev/apis/como-utilizar-as-apis-do-zeev/como-acessar-o-swagger-openapi.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kb.stoque.com.br/zeev/apis/all/instances/form-fields.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
