Skip to content

Latest commit

 

History

History
264 lines (218 loc) · 4.71 KB

api-doc.md

File metadata and controls

264 lines (218 loc) · 4.71 KB

AtColor API Doc

ベースURL

http://api-atcolor.cps.im.dendai.ac.jp

このベースのURLの後にエンドポイントのパスを記述してAPIにアクセスする.

ex.) GET http://api-atcolor.cps.im.dendai.ac.jp/v1/login

リクエスト一覧

[POST]register

ユーザを登録する

<使用例>

POST http://api-atcolor.cps.im.dendai.ac.jp/v1/register

{    
	"id": 1,   
	"username": "cpstaro",   
	"access_token": "1:1rr6ksguCF6zMXuiugSg"  
}

フィールド

名前 概要
username 任意の名前
password ログイン用のパスワード

成功

正しく登録ができれば, access_tokenが返ってきます.

[POST]login

作成したユーザ名とパスワードでログインする

<使用例>

POST http://api-atcolor.cps.im.dendai.ac.jp/v1/login

{  
	"id": 1,  
	"username": "cpstaro",  
	"access_token": "1:1rr6ksguCF6zMXuiugSg"  
}

フィールド

名前 概要
username 任意の名前
password ログイン用のパスワード

[GET]is_auth

作成したユーザのアクセストークンを使って認証を行う

<使用例>

GET http://api-atcolor.cps.im.dendai.ac.jp/v1/is_auth

{
	"message": "Your Authentication OK! \"naoya\""
}

フィールド

なし

ヘッダ

名前 概要
authorization 登録時に生成したアクセストークン

[GET] users

全てのユーザ情報を取得する

<使用例>

GET http://api-atcolor.cps.im.dendai.ac.jp/v1/users

{  
		"id": 1,  
		"username": "cpstaro",  
		"twitter": "cps_tdu",  
		"language": "python",  
		"total_point": 3,  
		"solved_questions": [  
			{  
				"id": 3,  
				"title": "can you PUT?",  
				"description": "自分のプロフィールを更新する。"  
			}  
		]    
	}  
  {  
		"id": 1,    
		"username": "cpsjiro",  
		"twitter": "cps_tdu2",  
		"language": "js",  
		"total_point": 2,  
		"solved_questions": [  
			{  
				"id": 2,  
				"title": "can you POST?",  
				"description": "ユーザを作成する"  
			}  
		]  
  }  

フィールド

なし

[GET] pixels

各座標の色情報の一覧を取得する.

<使用例>

GET http://api-atcolor.cps.im.dendai.ac.jp/v1/pixels

[	{  
		"id": 1,  
		"x": 0,  
		"y": 0,  
		"color": "#ffffff"  
	},  
	{  
		"id": 2,  
		"x": 0,  
		"y": 1,  
		"color": "#ffffff"  
	},  
	{  
		"id": 3,  
		"x": 0,  
		"y": 2,  
		"color": "#ffffff"  
	}  
]  

フィールド

なし

[GET] questions

全ての課題と課題をクリアしたユーザの一覧を取得する

<使用例>

GET http://api-atcolor.cps.im.dendai.ac.jp/v1/q

[  
	{  
		"id": 1,  
		"title": "can you GET?",  
		"description": "自分のプロフィールを取得する。",  
		"solvers": []  
	},  
	{  
		"id": 2,  
		"title": "can you POST?",  
		"description": "ユーザを作成する。",  
		"solvers": [  
			{  
				"id": 3,  
				"username": "cpstaro",  
				"twitter": null,  
				"language": null,  
				"total_point": 1  
			}  
		]  
	},  
	{  
		"id": 3,  
		"title": "can you PUT?",  
		"description": "自分のプロフィールを更新する。",  
		"solvers": []  
  }  
]  

フィールド

なし

[GET] users/:id

フィールド

なし

[PUT] users

作成したユーザのプロフィールを更新する

<使用例>

PUT http://api-atcolor.cps.im.dendai.ac.jp/v1/users

{  
	"id": 3,  
	"username": "cpstaro",  
	"twitter": "cps_lab",  
	"language": "python",  
	"total_point": 4,  
	"solved_questions": [  
		{  
			"id": 2,  
			"title": "can you POST?",  
			"description": "ユーザを作成する。"  
		},  
		{  
			"id": 3,  
			"title": "can you PUT?",  
			"description": "自分のプロフィールを更新する。"  
		}  
	]  
}  

フィールド

名前 概要
twitter twitterID
language 得意な言語

[PUT] pixels

指定した座標に色を設定する

<使用例>

PUT http://api-atcolor.cps.im.dendai.ac.jp/v1/pixels

{  
	"id": 1,  
	"x": 0,  
	"y": 0,  
	"color": "blue"  
}  

フィールド

名前 概要
x x座標の値 (0~63)
y y座標の値 (0~63)
color

ヘッダ

名前 概要
authorization 登録時に生成したアクセストークン