Método updateRecords
Finalidade
Você pode usar o método updateRecords para atualizar ou modificar os registros no Zoho CRM.
Importante: Use o método POST para passar esses parâmetros em vez do método GET.
URL de solicitação
Formato XML
Para atualizar um só registro em um módulo, em uma única chamada de API:
https://crm.zoho.com/crm/private/xml/Leads/updateRecords?authtoken=Auth Token&scope=crmapi&id=Record ID&xmlData=XML Data
Para atualizar vários registros em um módulo, em uma única chamada de API:
https://crm.zoho.com/crm/private/xml/Leads/updateRecords?authtoken=Auth Token&scope=crmapi&version=4&xmlData=XML Data
Clique em Atualizações de vários registros para visualizar a amostra de xmlData e a resposta da verificação de duplicidade de vários registros.
Parâmetros de solicitação
* – Parâmetro obrigatório
Nota:
- Consulte a página Notas de versão para saber mais sobre as melhorias feitas na implementação API.
Notas adicionais
- Ao atualizar os dados em sua conta do Zoho CRM, a segurança baseada em função (Funções, Perfis, Segurança em nível de campo e Regras de compartilhamento de dados) é aplicada. Portanto, use o ID de usuário com a função e perfil mais alto (Ex.: CEO) (Ex.: Administrador). Também certifique-se de que todos os campos estão habilitados nas configurações de segurança em nível de campo. Para as configurações de segurança baseada em função, consulte Administração de segurança ao gerar o tíquete API.
- Ao atualizar os dados, verifique se data e hora estão nos formatos MM/dd/aaaa e aaaa-MM-dd HH:mm:ss, respectivamente
Atualizar proprietário do registro
Ao atualizar um registro por meio de API, certifique-se de especificar o endereço de e-mail ou a userID do proprietário de registro. Se você usar o nome do proprietário do registro, o registro será atribuído à credencial de login padrão usada no token de autenticação. Se você quiser usar o userID para especificar o proprietário do registro, adicione a tag <FL val="SMOWNERID">userID</FL> ao seu XmlData.
Exemplos
Para atualizar registros no Zoho CRM, siga as etapas abaixo:
- O URL deve ser como indicado a seguir:
https://crm.zoho.com/crm/private/xml/Leads/updateRecords - Os parâmetros devem ser como abaixo:
- authtoken: Auth Token
- scope: Especifique o valor como crmapi.
- xmlData: Esta é uma string XML e o formato deve ser o mesmo de como obter registros no formato XML, na API de busca.
- id: id do registro a ser atualizado
Formato de dados XML:
https://crm.zoho.com/crm/private/xml/Leads/updateRecords?newFormat=1&authtoken=Auth Token&scope=crmapi&xmlData=XMLDATA
- authtoken=xy4gr1554712345fg
- scope=crmapi
- xmlData= conforme mencionado acima
- id = 1000000019001
<Leads>
<row no="1">
<FL val="Lead Source">Web Download</FL>
<FL val="First Name">contacto 1</FL>
<FL val="Last Name">apellido</FL>
<FL val="Email">testing@testing.com</FL>
<FL val="Title">Manager</FL>
<FL val="Phone">1234567890</FL>
<FL val="Home Phone">0987654321</FL>
<FL val="Other Phone">1212211212</FL>
<FL val="Fax">02927272626</FL>
<FL val="Mobile">292827622</FL>
</row>
</Leads>
Tarefas com mapeamento de contato
https://crm.zoho.com/crm/private/xml/Tasks/updateRecords?authtoken=AuthToken&scope=crmapi
&newFormat=1
&id=2000000017022
&xmlData=
<Tasks>
<row no="1">
<FL val="Subject">Meeting Hall</FL>
<FL val="Due Date">2009-04-22</FL>
<FL val="Status">Completed</FL>
<FL val="CONTACTID">2000000017027</FL>
</row>
</Tasks>
Eventos
https://crm.zoho.com/crm/private/xml/Events/updateRecords?authtoken=AuthToken&scope=crmapi
&newFormat=1
&id=2000000017023
&xmlData=
<Events>
<row no="1">
<FL val="Subject">Conference</FL>
<FL val="Start DateTime">2009-08-04 01:00:00</FL>
<FL val="End DateTime">2009-08-05 01:00:00</FL>
<FL val="Venue">Plaza</FL>
<FL val="Send Notification Email">false</FL>
</row>
</Events>
Contatos
https://crm.zoho.com/crm/private/xml/Contacts/updateRecords?authtoken=AuthToken&scope=crmapi
&newFormat=1
&id=2000000017024
&xmlData=
<Contacts>
<row no="1">
<FL val="First Name">Scott</FL>
<FL val="Last Name">James</FL>
<FL val="Email">test@test.com</FL>
<FL val="Department">CG</FL>
<FL val="Phone">989898988</FL>
<FL val="Fax">99999999</FL>
<FL val="Mobile">99989989</FL>
<FL val="Assistant">John</FL>
</row>
</Contacts>
Cotações
Nota:
- Um valor para "Product Id" é obrigatório.
- Você pode especificar o nome do produto se não tiver um ID de produto válido.
https://crm.zoho.com/crm/private/xml/Quotes/updateRecords?authtoken=Auth Token&scope=crmapi
&newFormat=1
&id=2000000017025
&xmlData=<Quotes>
<row no="1">
<FL val="Subject">Zillium - SO</FL>
<FL val="Due Date">2009-03-10</FL>
<FL val="Sub Total">48000.0</FL>
<FL val="Tax">0.0</FL>
<FL val="Adjustment">0.0</FL>
<FL val="Grand Total">48000.0</FL>
<FL val="Billing Street">test</FL>
<FL val="Shipping Street">test</FL>
<FL val="Billing City">test</FL>
<FL val="Shipping City">test</FL>
<FL val="Billing State">test</FL>
<FL val="Shipping State">test</FL>
<FL val="Billing Code">223</FL>
<FL val="Shipping Code">223</FL>
<FL val="Billing Country">test</FL>
<FL val="Shipping Country">test</FL>
<FL val="Product Details">
<product no="1">
<FL val="Product Id">2000000017001</FL>
<FL val="Unit Price">10.0</FL>
<FL val="Quantity">1.0</FL>
<FL val="Total">123.0</FL>
<FL val="Discount">1.23</FL>
<FL val="Total After Discount">121.77</FL>
<FL val="List Price">123.0</FL>
<FL val="Net Total">121.77</FL>
</product>
</FL>
<FL val="Terms and Conditions">Test by Zoho</FL>
<FL val="Description">Test By Zoho</FL>
</row>
</Quotes>
Ordens de venda
Nota:
- Um valor para "Product Id" é obrigatório.
- Você pode especificar o nome do produto se não tiver um ID de produto válido.
https://crm.zoho.com/crm/private/xml/SalesOrders/updateRecords?authtoken=Auth Token&scope=crmapi
&newFormat=1
&id=2000000017026
&xmlData=<SalesOrders>
<row no="1">
<FL val="Subject">Zillium - SO</FL>
<FL val="Due Date">2009-03-10</FL>
<FL val="Sub Total">48000.0</FL>
<FL val="Tax">0.0</FL>
<FL val="Adjustment">0.0</FL>
<FL val="Grand Total">48000.0</FL>
<FL val="Billing Street">test</FL>
<FL val="Shipping Street">test</FL>
<FL val="Billing City">test</FL>
<FL val="Shipping City">test</FL>
<FL val="Billing State">test</FL>
<FL val="Shipping State">test</FL>
<FL val="Billing Code">223</FL>
<FL val="Shipping Code">223</FL>
<FL val="Billing Country">test</FL>
<FL val="Shipping Country">test</FL>
<FL val="Product Details">
<product no="1">
<FL val="Product Id">2000000017001</FL>
<FL val="Unit Price">10.0</FL>
<FL val="Quantity">1.0</FL>
<FL val="Total">123.0</FL>
<FL val="Discount">1.23</FL>
<FL val="Total After Discount">121.77</FL>
<FL val="List Price">123.0</FL>
<FL val="Net Total">121.77</FL>
</product>
</FL>
<FL val="Terms and Conditions">Test by Zoho</FL>
<FL val="Description">Test By Zoho</FL>
</row>
</SalesOrders>
Produtos
https://crm.zoho.com/crm/private/xml/Products/updateRecords?authtoken=491e5e3374b0132324lqs2f1scb18cd0&
newFormat=1&scope=crmapi&id=508020000000366001&xmlData=
<Products>
<row no="1">
<FL val="Product Owner">manishp@zillum.com</FL>
<FL val="Product Name">Product Test</FL>
<FL val="Product Code">098732</FL>
<FL val="VENDORID">508020000000038476</FL>
<FL val="Product Active">true</FL>
<FL val="Manufacturer">AltvetPet Inc.</FL>
<FL val="Product Category">CRM App</FL>
<FL val="Sales Start Date">11/09/2012</FL>
<FL val="Sales End Date">11/11/2012</FL>
<FL val="Support Start Date">11/16/2012</FL>
<FL val="Support Expiry Date">11/18/2012</FL>
<FL val="Amount">100</FL>
<FL val="Probability">2</FL>
<FL val="Expected Revenue">200</FL>
<FL val="Unit Price">200</FL>
<FL val="Commission Rate">2</FL>
<FL val="Tax">Sales Tax;asdf</FL>
<FL val="Taxable">true</FL>
<FL val="Usage Unit">Dozen</FL>
<FL val="Qty Ordered">500000</FL>
<FL val="Qty in Stock">200000</FL>
<FL val="Reorder Level">10000</FL>
<FL val="Qty in Demand">10</FL>
<FL val="Handler">508020000000210005</FL>
<FL val="Description">Description Added for the product</FL>
</row>
</Products>
Nota:
- O valor para o Handler deve ser SMOWNERID.
Programa de teste
Você pode usar o programa anexo para executar e testar o funcionamento do método updateRecords em seu ambiente Java.
O programa Java contém o seguinte:
- O formato de geração de token
- Os parâmetros e seus valores
- Uso real do método
Clique aqui para fazer download do programa.
Uso de "CDATA'
Finalidade: para considerar caracteres especiais como texto sem formatação e NÃO dados XML
Formato do URL:
https://crm.zoho.com/crm/private/xml/Contacts/updateRecords?newFormat=1&authtoken=Auth Token&scope=crmapi&id=50000000216189251
Amostra de dados XML:
Como POST:
<Contacts>
<row no="1">
<FL val="First Name">Amy</FL>
<FL val="Last Name">Dawson</FL>
<FL val="Email">testing@testing.com</FL>
<FL val="Title">Manager</FL>
<FL val="Phone">1234567890</FL>
<FL val="Mobile">292827622</FL>
<FL val="Account Name"><![CDATA["A & A"]]></FL>
</row>
</Contacts>
Como GET:
<Contacts>
<row no="1">
<FL val="First Name">Amy</FL>
<FL val="Last Name">Dawson</FL>
<FL val="Email">testing@testing.com</FL>
<FL val="Title">Manager</FL>
<FL val="Phone">1234567890</FL>
<FL val="Mobile">292827622</FL>
<FL val="Account Name"><![CDATA["A %26 A"]]></FL>
</row>
</Contacts>
Nota:
- "%26" será considerado como "&"
Atualizações de vários registros
Finalidade
Você pode usar updateRecords para atualizar vários registros em um único método API updateRecords. Observe que version=4 é um parâmetro obrigatório.
Introduzimos um novo código, que representa o status do resultado da API para cada registro. O código é fornecido abaixo:
2001 = Registro atualizado com sucesso
Formato do URL:
https://crm.zoho.com/crm/private/xml/Leads/updateRecords?authtoken=Auth Token&scope=crmapi&version=4&xmlData=
Amostra de dados XML
<Leads>
<row no="1">
<FL val="Id">2000000178701</FL>
<FL val="Company">Company1</FL>
<FL val="Last Name">Last Name1</FL>
<FL val="Email">automation@crm.com 1</FL>
</row>
<row no="2">
<FL val="Id">2000000178702</FL>
<FL val="Company">Company2</FL>
<FL val="Last Name">Last Name2</FL>
<FL val="Email">automation@crm.com 2</FL>
</row>
</Leads>
Amostra de resposta
A funcionalidade e a resposta são fornecidos conforme abaixo,
<response uri="/crm/private/xml/Leads/insertRecords">
<result>
<row no="1">
<success>
<code>2001</code>
<details>
<FL val="Id">2000000178701</FL>
<FL val="Created Time">2013-02-11 17:55:04</FL>
<FL val="Modified Time">2013-02-11 17:55:04</FL>
<FL val="Created By">
<![CDATA[ aghil123 ]]>
</FL>
<FL val="Modified By">
<![CDATA[ aghil123 ]]>
</FL>
</details>
</success>
</row>
<row no="2">
<success>
<code>2001</code>
<details>
<FL val="Id">2000000178702</FL>
<FL val="Created Time">2013-02-11 17:55:04</FL>
<FL val="Modified Time">2013-02-11 17:55:04</FL>
<FL val="Created By">
<![CDATA[ aghil123 ]]>
</FL>
<FL val="Modified By">
<![CDATA[ aghil123 ]]>
</FL>
</details>
</success>
</row>
</result>
</response>
Se version=4, alguns registros contêm erros e alguns não, a funcionalidade e a resposta serão fornecidos conforme abaixo:
<response uri="/crm/private/xml/Leads/insertRecords">
<result>
<row no="1">
<success>
<code>2001</code>
<details>
<FL val="Id">2000000178701</FL>
<FL val="Created Time">2013-02-11 17:55:04</FL>
<FL val="Modified Time">2013-02-11 17:55:04</FL>
<FL val="Created By">
<![CDATA[ aghil123 ]]>
</FL>
<FL val="Modified By">
<![CDATA[ aghil123 ]]>
</FL>
</details>
</success>
</row>
<row no="2">
<error>
<code>4832</code>
<details>You have given a wrong value for the field : Annual Revenue</details>
</error>
</row>
</result>
</response>
Nota:
- Se você estiver usando version=4, precisará fornecer o Id no xmlData.
- Os desenvolvedores agora podem identificar facilmente o id de registro, pois o detalhe do registro na resposta é fornecido da mesma forma que as solicitações de usuário nos dados xml.
- Se você não passar a versão, a funcionalidade padrão será executada.
- Você atualiza um máximo de 100 registros em uma única chamada API.