Загрузить JSON с Google Drive на смарт-лист через API
Я пытаюсь, чтобы файлы JSON, созданные с помощью программного обеспечения для форм (Prontoforms) и сохраненные на диске Google, автоматически вставляли новые строки на существующем листе в Smartsheet через API. Я новичок в API, поэтому не знаю с чего начать. Может ли кто-нибудь помочь
1 ответ
Сценарий, который вы описали, безусловно, достижим. Вам нужно написать скрипт, который будет читать файлы JSON с Google Диска, а затем использовать API Smartsheet для добавления новых строк в Smartsheet.
Поскольку вы новичок в API, хорошей отправной точкой было бы ознакомиться с API Smartsheet, просмотрев документацию, начиная здесь: http://smartsheet-platform.github.io/api-docs/.
Когда вы будете готовы начать кодирование, вы можете рассмотреть возможность использования Java SDK Smartsheet для реализации этой интеграции с Smartsheet. (SDK предоставляет встроенные функции для взаимодействия с API Smartsheet, так что вам не нужно создавать все с нуля.) Документация API содержит пример кода, который показывает, как использовать Java SDK для выполнения любой операции, включая Добавить Ряд (ы).
Из документации API:
// Set the Access Token
Token token = new Token();
token.setAccessToken("INSERT_YOUR_TOKEN_HERE");
// Use the Smartsheet Builder to create a Smartsheet
Smartsheet smartsheet = new SmartsheetBuilder().setAccessToken(token.getAccessToken()).build();
// Specify cell values for first row.
List<Cell> cellsA = new Cell.AddRowCellsBuilder().addCell(7960873114331012, true).addCell(642523719853956, "New status").build();
// Specify contents of first row.
Row rowA = new Row.AddRowBuilder().setCells(cellsA).setToBottom(true).build();
// Specify cell values for second row.
List<Cell> cellsB = new Cell.AddRowCellsBuilder().addCell(7960873114331012, true).addCell(642523719853956, "New status").build();
// Specify contents of second row.
Row rowB = new Row.AddRowBuilder().setCells(cellsB).setToBottom(true).build();
// Add rows to sheet.
smartsheet.sheetResources().rowResources().addRows(sheetId, Arrays.asList(rowA, rowB));