Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API Console feature #53

Open
RomanHotsiy opened this issue May 31, 2016 · 117 comments
Open

API Console feature #53

RomanHotsiy opened this issue May 31, 2016 · 117 comments

Comments

@RomanHotsiy
Copy link
Member

Implement API Console functionality.

Each method in ReDoc will have a button: “Try this method” which will open interactive console modal window.

There is the list of key features that should be implemented in the first version:

  • Ability to send GET, POST, PUT, DELETE, UPDATE requests
  • Ability to input/use/save authorization credentials
  • Show UI for easy entering parameters for path, headers, query and body (payload) parameters
  • UI should show selectbox for enums, checkboxes for boolean, text input for other simple types
  • Request should be validated before send according to OpenAPI spec
  • Support different environments (e.g. sandbox, dev, testing, etc) through OpenAPI vendor extension (each env will have unique base url and description) + ability to set default env specially for API-console
  • For most parts response will be shown “as is”. JSON response will be only prettified (with possibility of collapsing). The other responses will be represented as strings.
  • Show response headers that are documented in swagger. HTTP response headers that are not documented will be hidden under “Show undocumented response headers” button
@IvanGoncharov IvanGoncharov added this to the API console milestone Jul 31, 2016
@RomanHotsiy
Copy link
Member Author

A few mockups:

image

image

@SebastianStehle
Copy link

Do you have a timeline for this feature? If you are done with it, SwaggerUI should be replaced by Redoc as the official solution ;)

@RomanHotsiy
Copy link
Member Author

RomanHotsiy commented Nov 24, 2016

@SebastianStehle can't promise anything. It is on our list but before we have a few other things to implement. I will update the roadmap shortly.

Hopefully, we will get this ready in 3-4 months

@sixers
Copy link

sixers commented Feb 7, 2017

Hey, any update on this?

@RomanHotsiy
Copy link
Member Author

API Console is one of the priorities now. But so far we haven't started working on that :(
This seems to be the next big task on our roadmap.
I will post here once we start work on this.

@adamaltman
Copy link
Member

It may be good if the console can also send PATCH requests too.

@dolmen
Copy link

dolmen commented Feb 10, 2017

About the support for "different environments" in the description of this issue, I don't think this should be a priority: the host and the basePath are specified in the Swagger spec and allowing to switch environments would imply to override the information from the spec. But there would be a much simpler to way to have this feature: have multiple instances of ReDoc with its own spec with the specialized spec with the specific host/basePath settings. That's how I'm handling multiple environments with swagger-ui right now.

Note that sandbox/dev/testing environments are usually not information you want to expose (and accidentally leak), so using a vendor extension of the spec does not seem to be the right place.

@gembin
Copy link

gembin commented May 3, 2017

It will be awesome to have API Console. +1

@pkvenu
Copy link

pkvenu commented Jun 13, 2017

+1 for API Console. Do you guys have a timeline for this?

@Rikhart
Copy link

Rikhart commented Jun 25, 2017

+1 for API Console.

@nifedorov
Copy link

+1 for API Console

3 similar comments
@gkonnov
Copy link

gkonnov commented Jun 25, 2017

+1 for API Console

@bryuzgin
Copy link

+1 for API Console

@drfill
Copy link

drfill commented Jun 30, 2017

+1 for API Console

@dolmen
Copy link

dolmen commented Jul 13, 2017

Please stop adding "+1" comments. Use instead the reaction feature of GitHub.

You can even delete your own useless comments!

@j26nz
Copy link

j26nz commented Jul 17, 2017

Hey @RomanGotsiy Thanks for such an awesome API documentation tool :) Are you currently working on implementing API console ? Do you have any timeline for this feature?

@RomanHotsiy
Copy link
Member Author

@j26nz no, I'm on 2-week vacation now and don't have any timeline for now.
I have this partially implemented for very simple use-cases but swagger has so many ways to describe the same thing that there's still a lot of work to finish this.

I will try to keep all you guys updated on the progress

@seanpk
Copy link

seanpk commented Jul 18, 2017

@RomanGotsiy - did you all look into the support that Postman has for generating collections from swagger? (you have to scroll down a bit)

I'm not saying that there's no reason for ReDoc to have a console, but if there's another workable option, I wonder if there are other features that would be more valuable. Especially when I think about not only the complexity of supporting the multiple ways of expressing the same thing that OpenAPI supports, but also the tough time properly supporting built-in security features and allowing for user extensions.

I know the community is really looking forward to a built-in console, but having come to ReDoc from the disappointments of SwaggerUI, I'd hate to see this great tool get bogged down in the implementation and support of a "nice to have" feature when there are workable alternatives.

I hope over the next few days to look into Postman's support and will share my experience here too.

@seanpk
Copy link

seanpk commented Jul 20, 2017

Update on trying out Postman-generated collections, first impressions:

  • imported a couple specs that make use of "advanced" OpenAPI features without issue, including:
    • use of discriminator (polymorphic types)
    • use of additionalProperties
  • interpretation of markdown in descriptions (including tables and fenced code) ...
    • (this is a little bit handy, but I'd still have the ReDoc rendering for real documentation)
  • ability to add a pre-request script for calculating any security headers

Generated Postman collections look good for our use cases, at least. We'll proceed beyond the quick POT I've done and see what more we learn.

@RomanGotsiy (and others) I would be really interested in hearing about your exploration of generated Postman collections and understanding what advantages a custom built-in API console has over them.

@adamaltman
Copy link
Member

Thanks for the update @seanpk .

@raderio
Copy link

raderio commented Aug 31, 2017

I have this partially implemented for very simple use-cases but swagger has so many ways to describe the same thing that there's still a lot of work to finish this.

@RomanGotsiy you can release a very simple version. After releasing, people interested in more features will create new issues.

@j26nz
Copy link

j26nz commented Sep 7, 2017

hey @RomanGotsiy like @raderio said Is it possible for you to release a simple version of API console or you can put it on a separate branch and people interested in more features can start contributing to it. Thanks.

@indolent-developer
Copy link

hi is there any update on this feature. May be we can have a PR for this??

@adamaltman
Copy link
Member

I emailed you @paperplanemove ...

@adamaltman
Copy link
Member

Added to Todo list:

  • update roadmap
  • make it clear how to get/try the API console

@mona24
Copy link

mona24 commented May 3, 2019

@adamaltman could you please email me as well? I tried "Request invitation" a couple of times but didn't get any invite.

@adamaltman
Copy link
Member

@mona24 I don't know your email address.

@mona24
Copy link

mona24 commented May 4, 2019 via email

@GGAnderson
Copy link

Hi Adam,
We are looking for this also. Please email more info to [email protected]
Thank you,
GG Anderson

@adamaltman
Copy link
Member

Contacted. Thanks GG.

@pongz79
Copy link

pongz79 commented May 23, 2019

Hi @adamaltman.
I'm also looking for this.
Can you please email me at [email protected]?
Thank you.

@pekunicki
Copy link

Hi @adamaltman,
Please keep me updated.
Thanks a lot!

@edimarco12
Copy link

Hi @adamaltman.
I'm also looking for this.
Could you email me at [email protected]?

Thank you,
Erik

@rknuc12345
Copy link

Any plan to release "Tryout" feature in your upcoming releases?

@PCiszewski
Copy link

Hi could you be so kind and send me also some info about Try It? This is my email: [email protected]

@RobertGossett
Copy link

Can you send me information on console? [email protected] :)

@plittlewood-rpt
Copy link

Any ETA on when the Try It functionality will hit a release?

@GSatosov
Copy link

Can you send the information to me as well?
[email protected]

@liudonghua123
Copy link

+1 for API Console

@raha1923
Copy link

Well, our company needs API-console on redoc, so we have to try to implement it. I'm looking for a proper solution to avoid implement un-necessary implementation.
Please let me know about the existing solutions which match our(Redoc) requirements.

@FV-Admin
Copy link

Team, we are also looking for Tryout feature..! If possible can you pls share the beta link to us.

@raha1923
Copy link

raha1923 commented Jan 18, 2020

I found a fork of Redoc that API console had implemented on it. I have cloned it and merge with my forked Redoc project and now I'm going to redesign it and after that, I will send it's PR to the main project. You can use my forked project until I'll send the PR and maybe you can help me to redesign it.

raha1923/redoc#1

@raha1923
Copy link

I just wanted to share with you the progress of the API console feature. You can watch it or maybe help us to implement it. raha1923#1

here are screenshots of the parts of it that implemented.

image

image

@adamaltman
Copy link
Member

@raha1923 please read through all the comments above. Thank you for your contributions and feedback.

We really value our community and appreciate every contribution. It was a hard decision, but in summary, we decided that the API console won't be added to open-source Redoc. It is available in our commercial offering in Redocly.

Again, you're free to use and maintain your own fork of the project.

Redocly is a commercial (not free) product that offers hosted API docs. It's available in a private beta now, but we will be launching to the public by the end of February.

We've been working on this project for 55 months, and we're grateful for the support, feedback and contributions from the community. We've recently launched some new and related free open-source projects including:

https://github.com/Redocly/openapi-cli
https://github.com/Redocly/create-openapi-repo (we'll be announcing v3 in February)

You can support our projects by:

  • starring them (we love stars)
  • opening issues with bugs and ideas for improvements
  • discussions issues
  • working issues
  • subscribing to our paid API Docs products or get updates by going to https://redoc.ly

Thank you!

@adamaltman adamaltman reopened this Jan 20, 2020
@Redocly Redocly locked as resolved and limited conversation to collaborators Jan 20, 2020
@RomanHotsiy RomanHotsiy removed this from the API console milestone Mar 24, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests