I agree with this modification.
It’s right to make the API more usable.
In the new APIs, we need to add a prefix like v1 v2 for backward
compatibility:

> curl -X POST http://127.0.0.1:9090/v2/apisix/admin/routes

Thanks,
Ming Wen, Apache APISIX PMC Chair
Twitter: _WenMing


Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月21日周三 上午9:19写道:

> Hi,
>
> Any update on this discussion?
>
> Best Regards!
> @ Zhiyuan Ju <https://github.com/juzhiyuan>
>
>
> Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月9日周五 下午10:11写道:
>
> > Hi, Community,
> >
> > As an API Gateway project, I would like to propose a RESTful modification
> > of current APIs.
> >
> > This mail is used to discuss the current status of ManagerAPI, here is an
> > example:
> >
> > Request:
> > ```sh
> > $ curl -X POST http://127.0.0.1:9090/apisix/admin/routes -d {DATA}
> > ```
> >
> > Response:
> > ```json
> > {
> >   "code": 0,
> >   "request_id": "",
> >   "message": "",
> >   "data": {}
> > }
> > ```
> >
> > There have 4 problems:
> > 1. The Request URL contains the "/apisix/admin" prefix, which preserves
> > the Admin API style. Should we omit this prefix and have Manager's
> RESTful
> > APi?
> > 2. Response Body contains code, message, request_id, data fields, and the
> > client will take more care of "data" field, while the other fields are
> > auxiliary and can be replaced with HTTP Status Code. As for the 400
> > parameter error status code, we could use a special errMessage field for
> > error description.
> > 3. We don't maintain the `code` filed, we don't know what it should be in
> > different cases.
> > 4. The data field will contain all request body's data in some APIs, I
> see
> > GitHub also using this way for API call-chain. (Not a problem IMO)
> >
> > What to do next?
> > 1. List all APIs;
> > 2. Proposal which part we should change for every API;
> > 3. Have the final agreement.
> >
> > What's your opinion?
> >
> > Reference
> > - GitHub: https://docs.github.com/en/rest/reference
> > - Stripe: https://stripe.com/docs/api
> > - MDN: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status
> >
> > Best Regards!
> > @ Zhiyuan Ju <https://github.com/juzhiyuan>
> >
>

Reply via email to