Skip to content

k3min/infinigag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 

Repository files navigation

InfiniGAG API

Right now, the API is very basic, but it should hopefully retrieve what you're looking for.

I love it when services provide API's. It allows people to play around and make cool apps, and so I did not want to take the fun away from you.

API

GET /:section/:id

Resource URL

http://infinigag.k3min.eu/:section/:id

Parameters

Parameter Description
 **section**<br>*required* | The section (or subsection) to return results from (`hot`, `trending`, `fresh`, etc.)<br>**Example Values**: `design/fresh`
      **id**<br>*optional* | Specifies the page ID to retrieve results from.<br>**Example Values**: `V8eFpqG`

access_token
optional | Token obtained from POST /token.
Example Values: 9125faf1dda6c7d3fe5cc5574e5ff79158208918955275753b4e1d58efecdf9d

Example Request

Request URL:

GET http://infinigag.k3min.eu/design/fresh

Response:
{
	"status": 200,
	"message": "OK",
	"data": [
		{
			"id": "EyVtjpq",
			"caption": "Example",
			"images": {
				"small": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_220x145.jpg",
				"cover": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460c.jpg",
				"normal": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460s.jpg",
				"large": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_700b.jpg"
			},
			"media": {
				"mp4": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460sv.mp4",
				"webm": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460svwm.webm"
			},
			"link": "http:\/\/9gag.com\/gag\/EyVtjpq",
			"votes": {
				"count": 0
			},
			"comments": {
				"count": 0
			}
		}
	],
	"paging": {
		"next": "V8eFpqG"
	}
}

POST /token

Resource URL

http://infinigag.k3min.eu/token

Parameters

Parameter Description
username
required
End-user username.
Example Values: hi@k3min.eu
password
required
End-user password.
Example Values: secret

Example Request

Request URL:

POST http://infinigag.k3min.eu/token

Request POST Body:

username=hi%40k3min.eu&password=secret

Response:
{
	"status": 200,
	"message": "OK",
	"access_token": "9125faf1dda6c7d3fe5cc5574e5ff79158208918955275753b4e1d58efecdf9d"
}

POST /vote/:type/:id

Resource URL

http://infinigag.k3min.eu/vote/:type/:id

Parameters

Parameter Description
    **type**<br>*required* | Vote type (`like`, `dislike` or `unlike`).<br>**Example Values**: `like`
      **id**<br>*required* | The gag ID.<br>**Example Values**: `EyVtjpq`

access_token
required | Token obtained from POST /token.
Example Values: 9125faf1dda6c7d3fe5cc5574e5ff79158208918955275753b4e1d58efecdf9d

Example Request

Request URL:

POST http://infinigag.k3min.eu/vote/like/EyVtjpq?access_token=9125faf1dda6c7d3fe5cc5574e5ff79158208918955275753b4e1d58efecdf9d

Request POST Body:

N/A

Response:
{
	"status": 200,
	"message": "OK",
	"id": "EyVtjpq",
	"score": 1
}

GET /gag/:id

Resource URL

http://infinigag.k3min.eu/gag/:id

Parameters

Parameter Description
      **id**<br>*required* | Specifies the page ID to retrieve results from.<br>**Example Values**: `EyVtjpq`

access_token
optional | Token obtained from POST /token.
Example Values: 9125faf1dda6c7d3fe5cc5574e5ff79158208918955275753b4e1d58efecdf9d

Example Request

Request URL:

GET http://infinigag.k3min.eu/gag/EyVtjpq

Response:
{
	"status": 200,
	"message": "OK",
	"id": "EyVtjpq",
	"caption": "Example",
	"images": {
		"small": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_220x145.jpg",
		"cover": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460c.jpg",
		"normal": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460s.jpg",
		"large": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_700b.jpg"
	},
	"media": {
		"mp4": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460sv.mp4",
		"webm": "http:\/\/img-9gag-fun.9cache.com\/photo\/EyVtjpq_460svwm.webm"
	},
	"link": "http:\/\/9gag.com\/gag\/EyVtjpq",
	"votes": {
		"count": 0
	},
	"comments": {
		"count": 0
	}
}

GET /comments/:id

Resource URL

http://infinigag.k3min.eu/comments/:id

Parameters

Parameter Description
    **id**<br>*required* | Specifies the page ID to retrieve results from.<br>**Example Values**: `EyVtjpq`
 **count**<br>*optional* | The amount of comments to retrieve (defaults to `10`).<br>**Example Values**: `10`
 **level**<br>*optional* | The maximum level comments (defaults to `1`).<br>**Example Values**: `2`
 **order**<br>*optional* | Sorting order (only `score` is known to be valid).<br>**Example Values**: `score`
   **ref**<br>*optional* | Can be used to page results.<br>**Example Values**: `score_26902865197043_26902865197043`

refComment
optional | Can be used to page comments.
Example Values: c_141726493230089540

Example Request

Request URL:

GET http://infinigag.k3min.eu/comments/EyVtjpq?order=score

Response:
{
	"status": 200,
	"message": "OK",
	"id": "EyVtjpq",
	"link": "http:\/\/9gag.com\/gag\/EyVtjpq",
	"data": [
		{
			"id": "c_269028651970438660",
			"parent": "c_394180510356090940",
			"timestamp": 1355314332,
			"type": "text",
			"text": "Hello world!",
			"user": {
				"id": "GTCd8Wj",
				"avatar": "http:\/\/accounts-cdn.9gag.com\/media\/avatar\/5855062_100_4.jpg",
				"displayName": "k3min",
				"link": "http:\/\/9gag.com\/u\/k3min"
			},
			"children": {
				"data": [
					{
						"id": "c_141726493230089540",
						"parent": "c_269028651970438660",
						"timestamp": 1355314332,
						"type": "text",
						"text": "Some reply.",
						"user": {
							"id": "pefUKCk",
							"avatar": "http:\/\/accounts-cdn.9gag.com\/media\/avatar\/2213915_100_3.jpg",
							"displayName": "some_user",
							"link": "http:\/\/9gag.com\/u\/some_user"
						},
						"children": {
							"data": null,
							"count": 0,
							"paging": {
								"next": null
							}
						}
					}
				],
				"count": 2,
				"paging": {
					"next": "c_141726493230089540"
				}
			}
		}
	],
	"count": 123,
	"paging": {
		"next": "score_26902865197043_26902865197043"
	}
}

Uses

Releases

No releases published

Packages