如果您不是只用 HTML 表单来在 Ragic 创建数据,则需要通过 API 请求来创建。写入表单的端点与读表单的端点相同,但您需要发送 POST 请求而不是 GET 请求。
API 支持 JSON 格式,并且推入荐使用此方式运行 HTTP 请求。
要发送 JSON 数据,您需要将 Body 设置更改为源 JSON,如下图所示。
要做的是使用字段的 ID 作为名称,并将要插入的值作为参数值。
请注意,您的用户需要对该表单具有编辑权限才能使用此功能。
curl -F "2000123=Dunder Mifflin" \ -F "2000125=1-267-922-5599" \ -F "2000127=Jeff Kuo" \ -F "api=" \ -H "Authorization:Basic YOUR_API_KEY_GOES_HERE" \ https://www.ragic.com/demo/sales/1
JSON 格式如下所示:
{ "2000123": "Dunder Mifflin", "2000125": "1-267-922-5599", "2000127": "Jeff Kuo", }
如果字段是可以包含多个值的多选字段,您可以使用多个具有相同字段 ID 的参数名。如果字段是日期字段,则其值需要使用以下格式:yyyy/MM/dd 或者带有时间部分 yyyy/MM/dd HH:mm。因此,一个请求的格式会像这样:
curl -F "2000123=Dunder Mifflin" \ -F "2000125=1-267-922-5599" \ -F "2000127=Jeff Kuo" \ -F "1000001=Customer" \ -F "1000001=Reseller" \ -F "2000133=2018/12/25 23:30:00" \ -F "api=" \ -H "Authorization:Basic YOUR_API_KEY_GOES_HERE" \ https://www.ragic.com/demo/sales/1
相应的 JSON 格式如下,方括号内的 1000143 字段 ID 许可在一个语句中包含多个值。
{ "2000123": "Dunder Mifflin", "2000125": "1-267-922-5599", "2000127": "Jim Halpert", "1000001": ["Customer", "Reseller"], "2000133": "2018/12/25 23:30:00" }
如果您想要同时插入数据到子表格中,您需要对子表格中的字段使用略有不同的格式,因为 Ragic 需要一种方法来确定字段值是否属于子表格中的同一笔数据。
如果字段值在同一子表格列中,请将它们与每个其他字段分配相同的负行 ID。这可以是任何负整数。这只是一种确定它们属于同一列的方法。
2000147_-1=Bill 2000148_-1=Manager 2000149_-1=billg@microsoft.com 2000147_-2=Satya 2000148_-2=VP 2000149_-2=satyan@microsoft.com
The whole request would look like this:
curl -F "2000123=Dunder Mifflin" \ -F "2000125=1-267-922-5599" \ -F "2000127=Jeff Kuo" \ -F "1000001=Customer" \ -F "1000001=Reseller" \ -F "2000133=2018/12/25 23:30:00" \ -F "2000147_-1=Bill" \ -F "2000148_-1=Manager" \ -F "2000149_-1=billg@microsoft.com" \ -F "2000147_-2=Satya" \ -F "2000148_-2=VP" \ -F "2000149_-2=satyan@microsoft.com" \ -F 'api=' \ -H "Authorization:Basic YOUR_API_KEY_GOES_HERE" \ https://www.ragic.com/demo/sales/1
相应的 JSON 格式如下:
{ "2000123": "Dunder Mifflin", "2000125": "1-267-922-5599", "2000127": "Jim Halpert", "1000001": ["Customer", "Reseller"], "2000133": "2018/12/25 23:30:00" "_subtable_2000154": { "-1": { "2000147": "Bill", "2000148": "Manager", "2000149": "billg@microsoft.com" }, "-2": { "2000147": "Satya", "2000148": "VP", "2000149": "satyan@microsoft.com" } } }
如果您想填入文件上载字段,请确保请求的编码类型是multipart/form-data。在 HTML 中的等效操作是设置 enctype='multipart/form-data'。
使用多部分请求,您可以将文件放入请求中,并将文件名作为字段值。
1000088=test.jpg