# HTTP options method

**URL:** <https://discuss.jsonapi.org/t/http-options-method/137>\
**Category:** Uncategorized\
**Created:** [September 25, 2015, 3:15pm UTC](https://discuss.jsonapi.org/t/http-options-method/137 "2015-09-25T15:15:48Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![riccardo](https://avatars.discourse-cdn.com/v4/letter/r/ce7236/32.png) [@riccardo](https://discuss.jsonapi.org/u/riccardo)\
**Post date:** [September 25, 2015, 3:15pm UTC](https://discuss.jsonapi.org/t/http-options-method/137/1 "2015-09-25T15:15:48Z")

</div>

Hi,

in my API project I want to use the **_options_** http method. Could I have any informations about its implementation with JSON API rules?

I believe that in the specifications the **_options_** http method is not mentioned.

Thanks in advance for the answers.

Riccardo

---

<div class="post-metadata">

**Author:** ![steveklabnik](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.jsonapi.org/steveklabnik/32/2_2.png) [@steveklabnik](https://discuss.jsonapi.org/u/steveklabnik)\
**Post date:** [September 25, 2015, 7:15pm UTC](https://discuss.jsonapi.org/t/http-options-method/137/2 "2015-09-25T19:15:56Z")

</div>

There’s no specific integration with JSON API’s rules. You just support it as normal.

Was there anything in particular you were thinking of?

---

<div class="post-metadata">

**Author:** ![riccardo](https://avatars.discourse-cdn.com/v4/letter/r/ce7236/32.png) [@riccardo](https://discuss.jsonapi.org/u/riccardo)\
**Post date:** [September 29, 2015, 2:38pm UTC](https://discuss.jsonapi.org/t/http-options-method/137/3 "2015-09-29T14:38:07Z")

</div>

I would use the Options HTTP Method to (synthetically) document my REST endpoints. For instance, for one endpoint, what parameters are available, what are mandatory, etc. I would like that an user would be able to use my REST service only by reading the output of the Options HTTP Method.  
I hope I have explained well my issue. 😁  
Thanks

---

<div class="post-metadata">

**Author:** ![steveklabnik](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.jsonapi.org/steveklabnik/32/2_2.png) [@steveklabnik](https://discuss.jsonapi.org/u/steveklabnik)\
**Post date:** [September 29, 2015, 2:54pm UTC](https://discuss.jsonapi.org/t/http-options-method/137/4 "2015-09-29T14:54:29Z")

</div>

Sure, then just do it all as normal. Nothing special here.

---

<div class="post-metadata">

**Author:** ![riccardo](https://avatars.discourse-cdn.com/v4/letter/r/ce7236/32.png) [@riccardo](https://discuss.jsonapi.org/u/riccardo)\
**Post date:** [September 30, 2015, 3:41pm UTC](https://discuss.jsonapi.org/t/http-options-method/137/5 "2015-09-30T15:41:14Z")

</div>

Thanks for the answer. 😉

---

<div class="post-metadata">

**Author:** ![ethanresnick](https://avatars.discourse-cdn.com/v4/letter/e/45deac/32.png) [@ethanresnick](https://discuss.jsonapi.org/u/ethanresnick)\
**Post date:** [October 12, 2015, 12:35am UTC](https://discuss.jsonapi.org/t/http-options-method/137/6 "2015-10-12T00:35:37Z")

</div>

Only thing I’d add here: If you implement options, make sure that that endpoint returns standard `application/json` rather than `application/vnd.api+json`. That way, if JSON API defines OPTIONS semantics in the future, your server won’t be in conflict with them.
