Download OpenAPI specification:
シーシャSNSアプリケーションのバックエンドAPI このAPIはシーシャの投稿、ユーザー管理を行います
メールアドレスとパスワードでログインし、JWT(Cookie)を発行する
ログイン情報
| email required | string |
| password required | string |
{- "email": "string",
- "password": "string"
}{- "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}
}新しいユーザーを登録する
ユーザー登録情報
| display_name | string |
| email required | string |
| password required | string >= 12 characters |
{- "display_name": "string",
- "email": "string",
- "password": "stringstring"
}{- "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}
}{- "posts": [
- {
- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}
], - "total": 0
}新しい投稿を作成します(認証必須)。注意: slides内のflavor_idが無効な場合、そのスライドはFlavorなしで作成されます(エラーにはなりません)
投稿情報
required | Array of objects (go-shisha-backend_internal_models.SlideInput) [ 1 .. 10 ] items |
{- "slides": [
- {
- "flavor_id": 0,
- "image_url": "string",
- "text": "string"
}
]
}{- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}指定されたIDの投稿情報を取得します。認証済みの場合、いいね状態(is_liked)を含みます
| id required | integer 投稿ID |
{- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}指定された投稿のスライドのテキスト・フレーバーを更新します(認証必須・投稿所有者のみ)。各スライドは id で更新対象を指定します。全上書き型のため、全スライドの全フィールドを送信してください。text を省略すると空文字、flavor_id を省略または null で渡すとフレーバーが解除されます。
| id required | integer 投稿ID |
更新内容
required | Array of objects (go-shisha-backend_internal_models.UpdateSlideInput) [ 1 .. 10 ] items |
{- "slides": [
- {
- "flavor_id": 1,
- "id": 12,
- "text": "string"
}
]
}{- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}指定された投稿にいいねを追加します(認証必須)
| id required | integer 投稿ID |
{- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}指定された投稿のいいねを取り消します(認証必須)
| id required | integer 投稿ID |
{- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}{- "posts": [
- {
- "created_at": "string",
- "id": 0,
- "is_liked": true,
- "likes": 0,
- "slides": [
- {
- "flavor": {
- "color": "string",
- "id": 0,
- "name": "string"
}, - "id": 0,
- "image_url": "string",
- "text": "string"
}
], - "user": {
- "description": "string",
- "display_name": "string",
- "email": "string",
- "external_url": "string",
- "icon_url": "string",
- "id": 0
}, - "user_id": 0
}
], - "total": 0
}