

slackで新しいチャンネルが作られたときに通知を投稿するため、lambdaとAPI Gatewayで  
サーバレスの実装を試みています。

参考にしている記事

  * [Slackで新しいチャンネルが作成されたら通知できるようにしてみた！](https://coxcox.hatenablog.com/entry/2017/08/16/163719)
  * [イベント駆動型slack botの実装](https://blog.engineer.adways.net/entry/2017/08/18/120000)

最初に、下記URLで、slack側でEvent SubscriptionするためAPIをテストするのですがなかなか成功しません。

<https://api.slack.com/apps/ANNLSSNMA/event-subscriptions>

lambdaのコードは下記です。

[code]

    var response = {
      statusCode: 200,
      headers: {},
      body: ""
    };
    
    exports.handler = (event, context, callback) => {
        response.body = event["challenge"]
        callback(null, response);
    };
    
[/code]

ブラウザで確認でいるエラーメッセージは下記です

[code]

    Request URL Your URL didn't respond with the value of the challenge parameter.
            
    Our Request:
    POST
    "body": { 
         "type": "url_verification",
         "token": "7vCrMj48jDKT17IFVqhHseho",
         "challenge": "65A0CConXU8Vj1UhCP2TwTX2eUvewWrHN0O2jpzX9DG67qmctYvL"
    }
    Your Response:
    "code": 200
    "error": "challenge_failed"
    "body": {
      
    }
    
[/code]

lambda上でのテストではうまくいっているようなので、  
API Gatewayを通過するときに中身が変わってしまっているのかもと思っています。

どうすれば解決しますでしょうか。  
よろしくお願いいたします。


CC BY-SA 4.0
2019-09-25T08:51:00.493
59262
2020-07-24T07:49:45.413
2020-07-24T07:49:45.413
3060
35963
question
aws aws-lambda slack
slack のカスタム通知を lambda + API Gateway で作りたいがchallengeが成功しない