@RestControllerclass NotesController { @Value("\${tiro.api.key}") private lateinit var apiKey: String private val restTemplate = RestTemplate() @GetMapping("/my-notes") fun getMyNotes(): ResponseEntity<Map<String, Any>> { val headers = HttpHeaders() headers.set("Authorization", "Bearer $apiKey") headers.contentType = MediaType.APPLICATION_JSON val entity = HttpEntity<String>(headers) val response = restTemplate.exchange( "https://api.tiro.ooo/v1/external/notes", HttpMethod.GET, entity, object : ParameterizedTypeReference<Map<String, Any>>() {} ) val data = response.body!! println("Found ${(data["content"] as List<*>).size} notes") return ResponseEntity.ok(data) }}
Tiroはノートのページ分割されたリストを返します。各オブジェクトには、タイトル、作成日、処理ステータス、そしてトランスクリプト、サマリー、ドキュメントの取得に使用するguidが含まれます。リストを取得できたら、Note Data Modelを読んで、各guidで何ができるか(トランスクリプト、サマリー、ドキュメント、フォルダ)を理解しましょう。