見出し画像

Doorkeeper APIを使うサンプルプログラムをChatGPT Code Interpreterで作成する方法

前回はconnpass APIのサンプルプログラムを作りました。以下です。

今回は、Doorkeeper APIを使うサンプルプログラムをChatGPT Code Interpreterに助けてもらって作る方法です。はい、ごく簡単にできます。

Doorkeeper APIってどんな?

セミナー・勉強会・イベント管理ツール「Doorkeeper」にも、勉強会の情報を取得するためのAPIが備わっています。その仕様書がこちら。

Doorkeeper API
This describes the resources that make up the official Doorkeeper API.

Doorkeeper API | Doorkeeper

来ましたよ英語。日本人の永遠の課題、高いハードル、英語。英語のおかげで、次の一歩を踏み出せないITエンジニアも多いことでしょう。僕も、英語には何度もトライして、何度も挫折しています。全然身に付きません…。

頑張って仕様書の中身を見ると、なんとなくパラメータとか応答とか読み取れます。でも、理解が合っているのか自身が無い。その上、実装方法は分からない。どうしよう?

助けて!Code Interpreter

というわけで、手元のCode Interpreterさんに助けてもらいましょう。サンプルプログラムを作ってもらったら、きっと理解も進むと思うんだよね(楽観)。英語も何とかして下さい。お願いします!

  1. Doorkeeper APIのWebページを、HTMLファイルとして保存

  2. そのHTMLファイルを、Code Interpreterにアップロード

  3. 「ChatGPT~、PythonでDoorkeeper APIのサンプルプログラム書いてよ~」とお願いする

  4. 「君はいつもそうなんだから。しょうがないなぁ…」とプログラムが出力される

  5. 実行してみて、エラーが出たら「ChatGPT~、こんなエラーが出ちゃったよ~」とデバッグ

  6. そうこうしているうちに動くものが完成

出来上がったプログラムはコチラです。

import requests

# API endpoint
url = 'https://api.doorkeeper.jp/events'

# Prepare the parameters
params = {
    'q': 'ChatGPT',
    'sort': 'starts_at'
}

# Call the API
response = requests.get(url, params=params)

# Check the response
if response.status_code == 200:
    data = response.json()

    for event in data:
        print(f"Title: {event['event']['title']}, Starts at: {event['event']['starts_at']}")
else:
    print(f"API request failed with status code {response.status_code}")

ここまで書いてくれれば、パラメータの適当な渡し方と、結果の取り出し方が何となく分かります。ありがとう、助かったよCode Interpreter!

評価

僕はPythonもJSONもよく知らない上に、英語もおぼつかないという何重ものハードルがありますが、Code Interpreterさんにお願いすれば楽々です。もはや革命的。ちなみに今回は、エラーハンドリングを勝手に入れてくれてましたが、この辺も「エラーハンドリングやってよ」とか「セキュリティ対策も忘れずに」とか、適当な指示をすればやってくれます。神かよ。

というわけで、connpassとDoorkeeperのAPI経由で、勉強会の情報取得方法が分かりました。フィージビリティスタディ完了、っと。

この記事が気に入ったらサポートをしてみませんか?