Movatterモバイル変換


[0]ホーム

URL:


Qiita Team Webhook documentation

Webhook

Webhookを利用すると、Qiita Teamで発生する様々なイベントを外部のサービスと連携できます。Qiita Teamで記事が作成されたり、記事にコメントが付けられたりすると、設定されたURLに対してHTTP経由でPOSTリクエストが送信されます。

設定方法

自分の所属しているチームにWebhookを設定するには、チーム設定画面からWebhooksの画面に遷移し、設定を行います。1つのチームで複数のURLを設定でき、それぞれのURLに対して受信するイベントの種類を指定できます。なお、Webhookの設定を変更できるのはチームの管理者のみとなります。

リクエスト

Webhookの機能から送られるすべてのHTTPリクエストはPOSTリクエストで送信されます。リクエストボディにはJSON形式でエンコードされた文字列(以下これをPayloadと呼びます)が含まれます。共通のリクエストヘッダとして、X-Qiita-Event-Model にPayloadのmodelプロパティと同様の値が含まれます。また、Qiita Teamから送信されたリクエストであることを保証するため、X-Qiita-Token にWebhookに割り当てられたトークンが与えられます。トークンはチーム設定画面から確認できます。

Payload

Payloadには、必ずactionプロパティとmodelプロパティが含まれます。actionプロパティは「どのイベントが発生したか」を表す文字列で、modelプロパティは「何に対してイベントが発生したか」を表す文字列です。他に、イベントごとに関連するデータが幾つか含まれます。

ItemCreated

記事が作成されたときに送信されます。

Payload

プロパティ名説明
actionString"created"
modelString"item"
itemItem作成された記事
userUser作成したユーザー

Example

request-body-example
{"action":"created","item":{"body":"<p>test</p>\n","coediting":false,"comment_count":0,"created_at_as_seconds":1438855324,"created_at_in_words":"1分未満","created_at":"2015-08-06 19:02:04 +0900","id":421379,"lgtm_count":0,"raw_body":"test\n","stock_count":0,"stock_users":[],"tags":[{"name":"test","url_name":"test","versions":[]}],"title":"Test","updated_at":"2015-08-06 19:02:04 +0900","updated_at_in_words":"1分未満","url":"https://example.qiita.com/r7kamura/items/a09e2f506c04aca3397a","user":{"id":4365,"profile_image_url":"https://secure.gravatar.com/avatar/089127ffb92a19d3d37815673cca06dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url_name":"r7kamura"},"uuid":"a09e2f506c04aca3397a"},"model":"item","user":{"id":4365,"profile_image_url":"https://secure.gravatar.com/avatar/089127ffb92a19d3d37815673cca06dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url_name":"r7kamura"}}

ItemDestroyed

記事が削除されたときに送信されます。

Payload

プロパティ名説明
actionString"destroyed"
modelString"item"
itemItem削除された記事

ItemUpdated

記事が更新されたときに送信されます。

Payload

プロパティ名説明
actionString"updated"
messageStringユーザーが入力した変更内容の概要
modelString"item"
itemItem更新された記事
userUser更新したユーザー

CommentCreated

コメントが作成されたときに送信されます。

Payload

プロパティ名説明
actionString"created"
modelString"comment"
commentComment作成されたコメント
itemItemコメントの紐付いている記事

Example

request-body-example
{"action":"created","comment":{"body":"<p>test</p>\n","created_at":"2015-08-06 19:04:06 +0900","id":305242,"raw_body":"test\n","updated_at":"2015-08-06 19:04:06 +0900","url":"https://example.qiita.com/r7kamura/items/a09e2f506c04aca3397a#comment-c47ccda86aca8d03c5d8","user":{"id":4365,"profile_image_url":"https://secure.gravatar.com/avatar/089127ffb92a19d3d37815673cca06dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url_name":"r7kamura"},"uuid":"c47ccda86aca8d03c5d8"},"item":{"body":"<p>test</p>\n","coediting":false,"comment_count":1,"created_at_as_seconds":1438855324,"created_at_in_words":"2分","created_at":"2015-08-06 19:02:04 +0900","id":421379,"lgtm_count":0,"raw_body":"test\n","stock_count":0,"stock_users":[],"tags":[{"name":"test","url_name":"test","versions":[]}],"title":"Test","updated_at":"2015-08-06 19:02:04 +0900","updated_at_in_words":"2分","url":"https://example.qiita.com/r7kamura/items/a09e2f506c04aca3397a","user":{"id":4365,"profile_image_url":"https://secure.gravatar.com/avatar/089127ffb92a19d3d37815673cca06dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url_name":"r7kamura"},"uuid":"a09e2f506c04aca3397a"},"model":"comment"}

CommentDestroyed

コメントが削除されたときに送信されます。

Payload

プロパティ名説明
actionString"destroyed"
modelString"comment"
commentComment削除されたコメント
itemItemコメントの紐付いている記事

CommentUpdated

コメントが更新されたときに送信されます。

Payload

プロパティ名説明
actionString"updated"
modelString"comment"
commentComment更新されたコメント
itemItemコメントの紐付いている記事

MemberAdded

チームメンバーが追加されたときに送信されます。

Payload

プロパティ名説明
actionString"added"
modelString"member"
userUser追加されたユーザー

Example

request-body-example
{"action":"added","model":"member","user":{"id":4365,"profile_image_url":"https://secure.gravatar.com/avatar/089127ffb92a19d3d37815673cca06dc?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url_name":"r7kamura"}}

MemberRemoved

チームメンバーが離脱したときに送信されます。

Payload

プロパティ名説明
actionString"removed"
modelString"member"
userUser離脱したユーザー

PingRequested

Webhookの設定画面からテストを行ったときに送信されます。

Payload

プロパティ名説明
actionString"requested"
modelString"ping"
messageString"ping"

Example

request-body-example
{"action":"requested","message":"ping","model":"ping"}

Types

Payloadの項目で利用した型の内容について説明します。

Comment

記事やプロジェクトに付けられたコメントを表します。

プロパティ名説明
bodyStringコメント本文のHTML表現
created_atStringコメントの作成日時
idIntegerコメントの整数のID
raw_bodyStringコメント本文
updated_atStringコメントの更新日時
urlStringコメントのURL
userUserコメントの作成者
uuidStringコメントのID

Item

Qiita Teamの記事とコメントが付けられたプロジェクトの内容を表します。

プロパティ名説明
bodyString記事本文のHTML表現
coeditingBoolean共同編集かどうか
comment_countIntegerコメント数
created_at_as_secondsInteger記事作成日時のUNIX時間
created_at_in_wordsString記事作成日時の簡易表記
created_atString記事作成日時
idInteger記事のID
lgtm_countIntegerまたはNullいいね数
raw_bodyString記事本文
stock_countIntegerまたはNullストック数
stock_usersArray(User)またはNullストックしているユーザ一覧
tagsArray(Tag)タグ一覧
titleString記事タイトル
updated_atString更新日時
updated_at_in_wordsString更新日時の簡易表記
urlString記事のURL
userUser記事の作成者
uuidStringまたはNull記事のURLに利用されるID

Tag

記事に付けられるタグを表します。

プロパティ名説明
nameStringタグの名前
url_nameStringタグのURL上での名前
versionsArray(String)タグに付けられたバージョン一覧

User

ユーザーを表します。

プロパティ名説明
idIntegerユーザーの整数のID
profile_image_urlStringユーザーのアイコン画像のURL
url_nameStringユーザー名

[8]ページ先頭

©2009-2025 Movatter.jp