docker.io アカウント API¶
ユーザ情報を取得¶
GET /api/v1.1/users/:username/
特定のユーザに関するプロフィールを取得します。
パラメータ:
- username … リクエスト対象のユーザのユーザ名
リクエスト・ヘッダ:
- Authorization … 認証のために必要となる HTTP Basic 認証の情報か OAuth Bearer トークン
ステータス・コード:
- 200 … 成功。ユーザのデータを返す
- 401 … 認証エラー
- 403 … 権限エラー。リクエストのためには適切な認証データが必要。Oauth アクセス・トークンの場合は
profile_read
スコープが必要 - 404 … 指定したユーザ名が存在しない
リクエスト例 :
GET /api/v1.1/users/janedoe/ HTTP/1.1
Host: www.docker.io
Accept: application/json
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
応答例 :
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 2,
"username": "janedoe",
"url": "https://www.docker.io/api/v1.1/users/janedoe/",
"date_joined": "2014-02-12T17:58:01.431312Z",
"type": "User",
"full_name": "Jane Doe",
"location": "San Francisco, CA",
"company": "Success, Inc.",
"profile_url": "https://docker.io/",
"gravatar_url": "https://secure.gravatar.com/avatar/0212b397124be4acd4e7dea9aa357.jpg?s=80&r=g&d=mm"
"email": "jane.doe@example.com",
"is_active": true
}
PATCH /api/v1.1/users/:username/
特定のユーザのプロフィール情報を更新します。
パラメータ:
- username … プロフィールを更新するユーザのユーザ名
JSON パラメータ:
- full_name (文字列) … (オプション)ユーザの新しい名前
- location (文字列) … (オプション)新しい場所
- company (文字列) … (オプション)ユーザの新しい会社
- profile_url (文字列) … (オプション)新しいプロフィール URL
- gravatar_email (文字列) … (オプション)新しい Gravatar メールアドレス
リクエスト・ヘッダ:
- Authorization … 認証のために必要となる HTTP Basic 認証の情報か OAuth Bearer トークン
- Content-Type … JSON、 url エンコード形式のデータ等、ポストする MIME タイプ
ステータス・コード:
- 200 … 成功。ユーザのデータを返す
- 400 … POST するデータ形式が無効
- 401 … 認証エラー
- 403 … 権限エラー。リクエストのためには適切な認証データが必要。Oauth アクセス・トークンの場合は
profile_read
スコープが必要 - 404 … 指定したユーザ名が存在しない
リクエスト例 :
PATCH /api/v1.1/users/janedoe/ HTTP/1.1
Host: www.docker.io
Accept: application/json
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
{
"location": "Private Island",
"profile_url": "http://janedoe.com/",
"company": "Retired",
}
応答例 :
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 2,
"username": "janedoe",
"url": "https://www.docker.io/api/v1.1/users/janedoe/",
"date_joined": "2014-02-12T17:58:01.431312Z",
"type": "User",
"full_name": "Jane Doe",
"location": "Private Island",
"company": "Retired",
"profile_url": "http://janedoe.com/",
"gravatar_url": "https://secure.gravatar.com/avatar/0212b397124be4acd4e7dea9aa357.jpg?s=80&r=g&d=mm"
"email": "jane.doe@example.com",
"is_active": true
}
ユーザのメールアドレス一覧¶
GET /api/v1.1/users/:username/emails/
特定のユーザのメール情報一覧を表示。
- username … メール情報を表示したいユーザのユーザ名
リクエスト・ヘッダ:
- Authorization … 認証のために必要となる HTTP Basic 認証の情報か OAuth Bearer トークン
ステータス・コード:
- 200 … 成功。ユーザのデータを返す
- 401 … 認証エラー
- 403 … 権限エラー。リクエストのためには適切な認証データが必要。Oauth アクセス・トークンの場合は
profile_read
スコープが必要 - 404 … 指定したユーザ名が存在しない
リクエスト例 :
GET /api/v1.1/users/janedoe/emails/ HTTP/1.1
Host: www.docker.io
Accept: application/json
Authorization: Bearer zAy0BxC1wDv2EuF3tGs4HrI6qJp6KoL7nM
応答例 :
HTTP/1.1 200 OK
Content-Type: application/json
[
{
"email": "jane.doe@example.com",
"verified": true,
"primary": true
}
]
ユーザにメールアドレスを追加¶
POST /api/v1.1/users/:username/emails/
特定のユーザ・アカウントに対して新しいメールアドレスを追加します。メールアドレスは個々に確認されたものであるとし、確認用のメールは自動的に送信されません。
JSON パラメータ:
- email (文字列) … メールアドレスが追加されます。
リクエスト・ヘッダ:
- Authorization … 認証のために必要となる HTTP Basic 認証の情報か OAuth Bearer トークン
- Content-Type … JSON、 url エンコード形式のデータ等、ポストする MIME タイプ
ステータス・コード:
- 200 … 成功。ユーザのデータを返す
- 400 … POST するデータ形式が無効
- 401 … 認証エラー
- 403 … 権限エラー。リクエストのためには適切な認証データが必要。Oauth アクセス・トークンの場合は
profile_read
スコープが必要 - 404 … 指定したユーザ名が存在しない。
リクエスト例 :
POST /api/v1.1/users/janedoe/emails/ HTTP/1.1
Host: www.docker.io
Accept: application/json
Content-Type: application/json
Authorization: Bearer zAy0BxC1wDv2EuF3tGs4HrI6qJp6KoL7nM
{
"email": "jane.doe+other@example.com"
}
応答例 :
HTTP/1.1 201 Created
Content-Type: application/json
{
"email": "jane.doe+other@example.com",
"verified": false,
"primary": false
}
ユーザのメールアドレスを削除¶
DELETE /api/v1.1/users/:username/emails/
特定のユーザ・アカウントに登録されているメールアドレスを削除します。ユーザのプライマリ・メールアドレスは削除できません。
JSON パラメータ:
- email (文字列) … メールアドレスが追加されます。
リクエスト・ヘッダ:
- Authorization … 認証のために必要となる HTTP Basic 認証の情報か OAuth Bearer トークン
- Content-Type … JSON、 url エンコード形式のデータ等、ポストする MIME タイプ
ステータス・コード:
- 200 … 成功。ユーザのデータを返す
- 400 … POST するデータ形式が無効
- 401 … 認証エラー
- 403 … 権限エラー。リクエストのためには適切な認証データが必要。Oauth アクセス・トークンの場合は
profile_read
スコープが必要 - 404 … 指定したユーザ名が存在しない。
リクエスト例 :
DELETE /api/v1.1/users/janedoe/emails/ HTTP/1.1
Host: www.docker.io
Accept: application/json
Content-Type: application/json
Authorization: Bearer zAy0BxC1wDv2EuF3tGs4HrI6qJp6KoL7nM
{
"email": "jane.doe+other@example.com"
}
応答例 :
HTTP/1.1 204 NO CONTENT
Content-Length: 0
参考
- docker.io accounts API
- https://docs.docker.com/engine/reference/api/docker_io_accounts_api/