久々に、Apexで外部サービスのAPI叩いてみるシリーズ!ということで、apex-mastodonというApexのライブラリを作ってみました。

インストール

jsforce-deployだとこんな感じでいけます

READMEに書いてあるDeploy to Salesforceボタンも多分動くはず(未検証)

使い方

今のところ指定ログイン情報(Named Credential)でしか利用できないです…orz

何はともあれcurlでアプリを登録します。作成したアプリは削除できないので注意してください。redirect_urisはSalesforceで認証プロバイダを作成したときに払い出されるコールバックURLです。

Salesforce側は認証プロバイダと指定ログイン情報を設定します。上記コマンドでクライアントIDとシークレットが払い出されるのでそれらを設定します。

「ID種別」を「ユーザ」にした場合は、各々のユーザで外部システムの認証設定を編集する必要があります。

ここまで出来ればあとは以下のApexコードでtootできます。

残タスク

  • Named Credentialを使わないOAuth2.0対応
  • 未実装のAPIの対応
  • READMEの整理

参考URL