882b5b1551
Setting X-API-Options to bare will return unpacked values. $ curl --header "X-API-Options: bare" http://127.0.0.1:5000/last_aired { "name": "Do Princesses Dream of Magic Sheep?", "air_date": 1436628600, "season": 5, "episode": 13, "is_movie": false } |
||
---|---|---|
client | ||
public/static | ||
.dockerignore | ||
.gitattributes | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.md | ||
episode.nim | ||
fim.list | ||
ponyapi.nim | ||
ponyapi.nimble | ||
requirements.txt | ||
stats.nim |
README.md
PonyAPI
A simple API for episodes of My Little Pony: Friendship is Magic to be run inside a container.
API Usage
An episode will have the following data type:
{
"air_date": 1286735400,
"episode": 1,
"is_movie": false,
"name": "Friendship is Magic Part 1",
"season": 1
}
This represents Season 1, Episode 1 of My Little Pony: Friendship Is Magic. The
air_date
column represents the date and time that the episode was originally
shown on The Hub (now Discovery Family Network). If is_movie
is set and the
season number is 99
, the episode record should be treated as a movie.
Usage Limits
None. Don't make the server it's running on crash and we'll all be good.
Clients
Routes
The canonical route base for PonyAPI is http://ponyapi.apps.xeserv.us. Example usage:
$ curl http://ponyapi.apps.xeserv.us/season/1/episode/1
{
"episode": {
"air_date": 1286735400,
"episode": 1,
"is_movie": false,
"name": "Friendship is Magic Part 1",
"season": 1
}
}
/all
Returns all information about all episodes. This returns an array of Episode objects as defined above.
/newest
Returns the episode of My Little Pony: Friendship is Magic that will air next.
/last_aired
Returns the episode of My Little Pony: Friendship is Magic that most recently aired.
/season/<number>
Returns all information about episodes in the given season number or a 404
reply if no episodes could be found. To get all information about the movies
shown, set the season as 99
.
/season/<number>/episode/<number>
Returns all information about the episode with the given season and episode
number. If the episode cannot be found, this will return a 404
.
/random
Returns a random episode record from the list of episodes.
/search
This must be given a query paramater q
containing the text to search for. Not
including this will return a 406
reply. This will search the list of episode
records for any episodes whose names match the given search terms. This is
case-insensitive. If no episodes can be found, this will return a 404
reply.