Download OpenAPI specification:
企業一覧を返す。
| quantity | integer >= 1 一度に取得する数。省略した場合は全件。 |
{- "companies": [
- {
- "id": 1,
- "name": "株式会社サンプル",
- "priority": 3,
- "currentSelection": {
- "title": "本選考",
- "step": {
- "id": 1,
- "name": "一次面接",
- "status": "PENDING"
}
}, - "latestActivity": "企業がスカウト"
}
]
}企業を新規作成する。
| name required | string (CompanyName) [ 1 .. 50 ] characters 企業名 |
| priority required | integer <int32> (CompanyPriority) [ 1 .. 7 ] 志望度(1~5:第1~第5志望、6:未分類、7:アーカイブ) |
{- "name": "株式会社サンプル",
- "priority": 3
}{- "companyId": 1
}指定した企業の詳細情報を返す。
| companyId required | integer <int32> 企業ID |
{- "name": "株式会社サンプル",
- "priority": 2,
- "showBasicInfoWidget": true,
- "showSelectionWidget": true,
- "basicInfos": [
- {
- "id": 1,
- "title": "従業員数",
- "text": "200人"
}
], - "activities": [
- {
- "id": 1,
- "occurredAt": "2026-10-15T10:00:00+09:00",
- "text": "説明会の案内を受け取った。"
}
], - "selections": [
- {
- "id": 2,
- "title": "インターン選考",
- "steps": [
- {
- "id": 1,
- "status": "PENDING",
- "name": "一次面接",
- "note": "事前に志望理由を整理する。"
}
]
}
], - "activeSelectionId": 2,
- "document": "# 企業研究\n事業内容と志望理由を整理する。",
- "events": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "category": "SESSION",
- "title": "企業説明会",
- "note": "事前に提出書類を確認する。",
- "isAllDay": false,
- "startDay": null,
- "endDay": null,
- "startTime": "2026-10-15T10:00:00+09:00",
- "endTime": "2026-10-15T11:00:00+09:00",
- "isOnline": true,
- "isAttending": true
}
], - "tasks": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "title": "エントリーシートを提出する",
- "note": "事前に提出書類を確認する。",
- "deadline": "2026-10-15",
- "done": false
}
]
}企業を指定した志望度・並び順へ移動する。
| companyId required | integer <int32> 企業ID |
| priority required | integer <int32> (CompanyPriority) [ 1 .. 7 ] 志望度(1~5:第1~第5志望、6:未分類、7:アーカイブ) |
| nextCompanyId | integer or null <int32> 移動後の1個後ろの企業のID(末尾に置く場合はnull) |
{- "priority": 3,
- "nextCompanyId": 2
}指定した企業の文書を置き換える。
| companyId required | integer <int32> 企業ID |
| document required | string (DocumentText) [ 0 .. 50000 ] characters Markdown形式の文書 |
{- "document": "string"
}指定したウィジェットの表示/非表示を更新する。
| companyId required | integer <int32> 企業ID |
| basicInfo | boolean true:基本情報ウィジェットを表示 / false:非表示 |
| selection | boolean true:選考状況ウィジェットを表示 / false:非表示 |
{- "basicInfo": true
}指定した企業の選考を新規作成する。
| companyId required | integer <int32> 企業ID |
| title required | string (SelectionTitle) [ 1 .. 50 ] characters 選考の名称 |
required | Array of objects (SelectionStepRequest) 選考ステップ一覧 |
{- "title": "本選考",
- "steps": [
- {
- "name": "一次面接",
- "note": "事前に提出書類を確認する。"
}
]
}{- "selectionId": 1,
- "selectionStepIds": [
- 1
]
}指定した選考を部分更新する。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| title required | string (SelectionTitle) [ 1 .. 50 ] characters 選考の名称 |
{- "title": "string"
}指定した選考の選考ステップを新規作成する。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| nextSelectionStepId required | integer or null <int32> 1個後ろの選考ステップのID(末尾の場合はnull) |
| name required | string (SelectionStepName) [ 1 .. 50 ] characters 選考ステップ名 |
| note | string or null (SelectionStepNote) [ 0 .. 2000 ] characters 選考ステップの詳細メモ |
{- "nextSelectionStepId": 0,
- "name": "string",
- "note": "string"
}{- "selectionStepId": 0
}指定した選考が進行中かどうかを更新する。他の選考が進行中に設定されている場合、解除する。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| isActive required | boolean true:進行中の選考(一つの企業に対し一つのみ) |
{- "isActive": true
}指定した選考ステップの情報を部分更新する。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| selectionStepId required | integer <int32> 選考ステップID |
| name | string (SelectionStepName) [ 1 .. 50 ] characters 選考ステップ名 |
| note | string or null (SelectionStepNote) [ 0 .. 2000 ] characters 選考ステップの詳細メモ |
{- "name": "二次面接",
- "note": "事前に提出書類を確認する。"
}選考ステップの並び順を更新する。currentStepより前の選考ステップはPASSED、後の選考ステップはNOT_STARTEDとなる。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| selectionStepId required | integer <int32> 選考ステップID |
| nextSelectionStepId | integer or null <int32> 移動先の1個後ろの選考ステップのID(null:末尾に移動) |
{- "nextSelectionStepId": 0
}指定した選考ステップの状態を更新する。これより前のステップの状態をすべてPASSED、後のステップの状態をすべてNOT_STARTEDに更新する。
| companyId required | integer <int32> 企業ID |
| selectionId required | integer <int32> 選考ID |
| selectionStepId required | integer <int32> 選考ステップID |
| status required | string (SelectionStatus) [ 6 .. 11 ] characters Enum: "NOT_STARTED" "PENDING" "PASSED" "FAILED" 選考状況(NOT_STARTED:未受験 / PENDING:結果待ち / PASSED:合格 / FAILED:不合格) |
{- "status": "NOT_STARTED"
}指定した企業の基本情報を新規作成する。
| companyId required | integer <int32> 企業ID |
| title required | string (BasicInfoTitle) [ 1 .. 50 ] characters 基本情報の項目名 |
| text required | string (BasicInfoText) [ 0 .. 500 ] characters 基本情報の内容 |
{- "title": "従業員数",
- "text": "200人"
}{- "basicInfoId": 1
}指定した基本情報を部分更新する。
| companyId required | integer <int32> 企業ID |
| basicInfoId required | integer <int32> 基本情報ID |
| title | string (BasicInfoTitle) [ 1 .. 50 ] characters 基本情報の項目名 |
| text | string (BasicInfoText) [ 0 .. 500 ] characters 基本情報の内容 |
{- "text": "300人"
}指定した企業とのやりとり履歴を新規作成する。
| companyId required | integer <int32> 企業ID |
| byUser required | boolean true:ユーザー側から / false:企業側から |
| text required | string (ActivityText) [ 1 .. 500 ] characters やりとりの内容 |
{- "byUser": true,
- "text": "説明会の案内を受け取った。"
}{- "activityId": 1
}指定したページのやりとりを20件取得する。
| companyId required | integer <int32> 企業ID |
| page | integer >= 0 Default: 0 ページ番号(0始まり)。省略した場合は0。 |
{- "activities": [
- {
- "id": 0,
- "occurredAt": "2019-08-24T14:15:22Z",
- "byUser": true,
- "text": "string"
}
]
}指定したやりとり履歴を部分更新する。
| companyId required | integer <int32> 企業ID |
| activityId required | integer <int32> やりとり履歴ID |
| occurredAt | string <date-time> やりとりが発生した日時 |
| byUser | boolean true:ユーザー側から / false:企業側から |
| text | string (ActivityText) [ 1 .. 500 ] characters やりとりの内容 |
{- "text": "説明会の案内を受け取った。"
}指定した年月のイベント一覧を返す。年月を省略した場合は現在の年月を対象とする。
| month | string = 7 characters ^[0-9]{4}-(0[1-9]|1[0-2])$ Example: month=2026-10 取得対象の年月(YYYY-MM)。省略した場合は現在の年月。 |
| companyId | integer <int32> 紐づく企業のID。省略した場合は企業で絞らない。 |
{- "events": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "category": "SESSION",
- "title": "企業説明会",
- "note": "事前に提出書類を確認する。",
- "isAllDay": false,
- "startDay": null,
- "endDay": null,
- "startTime": "2026-10-15T10:00:00+09:00",
- "endTime": "2026-10-15T11:00:00+09:00",
- "isOnline": true,
- "isAttending": true
}
]
}イベントを新規作成する。
| companyId | integer or null <int32> 関連する企業のID |
| category required | string (EventCategory) [ 4 .. 10 ] characters Enum: "SESSION" "INTERVIEW" "CHAT" "INTERNSHIP" "OTHER" イベントの種類。SESSIONは説明会、CHATはカジュアル面談、INTERVIEWは面接、INTERNSHIPはインターン、OTHERはその他 |
| title required | string (EventTitle) [ 1 .. 100 ] characters イベント名 |
| note | string or null (EventNote) [ 0 .. 2000 ] characters イベントの詳細メモ |
| isAllDay required | boolean true:終日予定(startDayとendDayを使用) / false:時間指定の予定(startTimeとendTimeを使用) |
| startDay required | string or null <date> 終日予定の開始日(時間指定の予定ではnull) |
| endDay required | string or null <date> 終日予定の終了日(開始日以降。時間指定の予定ではnull) |
| startTime required | string or null <date-time> 時間指定の予定の開始日時(終日予定ではnull) |
| endTime required | string or null <date-time> 時間指定の予定の終了日時(開始日時より後。終日予定ではnull) |
| isOnline required | boolean true:オンライン開催 / false:オフライン開催 |
| isAttending required | boolean or null true:参加確定(SESSION / INTERNSHIP / OTHERで使用、CHAT / INTERVIEWではnull) |
{- "companyId": 1,
- "category": "SESSION",
- "title": "企業説明会",
- "note": "事前に提出書類を確認する。",
- "isAllDay": false,
- "startDay": null,
- "endDay": null,
- "startTime": "2026-10-15T10:00:00+09:00",
- "endTime": "2026-10-15T11:00:00+09:00",
- "isOnline": true,
- "isAttending": true
}{- "eventId": 1
}指定したイベントを部分更新する。
| eventId required | integer <int32> イベントID |
| companyId | integer or null <int32> 関連する企業のID |
| category | string (EventCategory) [ 4 .. 10 ] characters Enum: "SESSION" "INTERVIEW" "CHAT" "INTERNSHIP" "OTHER" イベントの種類。SESSIONは説明会、CHATはカジュアル面談、INTERVIEWは面接、INTERNSHIPはインターン、OTHERはその他 |
| title | string (EventTitle) [ 1 .. 100 ] characters イベント名 |
| note | string or null (EventNote) [ 0 .. 2000 ] characters イベントの詳細メモ |
| isAllDay | boolean true:終日予定(startDayとendDayを使用) / false:時間指定の予定(startTimeとendTimeを使用) |
| startDay | string or null <date> 終日予定の開始日(時間指定の予定ではnull) |
| endDay | string or null <date> 終日予定の終了日(開始日以降。時間指定の予定ではnull) |
| startTime | string or null <date-time> 時間指定の予定の開始日時(終日予定ではnull) |
| endTime | string or null <date-time> 時間指定の予定の終了日時(開始日時より後。終日予定ではnull) |
| isOnline | boolean true:オンライン開催 / false:オフライン開催 |
| isAttending | boolean or null true:参加確定(SESSION / INTERNSHIP / OTHERで使用、CHAT / INTERVIEWではnull) |
{- "note": "事前に提出書類を確認する。"
}タスク一覧を返す。
| quantity | integer >= 1 一度に取得する数。省略した場合は全件。 |
| companyId | integer <int32> 紐づく企業のID。省略した場合は企業で絞らない。 |
{- "tasks": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "title": "エントリーシートを提出する",
- "note": "事前に提出書類を確認する。",
- "deadline": "2026-10-15",
- "done": false
}
]
}タスクを新規作成する。
| companyId | integer or null <int32> 関連する企業のID |
| title required | string (TaskTitle) [ 1 .. 200 ] characters タスク概要 |
| note | string or null (TaskNote) [ 0 .. 2000 ] characters タスクの詳細メモ |
| deadline required | string or null <date> 期限の日付(YYYY-MM-DD) |
{- "companyId": 1,
- "title": "エントリーシートを提出する",
- "note": "事前に提出書類を確認する。",
- "deadline": "2026-10-15"
}{- "taskId": 1
}指定したタスクを部分更新する。
| taskId required | integer <int32> タスクID |
| companyId | integer or null <int32> 関連する企業のID |
| title | string (TaskTitle) [ 1 .. 200 ] characters タスク概要 |
| note | string or null (TaskNote) [ 0 .. 2000 ] characters タスクの詳細メモ |
| deadline | string or null <date> 期限の日付(YYYY-MM-DD) |
| done | boolean true:完了 / false:未完了 |
{- "note": "事前に提出書類を確認する。"
}ESグループを新規作成する。
| name required | string (EssayGroupName) [ 1 .. 50 ] characters ESグループ名 |
{- "name": "ガクチカ"
}{- "essayGroupId": 1
}指定したESグループを部分更新する。
| essayGroupId required | string ESグループIDまたはunclassified |
| name | string (EssayGroupName) [ 1 .. 50 ] characters ESグループ名 |
{- "name": "ガクチカ"
}指定したESグループのES一覧を返す。
| essayGroupId required | string ESグループIDまたはunclassified |
{- "essays": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "question": "学生時代に力を入れたことを教えてください。",
- "answer": "学内イベントの運営を担当し、参加者の満足度向上に取り組みました。"
}
]
}ESグループの並び順を更新する。
| essayGroupId required | string ESグループIDまたはunclassified |
| nextEssayGroupId | integer or null <int32> 移動先の1個後ろのESグループのID(null:末尾に移動) |
{- "nextEssayGroupId": 0
}指定したESグループに属するESを新規作成する。
| essayGroupId required | string ESグループIDまたはunclassified |
| companyId | integer or null <int32> 関連する企業のID |
| question required | string (EssayQuestion) [ 1 .. 1000 ] characters ESの設問 |
| answer required | string (EssayAnswer) [ 0 .. 5000 ] characters 設問に対する回答 |
{- "companyId": 1,
- "question": "学生時代に力を入れたことを教えてください。",
- "answer": "学内イベントの運営を担当し、参加者の満足度向上に取り組みました。"
}{- "essayId": 1
}指定したESを部分更新する。
| essayGroupId required | string ESグループIDまたはunclassified |
| essayId required | integer <int32> ESのID |
| essayGroupId | integer or null <int32> ESグループのID |
| companyId | integer or null <int32> 関連する企業のID |
| question | string (EssayQuestion) [ 1 .. 1000 ] characters ESの設問 |
| answer | string (EssayAnswer) [ 0 .. 5000 ] characters 設問に対する回答 |
{- "answer": "学内イベントの運営を担当し、参加者の満足度向上に取り組みました。"
}指定した文書のタイトルまたは本文を更新する。
| documentId required | integer <int32> 文書ID |
| title | string (DocumentTitle) [ 1 .. 50 ] characters 文書のタイトル |
| text | string (DocumentText) [ 0 .. 50000 ] characters Markdown形式の文書 |
{- "title": "面接対策"
}アカウントを新規作成する。
| email required | string <email> (Email) メールアドレス |
| password required | string <password> (Password) パスワード |
{- "email": "user@example.com",
- "password": "SamplePassword123!"
}{- "userId": 1
}メールアドレスとパスワードでログインする。アクセストークンを返し、リフレッシュトークンをHttpOnly Cookieに設定する。
| email required | string <email> (Email) メールアドレス |
| password required | string <password> (Password) パスワード |
{- "email": "user@example.com",
- "password": "SamplePassword123!"
}{- "accessToken": "example-access-token"
}指定したユーザーのパスワードを更新する。
| oldPassword required | string <password> (Password) パスワード |
| newPassword required | string <password> (Password) パスワード |
{- "oldPassword": "oldPassword123",
- "newPassword": "newPassword123"
}{- "counts": {
- "companies": 20,
- "undoneTasks": 5,
- "upcomingEvents": 10,
- "essays": 30
}, - "tasks": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "title": "エントリーシートを提出する",
- "note": "事前に提出書類を確認する。",
- "deadline": "2026-10-15",
- "done": false
}
], - "companies": [
- {
- "id": 1,
- "name": "株式会社サンプル",
- "priority": 3,
- "currentSelection": {
- "title": "本選考",
- "step": {
- "id": 1,
- "name": "一次面接",
- "status": "PENDING"
}
}, - "latestActivity": "企業がスカウト"
}
], - "events": [
- {
- "id": 1,
- "companyName": "株式会社サンプル",
- "category": "SESSION",
- "title": "企業説明会",
- "note": "事前に提出書類を確認する。",
- "isAllDay": false,
- "startDay": null,
- "endDay": null,
- "startTime": "2026-10-15T10:00:00+09:00",
- "endTime": "2026-10-15T11:00:00+09:00",
- "isOnline": true,
- "isAttending": true
}
]
}