API Documentation

This service offers API calls for looking up pronoun information. All URLs are offered as RFC 6570 URL templates. All results will return JSON-formatted values. Here are the calls offered by this service:

PronounSet type

The core datatype of the API is the PronounSet. It contains information on all the grammatical cases for each pronoun set. It always has five fields that are as follows:

nominative
The nominative case or subject form of a pronoun. This is the case that is used when the person or object being referred to is the subject of the sentence.
accusative
The accusative case or object form of a pronoun. This is the case that is used when the person or object being referred to is the object of the sentence.
dependent
The dependent possessive case. This is the case that is used when the person or object being referred to is the owner of an object or possesses it somehow. This is used as an adjective.
possessive
The possessive case. This is the case that is used when the pronoun replaces a noun or a noun phrase.
reflexive
The reflexive case. This is the case used when one is referring to themselves.
singular
This is true if the pronoun should be used in a singular way. This is false if it should be used in a plural way.
PronounSet responses are only returned when the HTTP status is 200.

Example

{
  "nominative": "she",
  "accusative": "her",
  "determiner": "her",
  "possessive": "hers",
  "reflexive": "herself",
  "singular": true
}

Error type

Sometimes the service may return an error if it can't find what you're asking it. This error type will only contain a field named message that contains a human-readable message to explain the failure. This will accompany a non-200 response.

Example

{
  "message": "can't find she/his in my database"
}

/api/all

This returns all information on all pronouns in the database in a list of PronounSet values.

Example

curl https://pronouns.within.lgbt/api/all

/api/lookup/{pronouns*}

This attempts to figure out which pronoun you want and returns information about each PronounSet matching that description. It returns a list of PronounSet's.

For example: /api/lookup/she/her will return the same information as /she/her.

Example

curl https://pronouns.within.lgbt/api/lookup/she
[
  {
    "nominative": "she",
    "accusative": "her",
    "determiner": "her",
    "possessive": "hers",
    "reflexive": "herself",
    "singular": true
  }
]

/api/exact/{nom}/{acc}/{det}/{pos}/{ref}

This route will give you a PronounSet based on the exact set of pronouns that you give it.

For example: /api/exact/char/char/char/chars/charself will return the same information as /char/char/char/chars/charself.

Example

curl https://pronouns.within.lgbt/api/exact/char/char/char/chars/charself
{
  "nominative": "char",
  "accusative": "char",
  "determiner": "char",
  "possessive": "chars",
  "reflexive": "charself",
  "singular": true
}