diff --git a/tools/lint-all b/tools/lint-all index 1b63f78d7d..91e8989a0a 100755 --- a/tools/lint-all +++ b/tools/lint-all @@ -575,6 +575,7 @@ def build_custom_checkers(by_lang): "docs/migration-renumbering.md", "docs/readme-symlink.md", "README.md", + "zerver/webhooks/trello/doc.md", } for fn in by_lang['md']: max_length = None diff --git a/zerver/webhooks/trello/doc.html b/zerver/webhooks/trello/doc.html deleted file mode 100644 index 535d9b40cf..0000000000 --- a/zerver/webhooks/trello/doc.html +++ /dev/null @@ -1,92 +0,0 @@ -
- This webhook integration for Trello is the recommended way to - integrate with Trello, and should support all the features of - the legacy Trello cron-based - integration. -
- -
- First, create the stream you'd like to use for Trello notifications,
- and subscribe all interested parties to this stream. We recommend the
- name trello
.
-
- Your webhook URL is:
- {{ external_api_uri_subdomain }}/v1/external/trello?api_key=abcdefgh&stream=trello
- where api_key
is the API key of your Zulip bot,
- and stream
is the stream name you want the notifications sent to.
-
- Trello doesn't support creating webhooks on their website; you - have to do it using their API. So before you create a webhook, - you'll need to follow the steps below to get from Trello - an APPLICATION_KEY, and a UserToken, and to fetch - the board's idModel. -
- -
- To generate the APPLICATION_KEY, open this URL in your web browser:
- https://trello.com/1/appkey/generate
.
-
- To generate a read access token, fill in and open this URL in the browser while logged into your Trello account:
- https://trello.com/1/authorize?key=<APPLICATION_KEY>&name=Issue+Manager&expiration=never&response_type=token&scope=read
- You will receive your UserToken. Note it.
-
- Within the the board URL, you can find the TRELLO_BOARD_SHORT_ID.
- The Trello URL format is:
- https://trello.com/b/TRELLO_BOARD_SHORT_ID/boardName
.
-
- Now you have the APPLICATION_KEY, UserToken and TRELLO_BOARD_SHORT_ID.
- Construct this URL and open it in your web browser:
- https://api.trello.com/1/board/<TRELLO_BOARD_SHORT_ID>?key=<APPLICATION_KEY>&token=<UserToken>
- You'll receive some JSON. Within that, find the id value. That's your idModel; note it.
-
- Now you have all the ingredients you need. To actually create the
- Trello webhook, you will need to send an HTTP POST
- request to the trello API webhook endpoint
- (https://api.trello.com/1/tokens/<UserToken>/webhooks/?key=<APPLICATION_KEY>
)
- with the following data:
-
{ - "description": "Webhook for Zulip integration", - "callbackURL": "<URL_TO_ZULIP_WEBHOOK_FROM_SECOND_STEP>", - "idModel": "<ID_MODEL>", -} -- -
You can do this using the curl
program as follows:
curl 'https://api.trello.com/1/tokens/<UserToken>/webhooks/?key=<APPLICATION_KEY>' --H 'Content-Type: application/json' -H 'Accept: application/json' ---data-binary $'{\n "description": "Webhook for Zulip integration",\n "callbackURL": "<URL_TO_ZULIP_WEBHOOK_FROM_SECOND_STEP>",\n "idModel": "<ID_MODEL>"\n}' ---compressed --
- The response from Trello should look like:
-
{ - "id": "<WEBHOOK_ID>", - "description": "Webhook for Zulip integration", - "idModel": "<ID_MODEL>", - "callbackURL": "<URL_TO_ZULIP_WEBHOOK_FROM_SECOND_STEP>", - "active": true -} --
- Congratulations! You've created a webhook and your integration is live. -
- -- When you make changes in on this board in Trello, you will - receive Zulip notifications like this: -
- diff --git a/zerver/webhooks/trello/doc.md b/zerver/webhooks/trello/doc.md new file mode 100644 index 0000000000..c32e438a05 --- /dev/null +++ b/zerver/webhooks/trello/doc.md @@ -0,0 +1,76 @@ +This webhook integration for Trello is the recommended way to +integrate with Trello, and should support all the features of +the [legacy Trello cron-based integration](#trello-plugin). + +First, create the stream you'd like to use for Trello notifications, +and subscribe all interested parties to this stream. We recommend the +name `trello`. + +Your webhook URL is: +`{{ external_api_uri_subdomain }}/v1/external/trello?api_key=abcdefgh&stream=trello` +where `api_key` is the API key of your Zulip bot, +and `stream` is the stream name you want the notifications sent to. + +Trello doesn't support creating webhooks on their website; you +have to do it using their API. So before you create a webhook, +you'll need to follow the steps below to get from Trello +an **APPLICATION_KEY**, and a **UserToken**, and to fetch +the board's **idModel**. + +To generate the **APPLICATION_KEY**, open this URL in your web browser: +`https://trello.com/1/appkey/generate`. + +To generate a read access token, fill in and open this URL in the browser while logged into your Trello account: +`https://trello.com/1/authorize?key=