如果您不是只用 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