slackapi / node-slack-sdk

Slack Developer Kit for Node.js
https://slack.dev/node-slack-sdk
MIT License
3.26k stars 656 forks source link

No more OpenAPI specifications? #1836

Closed fab-mindflow closed 5 days ago

fab-mindflow commented 5 days ago

Sincerely sorry for the request here.

We used (and we continue to rely) for years on the great Slack OpenAPI/Swagger specifications when integrating with Slack. However, the associated Github project has been recently archived (and wasn't active for a long time). Sadly 😢, we can't find another official source. We believe it's critically important to maintain 3rd party providers some API dynamic discovery mechanism (API generation, automation, AI, and more).

Have you switched privately for this handy specifications? Any plan to expose it again publicly? Should we go through a partnership to get it?

Thanks in advance.

seratch commented 5 days ago

Hi @fab-mindflow, thank you for writing in!

We are sorry about the OpenAPI initiative's quality. As you know, it didn't go well; therefore, we had to terminate it. Additionally, there is no similar active initiative within Slack internally.

The only thing I can mention is that we are generating web API response types using our Java SDK's automated e2e tests towards the production API endpoints. We use an open-source tool called "quicktype" for auto-generating TypeScript code using the Java SDK outputs:

I understand this won't be a substitute for the OpenAPI/Swagger integration you wanted at all. Just wanted to mention this for your information. I hope this can be of help to some.

Let me close this issue here as the Deno SDK does not have anything further we can do for you. Thanks again for taking the time to write in and for utilizing our platform for such a long time!

fab-mindflow commented 4 days ago

Thanks for the reply.

We have also used Quicktype in the past ourselves. Yes, it's quite unfortunate the OpenAPI has been stopped (our Slack binding will be disrupted by this, it wasn't perfect but covered most of important endpoints). Moreover you have it all in the API documentation that you need to maintain anyway (docs is not part of quicktype binding...). Not arguing as it's your choice 😅 but there are plenty of use cases that SDKs will never cover (bleeding edge example: AI automation). Hope your engineering can think about it.