メインコンテンツまでスキップ

SantokuApp REST API (1.0.0)

Download OpenAPI specification:Download

SantokuAppのREST API。

System

CSRFトークンの取得

CSRFトークンを取得します。

Authorizations:
Session

Responses

Response samples

Content type
application/json
{
  • "csrfTokenValue": "string",
  • "csrfTokenHeaderName": "string",
  • "csrfTokenParameterName": "string"
}

アプリ更新情報の取得

指定されたアプリの種別・バージョン番号に対し、アップデートが必要かどうかの判断結果を返します。

サーバに設定されたバージョン番号と指定されたバージョン番号の比較でアップデートの要否が決定します。 大小比較はセマンティックバージョニングのルールに沿って実施されます。 実際に存在するバージョン番号かどうかは判断結果に影響しません。

次の場合はHTTPステータスコード404(Not Found)を応答します。

  • iosまたはandroid以外の種別が指定された場合
  • セマンティックバージョンとして認識されないバージョン番号が指定された場合
Authorizations:
Session
path Parameters
type
required
string
Enum: "ios" "android"

アプリの種別

version
required
string

アプリのバージョン番号

Responses

Response samples

Content type
application/json
No sample

Account

アカウントの登録

アカウントを登録します。アカウントの登録には、ニックネームとパスワードが必要です。

Authorizations:
Session
Request Body schema: application/json
nickname
required
string

アカウントのニックネーム

password
required
string

パスワード

Responses

Request samples

Content type
application/json
{
  • "nickname": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "profile": {
    },
  • "deviceTokens": [
    ]
}

ログインする

アカウントIDとパスワードを指定してログインします。

Authorizations:
Session
Request Body schema: application/json
accountId
required
string

アカウントID

password
required
string

パスワード

Responses

Request samples

Content type
application/json
{
  • "accountId": "30b65d82-8a64-4a3a-a097-031313f43c69",
  • "password": "f48ad168-68e7-4393-845e-e936795799d3"
}

Response samples

Content type
application/json
{
  • "status": "COMPLETE"
}

ログアウトする

ログアウトします。

Authorizations:
Session

Responses

Response samples

Content type
application/json
{
  • "code": "string",
  • "message": "string"
}

アカウントの取得

アカウントIDをキーとして登録されているアカウントを取得する。

Authorizations:
Session
path Parameters
accountId
required
string

アカウントのID

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "profile": {
    },
  • "deviceTokens": [
    ]
}

アバターを取得する

アバターを取得する。 サポートしているフォーマットは以下になります。

  • png
  • jpg
  • jpeg
  • bmp
  • gif
  • webp
Authorizations:
Session
path Parameters
accountId
required
string

アカウントのID

Responses

ログイン済みアカウントの取得

ログイン済みのアカウントを取得する。

Authorizations:
Session

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "profile": {
    },
  • "deviceTokens": [
    ]
}

ログイン済みアカウントのアバターを取得する

ログイン済みアカウントのアバターを取得する。 サポートしているフォーマットは以下になります。

  • png
  • jpg
  • jpeg
  • bmp
  • gif
  • webp
Authorizations:
Session

Responses

ログイン済みアカウントのアバターを登録する

ログイン済みアカウントのアバターを登録する。

Authorizations:
Session
Request Body schema: multipart/form-data
avatarImage
string <binary>

アバター画像

Responses

ログイン済みアカウントのデバイス登録トークンの更新

ログイン済みアカウントのデバイス登録トークンを更新する。

Authorizations:
Session
Request Body schema: application/json
newDeviceToken
string

登録するデバイス登録トークン

oldDeviceToken
string

削除するデバイス登録トークン

Responses

Request samples

Content type
application/json
{
  • "newDeviceToken": "string",
  • "oldDeviceToken": "string"
}

ログイン済みアカウントの利用規約同意状態確認

ログイン済みアカウントの有効な利用規約に同意しているかの状態を取得します。

Authorizations:
Session

Responses

Response samples

Content type
application/json
{
  • "hasAgreed": true,
  • "agreedVersion": "string"
}

ログイン済みアカウントの利用規約同意

ログイン済みアカウントにおいて、指定された利用規約のバージョンに同意します。

Authorizations:
Session
Request Body schema: application/json
agreedVersion
required
string

同意した利用規約のバージョン

Responses

Request samples

Content type
application/json
{
  • "agreedVersion": "string"
}

Response samples

Content type
application/json
{
  • "hasAgreed": true,
  • "agreedVersion": "string"
}

ログイン済みアカウント削除

ログイン済みアカウントを削除します。

アカウントの削除にパスワードを要求するので、DELETEメソッドではなくPOSTメソッドを利用しています。

参考: 4.3.5. DELETE - RFC 7231

A payload within a DELETE request message has no defined semantics; sending a payload body on a DELETE request might cause some existing implementations to reject the request.

Authorizations:
Session
Request Body schema: application/json
password
string

パスワード

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "code": "string",
  • "message": "string"
}

いいね済の取得

いいね済のイベント、質問、回答、コメントを取得します。

Authorizations:
Session

Responses

Response samples

Content type
application/json
[
  • {
    }
]

いいねの実施(イベント)

イベントに対するいいねを行います。

Authorizations:
Session
path Parameters
eventId
required
string

イベントID

Responses

いいねの取消(イベント)

イベントに対するいいねを取り消します。

Authorizations:
Session
path Parameters
eventId
required
string

イベントID

Responses

いいね済の取得(イベント)

特定のイベントについていいね済のイベントを取得します。いいね済の場合はイベントIDが返ります。

Authorizations:
Session
path Parameters
eventId
required
string

イベントID

Responses

Response samples

Content type
application/json
{
  • "eventId": "string"
}

いいねの実施(質問)

質問に対するいいねを行います。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

Responses

いいねの取消(質問)

質問に対するいいねを取り消します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

Responses

いいね済の取得(質問)

特定の質問についていいね済の質問および紐づく回答、コメントを取得します。いいね済の場合はIDが返ります。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

Responses

Response samples

Content type
application/json
{
  • "questionId": "string",
  • "liked": true,
  • "commentId": [
    ],
  • "answer": [
    ]
}

いいねの実施(質問コメント)

質問のコメントに対するいいねを行います。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

commentId
required
string

コメントID

Responses

いいねの取消(質問コメント)

質問のコメントに対するいいねを取り消します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

commentId
required
string

コメントID

Responses

いいねの実施(回答)

回答に対するいいねを行います。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

answerId
required
string

回答ID

Responses

いいねの取消(回答)

回答に対するいいねを取り消します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

answerId
required
string

回答ID

Responses

いいねの実施(回答コメント)

回答のコメントに対するいいねを行います。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

answerId
required
string

回答ID

commentId
required
string

コメントID

Responses

いいねの取消(回答コメント)

回答のコメントに対するいいねを取り消します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

answerId
required
string

回答ID

commentId
required
string

コメントID

Responses

Terms

有効な利用規約の取得

有効な利用規約を取得します。このAPIの呼び出しには認証情報は不要です。

Responses

Response samples

Content type
application/json
{
  • "version": "string",
  • "url": "string"
}

Event

イベント一覧取得

掲載期間中のイベントまたは全イベントの一覧を取得します。

Authorizations:
Session
query Parameters
target
required
string
Enum: "active" "all"

取得対象

Responses

Response samples

Content type
application/json
[
  • {
    }
]

イベント登録

イベントを登録します。

Authorizations:
Session
Request Body schema: application/json
title
required
string

イベントのタイトル

content
required
string

イベント内容

endDate
required
string <date>

掲載終了日

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "endDate": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "eventId": "string",
  • "title": "string",
  • "content": "string",
  • "endDate": "2019-08-24",
  • "likes": 0
}

イベント取得

特定のイベントを取得します。

Authorizations:
Session
path Parameters
eventId
required
string

イベントID

Responses

Response samples

Content type
application/json
{
  • "eventId": "string",
  • "title": "string",
  • "content": "string",
  • "endDate": "2019-08-24",
  • "likes": 0,
  • "accountId": "string",
  • "profile": {
    }
}

Question

質問一覧取得

質問の一覧を取得します。検索文言やソート条件を指定すると条件に合った質問のみの一覧を取得します。

Authorizations:
Session
query Parameters
keyword
string

検索文言

sort
string
Enum: "like" "update"

ソート順

filter
string
Enum: "unanswered" "outstanding"

絞り込み条件

tag
string

検索タグ

Responses

Response samples

Content type
application/json
[
  • {
    }
]

質問登録

質問を登録します。

Authorizations:
Session
Request Body schema: application/json
title
required
string

質問のタイトル

content
required
string

質問内容

tags
Array of strings

質問の設定するタグ

beginner
required
boolean

初心者か否か

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "tags": [
    ],
  • "beginner": true
}

Response samples

Content type
application/json
{
  • "questionId": "string",
  • "title": "string",
  • "content": "string",
  • "tags": [
    ],
  • "datetime": "2019-08-24T14:15:22Z",
  • "beginner": true,
  • "resolved": true,
  • "views": 0,
  • "answers": 0,
  • "likes": 0,
  • "comments": 0,
  • "lastUpdatedAt": "2019-08-24T14:15:22Z"
}

質問取得

特定の質問および紐づく回答とコメントを取得します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

Responses

Response samples

Content type
application/json
{
  • "question": {
    },
  • "answerList": [
    ]
}

回答登録

回答を登録します。

Authorizations:
Session
path Parameters
questionId
required
string
Request Body schema: application/json
content
required
string

回答内容

Responses

Request samples

Content type
application/json
{
  • "content": "string"
}

Response samples

Content type
application/json
{
  • "answerId": "string",
  • "content": "string",
  • "datetime": "2019-08-24T14:15:22Z",
  • "likes": 0,
  • "comments": 0
}

コメント登録(質問)

質問に対するコメントを登録します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

Request Body schema: application/json
content
required
string

コメント内容

Responses

Request samples

Content type
application/json
{
  • "content": "string"
}

Response samples

Content type
application/json
{
  • "commentId": "string",
  • "content": "string",
  • "datetime": "2019-08-24T14:15:22Z",
  • "likes": 0
}

コメント登録(回答)

回答に対するコメントを登録します。

Authorizations:
Session
path Parameters
questionId
required
string

質問ID

answerId
required
string

回答ID

Request Body schema: application/json
content
required
string

コメント内容

Responses

Request samples

Content type
application/json
{
  • "content": "string"
}

Response samples

Content type
application/json
{
  • "commentId": "string",
  • "content": "string",
  • "datetime": "2019-08-24T14:15:22Z",
  • "likes": 0
}

Tag

タグ一覧取得

タグの一覧を取得します。

Authorizations:
Session

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Notification

お知らせ一覧取得

お知らせの一覧を取得します。

Authorizations:
Session

Responses

Template

テンプレート一覧取得

入力のテンプレート一覧を取得します。

Authorizations:
Session

Responses

Response samples

Content type
application/json
[
  • {
    }
]