openapi: 3.0.1 info: title: NUTFes FinanSu API description: FinanSu APIドキュメント contact: {} version: 2.0.0 servers: - url: http://localhost:1323/ paths: /: get: tags: - health description: health check responses: "200": description: OK content: application/json: schema: type: string /activities: get: tags: - activity description: activitiesの一覧を取得 responses: "200": description: activitiesの一覧の取得 content: application/json: schema: type: object post: tags: - activity description: activitiesの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/activity" required: true responses: "200": description: create されたactivityが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity /activities/details: get: tags: - activity description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" responses: "200": description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" content: application/json: schema: type: object /activities/details/{year}: get: tags: - activity description: "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得" parameters: - name: year in: path description: year required: true schema: type: integer responses: "200": description: "年度で指定されたactivitiesとsponsor,sponsorStyle,userの一覧を取得" content: application/json: schema: type: object /activities/filtered_details: get: tags: - activity description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" parameters: - name: is_done in: query description: 完了状態を表すフラグ required: false schema: type: string enum: - all - true - false - name: sponsor_style_id in: query description: スポンサースタイルIDの配列 required: false schema: type: array items: type: integer example: 1 - name: keyword in: query description: キーワード検索用の文字列 required: false schema: type: string responses: "200": description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" content: application/json: schema: type: object x-codegen-request-body-name: keyword /activities/filtered_details/{year}: get: tags: - activity description: "activitiesとsponsor,sponsorStyle,userの一覧を取得" parameters: - name: year in: path description: Filter by year. required: true schema: type: string - name: is_done in: query description: 完了状態を表すフラグ required: false schema: type: string enum: - all - true - false - name: sponsor_style_id in: query description: スポンサースタイルIDの配列 schema: type: array items: type: integer example: 1 - name: keyword in: query description: キーワード検索用の文字列 required: false schema: type: string responses: "200": description: "activitiesとsponsor,sponsorStyle,userの一覧の取得" content: application/json: schema: type: object x-codegen-request-body-name: keyword /activities/{id}: get: tags: - activity description: IDで指定されたactivitiesの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activitiesの取得 content: application/json: schema: type: object put: tags: - activity description: activitiesの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/activity" required: false responses: "200": description: 更新されたactivitiesが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity delete: tags: - activity description: IDを指定してactivitiesの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activitiesの削除完了 content: application/json: schema: type: object /activity_informations: get: tags: - activity_information description: activity_informationの一覧を取得 responses: "200": description: activity_informationの一覧の取得 content: application/json: schema: type: object post: tags: - activity_information description: activity_informationの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/activity_information" required: false responses: "200": description: create されたactivity_informationが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity_information /activity_informations/{id}: get: tags: - activity_information description: IDで指定されたactivity_informationsの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activity_informationの取得 content: application/json: schema: type: object put: tags: - activity_information description: activity_informationの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/activity_information" required: false responses: "200": description: 更新されたactivity_informationが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity_information delete: tags: - activity_information description: IDを指定してactivity_informationの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activity_informationの削除完了 content: application/json: schema: type: object /activity_styles: get: tags: - activity_style description: activity_styleの一覧を取得 responses: "200": description: activity_styleの一覧の取得 content: application/json: schema: type: object post: tags: - activity_style description: activity_styleの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/activity_style" required: false responses: "200": description: createされたactivity_styleが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity_style /activity_styles/{id}: get: tags: - activity_style description: IDで指定されたactivity_styleの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activity_styleの取得 content: application/json: schema: type: object put: tags: - activity_style description: activity_styleの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/activity_style" required: false responses: "200": description: 更新されたactivity_styleが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: activity_style delete: tags: - activity_style description: IDを指定してactivity_styleの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: activity_styleの削除完了 content: application/json: schema: type: object /bureaus: get: tags: - bureau description: bureauの一覧を取得 responses: "200": description: bureauの一覧の取得 content: application/json: schema: type: object post: tags: - bureau description: bureauの作成 parameters: - name: name in: query description: name required: true schema: type: string responses: "200": description: create されたbureauが返ってくる content: application/json: schema: type: object /bureaus/{id}: get: tags: - bureau description: IDで指定されたbureauの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: bureauの取得 content: application/json: schema: type: object put: tags: - bureau description: bureauの更新 parameters: - name: id in: path description: id required: true schema: type: integer - name: name in: query description: name schema: type: string responses: "200": description: 更新されたbureauが返ってくる content: application/json: schema: type: object delete: tags: - bureau description: IDを指定してbureauの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: bureauの削除完了 content: application/json: schema: type: object /buy_reports: post: tags: - buy_report description: 購入報告を行うAPI requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary buy_report: $ref: "#/components/schemas/buyReport" required: - file - buy_report responses: "200": description: 作成されたbuy_reportが返ってくる content: application/json: schema: $ref: "#/components/schemas/buyReport" /buy_reports/{id}: get: tags: - buy_report description: IDで指定されたbuy_reportの取得(購入報告編集用) parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: buy_reportの取得 content: application/json: schema: $ref: "#/components/schemas/buyReportWithDivisionId" put: tags: - buy_report description: 購入報告を修正するAPI、画像がある場合は画像も更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary description: 購入報告書のファイル、ない場合更新しないようにする buy_report: $ref: "#/components/schemas/buyReport" required: - buy_report required: true responses: "200": description: 更新されたbuy_reportが返ってくる content: application/json: schema: $ref: "#/components/schemas/buyReport" x-codegen-request-body-name: buy_report delete: tags: - buy_report description: IDを指定してbuy_reportの削除、紐づいた画像も削除、マイページから削除できる parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: buy_reportの削除完了 content: application/json: schema: type: object /buy_reports/details: get: tags: - buy_report description: 購入報告で表示するbuy_report一覧の取得、主に財務向けのページ parameters: - name: year in: query description: year schema: type: integer - name: financial_record_id in: query description: financial_records.id での完全一致フィルタ required: false schema: type: integer - name: paid_by in: query description: buy_reports.paid_by での完全一致フィルタ required: false schema: type: string - name: paid_by_user_id in: query description: buy_reports.paid_by_user_id での完全一致フィルタ required: false schema: type: integer responses: "200": description: buy_reportの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/buyReportDetail" /buy_reports/summary: get: tags: - buy_report description: 購入報告一覧の未精算/未封詰め合計を返す parameters: - name: year in: query description: year required: true schema: type: integer - name: financial_record_id in: query description: financial_records.id での完全一致フィルタ required: false schema: type: integer - name: paid_by in: query description: buy_reports.paid_by での完全一致フィルタ required: false schema: type: string - name: paid_by_user_id in: query description: buy_reports.paid_by_user_id での完全一致フィルタ required: false schema: type: integer responses: "200": description: 条件に一致する購入報告のサマリ content: application/json: schema: $ref: "#/components/schemas/buyReportSummary" /buy_report/status/{buy_report_id}: put: tags: - buy_report description: buy_reportのステータス更新、財務が封詰め、精算済みにするAPI parameters: - name: buy_report_id in: path description: buy_report_id required: true schema: type: integer requestBody: content: application/json: schema: type: object properties: isPacked: type: boolean example: false description: 封筒に詰めたか isSettled: type: boolean example: false description: 精算済みか responses: "200": description: 更新されたbuy_reportが返ってくる content: application/json: schema: $ref: "#/components/schemas/buyReportDetail" /buy_reports/csv/download: get: tags: - buy_report description: 購入報告一覧のCSVダウンロード、財務向けのページ parameters: - name: year in: query description: year schema: type: integer - name: financial_record_id in: query description: financial_records.id での完全一致フィルタ required: false schema: type: integer - name: paid_by in: query description: buy_reports.paid_by での完全一致フィルタ required: false schema: type: string - name: paid_by_user_id in: query description: buy_reports.paid_by_user_id での完全一致フィルタ required: false schema: type: integer responses: "200": description: buy_reportのCSVダウンロード content: text/csv: schema: type: string format: binary /current_user: get: tags: - user description: 現在ログインしているユーザーの情報を取得 parameters: - in: header name: Access-Token schema: type: string responses: "200": description: 現在ログインしているユーザーの情報を取得 content: application/json: schema: $ref: "#/components/schemas/user" /departments: get: tags: - department description: departmentの一覧の取得 responses: "200": description: departmentの一覧を取得 content: application/json: schema: type: object post: tags: - department description: departmentの作成 parameters: - name: name in: query description: name schema: type: string responses: "200": description: 作成されたdepartmentが返ってくる content: application/json: schema: type: object /departments/{id}: get: tags: - department description: IDで指定されたdepartmentの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: departmentの取得 content: application/json: schema: type: object put: tags: - department description: departmentの更新 parameters: - name: id in: path description: id required: true schema: type: integer - name: name in: query description: name schema: type: string responses: "200": description: 更新されたdepartmentが返ってくる content: application/json: schema: type: object delete: tags: - department description: IDを指定してdepartmentの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: departmentの削除完了 content: application/json: schema: type: object /divisions: get: tags: - division description: division一覧の取得 クエリでyearを指定することで年度ごとのdivisionを取得可能 parameters: - name: year in: query description: year schema: type: integer - name: financial_record_id in: query description: financial_record_id schema: type: integer responses: "200": description: divisionの一覧を取得 content: application/json: schema: $ref: "#/components/schemas/divisionDetails" post: tags: - division description: divisionの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/division" required: true responses: "200": description: 作成されたdivisionが返ってくる content: application/json: schema: $ref: "#/components/schemas/divisionWithBalance" /divisions/{id}: get: tags: - division description: IDで指定されたdivisionの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: divisionの取得 content: application/json: schema: $ref: "#/components/schemas/division" put: tags: - division description: divisionの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/division" required: true responses: "200": description: 更新されたdivisionが返ってくる content: application/json: schema: $ref: "#/components/schemas/divisionWithBalance" x-codegen-request-body-name: division delete: tags: - division description: IDを指定してdivisionの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: divisionの削除完了 content: application/json: schema: type: object /divisions/users: get: tags: - division description: 購入報告ページの部門一覧の取得 parameters: - name: year in: query description: 年度 schema: type: integer - name: user_id in: query description: ユーザーid schema: type: integer required: true responses: "200": description: ユーザー所属の部門の一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/divisionOption" /divisions/years: get: tags: - division description: 年度ごとのdivisionの一覧を取得 parameters: - name: year in: query description: year schema: type: integer responses: "200": description: 年度ごとのdivisionの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/divisionOption" /festival_items: get: tags: - festival_item description: festival_itemの一覧の取得 parameters: - name: year in: query description: year schema: type: integer - name: division_id in: query description: division_id schema: type: integer responses: "200": description: festival_itemの一覧を取得 content: application/json: schema: $ref: "#/components/schemas/festivalItemDetails" post: tags: - festival_item description: festival_itemの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/festivalItem" required: true responses: "200": description: 作成されたfestival_itemが返ってくる content: application/json: schema: $ref: "#/components/schemas/festivalItemWithBalance" /festival_items/{id}: get: tags: - festival_item description: IDで指定されたfestival_itemの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: festival_itemの取得 content: application/json: schema: $ref: "#/components/schemas/festivalItem" put: tags: - festival_item description: festival_itemの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/festivalItem" required: true responses: "200": description: 更新されたfestival_itemが返ってくる content: application/json: schema: $ref: "#/components/schemas/festivalItemWithBalance" x-codegen-request-body-name: festivalItem delete: tags: - festival_item description: IDを指定してfestival_itemの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: festival_itemの削除完了 content: application/json: schema: type: object /festival_items/details/{user_id}: get: tags: - festival_item description: ユーザーのマイページの予算一覧の取得 parameters: - name: user_id in: path description: user_id required: true schema: type: integer - name: year in: query description: year schema: type: integer responses: "200": description: divisionの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/festivalItemsForMyPage" /festival_items/users: get: tags: - festival_item description: 購入報告ページの物品一覧の取得 parameters: - name: year in: query description: year schema: type: integer - name: division_id in: query description: 部門id schema: type: integer required: true responses: "200": description: ユーザー所属の物品予算の一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/festivalItemOption" /financial_records: get: tags: - financial_record description: financial_recordの一覧を取得 parameters: - name: year in: query description: year schema: type: integer responses: "200": description: financial_recordの一覧の取得 content: application/json: schema: $ref: "#/components/schemas/financialRecordDetails" post: tags: - financial_record description: financial_recordの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/financialRecord" required: true responses: "200": description: create されたfinancial_recordが返ってくる content: application/json: schema: $ref: "#/components/schemas/financialRecordWithBalance" /financial_records/{id}: get: tags: - financial_record description: IDで指定されたfinancial_recordの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: financial_recordの取得 content: application/json: schema: $ref: "#/components/schemas/financialRecord" put: tags: - financial_record description: financial_recordの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/financialRecord" required: true responses: "200": description: 更新されたfinancial_recordが返ってくる content: application/json: schema: $ref: "#/components/schemas/financialRecordWithBalance" x-codegen-request-body-name: financial_record delete: tags: - financial_record description: IDを指定してfinancial_recordの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: financial_recordの削除完了 content: application/json: schema: type: object /financial_records/csv/download: get: tags: - financial_record description: financial_recordの年度予算のCSVをダウンロード parameters: - name: year in: query description: year schema: type: integer required: true responses: "200": description: financial_recordの年度予算のCSV取得 headers: Content-Disposition: schema: type: string example: attachment; filename=financial_record.csv content: text/csv: schema: type: string format: binary /campus_donations/years/{year}/group_keys/{group_key}/floors: get: tags: - campus_donation description: 指定した棟グループの教員別募金情報を取得 parameters: - name: year in: path description: year required: true schema: type: integer - name: group_key in: path description: group_key required: true schema: $ref: "#/components/schemas/campusDonationBuildingGroupKey" - name: floor_number in: query description: floor_number required: false schema: type: string responses: "200": description: 指定した棟グループの教員別募金情報を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/campusDonationBuildingFloor" /campus_donations/buildings/{year}: get: tags: - campus_donation description: 年度ごとの各棟の合計募金額を取得 parameters: - name: year in: path description: year required: true schema: type: integer responses: "200": description: 年度ごとの各棟の合計募金額を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/buildingTotal" /campus_donations: post: tags: - campus_donation description: 学内募金の登録 requestBody: content: application/json: schema: $ref: "#/components/schemas/campusDonationRequest" required: true responses: "200": description: 登録された学内募金が返ってくる content: application/json: schema: $ref: "#/components/schemas/campusDonation" x-codegen-request-body-name: campusDonationRequest /campus_donations/{id}: put: tags: - campus_donation description: 学内募金の更新 parameters: - name: id in: path description: 学内募金ID required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/campusDonationRequest" required: true responses: "200": description: 更新された学内募金が返ってくる content: application/json: schema: $ref: "#/components/schemas/campusDonation" x-codegen-request-body-name: campusDonationRequest /income_expenditure_management/csv/download: get: tags: - income_expenditure_management description: 収支管理一覧のCSVダウンロード、財務向けのページ parameters: - name: year in: query description: year schema: type: integer responses: "200": description: income_expenditure_managementのCSVダウンロード headers: Content-Disposition: schema: type: string example: attachment; filename=income_expenditure_management.csv content: text/csv: schema: type: string format: binary /incomes: get: tags: - income description: 収支管理で収入の項目を取得(教育振興会費、雑収入など) responses: "200": description: incomeの一覧の取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/incomeCategory" post: tags: - income description: incomeの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/income" required: true responses: "200": description: create されたincomeが返ってくる content: application/json: schema: $ref: "#/components/schemas/income" /incomes/{id}: get: tags: - income description: IDで指定されたincomeの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: incomeの取得 content: application/json: schema: $ref: "#/components/schemas/income" put: tags: - income description: incomeの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/income" required: true responses: "200": description: 更新されたincomeが返ってくる content: application/json: schema: $ref: "#/components/schemas/income" delete: tags: - income description: IDを指定してincomeの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: incomeの削除完了 content: application/json: schema: type: object /income_expenditure_managements: get: tags: - income_expenditure_management description: income_expenditure_managementの一覧を取得 parameters: - name: year in: query description: year schema: type: integer responses: "200": description: ユーザー所属の物品予算の一覧を取得 content: application/json: schema: $ref: "#/components/schemas/incomeExpenditureManagementDetails" /income_expenditure_managements/check/{id}: put: tags: - income_expenditure_management description: income_expenditure_managementのチェック parameters: - name: id in: path description: income_expenditure_management_id required: true schema: type: integer requestBody: content: application/json: schema: type: object required: - isChecked properties: isChecked: type: boolean description: チェック済みかどうか responses: "200": description: チェック済みのincome_expenditure_managementが返ってくる content: application/json: schema: type: object /mail_auth/signup: post: tags: - mail_auth description: ユーザー登録 parameters: - name: email in: query description: email required: true schema: type: string - name: password in: query description: password required: true schema: type: string - name: user_id in: query description: user_id required: true schema: type: integer responses: "200": description: ユーザー登録完了 content: application/json: schema: type: object x-codegen-request-body-name: mailAuthSignUp /mail_auth/signin: post: tags: - mail_auth description: ログイン parameters: - name: email in: query description: email required: true schema: type: string - name: password in: query description: password required: true schema: type: string responses: "200": description: ログイン完了 content: application/json: schema: type: object x-codegen-request-body-name: mailAuthSignIn /mail_auth/signout: delete: tags: - mail_auth description: ログアウト parameters: - in: header name: Access-Token schema: type: string responses: "200": description: ログアウト完了 content: application/json: schema: type: object /mail_auth/is_signin: get: tags: - mail_auth description: ログイン状態の確認 parameters: - in: header name: Access-Token schema: type: string responses: "200": description: ログイン状態の確認 content: application/json: schema: type: object /password_reset/{id}: post: tags: - password_reset description: password_変更 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/passwordResetData" required: false responses: "200": description: passwordを変更する content: application/json: schema: type: object x-codegen-request-body-name: passwordResetData /password_reset/request: post: tags: - password_reset description: password_reset_token発行リクエスト parameters: - name: email in: query description: email schema: type: string responses: "200": description: password_reset_tokenをメールアドレスに送信する content: application/json: schema: type: object /password_reset/{id}/valid: post: tags: - password_reset description: トークンの称号 parameters: - name: id in: path description: id required: true schema: type: integer - name: token in: query description: token schema: type: string responses: "200": description: password_reset_tokenが正しい確認する content: application/json: schema: type: object /sponsors: get: tags: - sponsor description: sponsorの一覧の取得 responses: "200": description: sponsorsの一覧を取得 content: application/json: schema: type: array $ref: "#/components/schemas/sponsor" post: tags: - sponsor description: sponsorの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/sponsor" required: false responses: "200": description: 作成されたsponsorが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: sponsor /sponsors/{id}: get: tags: - sponsor description: IDで指定されたsponsorの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: sponsorの取得 content: application/json: schema: type: array $ref: "#/components/schemas/sponsor" put: tags: - sponsor description: sponsorの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/sponsor" required: false responses: "200": description: 更新されたsponsorが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: sponsor delete: tags: - sponsor description: IDを指定してsponsorの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: sponsorの削除完了 content: application/json: schema: type: object /sponsors/periods/{year}: get: tags: - sponsor description: 年度で指定されたsponsorを取得 parameters: - name: year in: path description: year required: true schema: type: integer responses: "200": description: sponsorの取得完了 content: application/json: schema: type: array items: $ref: "#/components/schemas/sponsor" /sponsorstyles: get: tags: - sponsorstyle description: sponsorstyleの一覧の取得 responses: "200": description: sponsorstyleの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/sponsorStyle" post: tags: - sponsorstyle description: sponsorstyleの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/sponsorStyle" required: false responses: "200": description: 作成されたsponsorstyleが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: sponsorStyle /sponsorstyles/{id}: get: tags: - sponsorstyle description: IDで指定されたsponsorstyleの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: sponsorstyleの取得 content: application/json: schema: type: object put: tags: - sponsorstyle description: sponsorstyleの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/sponsorStyle" required: false responses: "200": description: 更新されたsponsorstyleが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: sponsorStyle delete: tags: - sponsorstyle description: IDを指定してsponsorstyleの論理削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: sponsorstyleの論理削除完了 content: application/json: schema: type: object /teachers: get: tags: - teacher description: teacherの一覧を取得 responses: "200": description: teacherの一覧を取得 content: application/json: schema: type: array $ref: "#/components/schemas/teacher" post: tags: - teacher description: teacherの作成 parameters: - name: name in: query description: 名前 required: true schema: type: string - name: position in: query description: 役職 required: true schema: type: string - name: department_id in: query description: 学科ID schema: type: integer - name: building in: query description: 棟 schema: type: string - name: room in: query description: 部屋番号 schema: type: string - name: is_black in: query description: ブラックリストの真偽 schema: type: boolean - name: remark in: query description: 備考 schema: type: string responses: "200": description: createされたteacherが返ってくる content: application/json: schema: type: object /teachers/delete: delete: tags: - teacher description: teacherの複数削除 requestBody: content: "*/*": schema: $ref: "#/components/schemas/destroyTeacherIDs" required: false responses: "200": description: 複数のteacherをidで削除できる content: application/json: schema: type: object x-codegen-request-body-name: destroyTeacherIDs /teachers/{id}: get: tags: - teacher description: IDで指定されたteacherの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: teacherの取得 content: application/json: schema: $ref: "#/components/schemas/teacher" put: tags: - teacher description: teacherの更新 parameters: - name: id in: path description: Teacherのid required: true schema: type: integer - name: name in: query description: 教員の名前 required: true schema: type: string - name: position in: query description: 教員の役職 required: true schema: type: string - name: department_id in: query description: 学科ID schema: type: integer - name: building in: query description: 棟 schema: type: string - name: room in: query description: 部屋番号 schema: type: string - name: is_black in: query description: ブラックリストに入っているか schema: type: boolean - name: remark in: query description: 備考欄 schema: type: string responses: "200": description: 更新されたteacherが返ってくる content: application/json: schema: type: object delete: tags: - teacher description: IDを指定してteacherの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: teacherの削除完了 content: application/json: schema: type: object /teachers/fundRegistered/{year}: get: tags: - teacher description: 募金登録済みのteacherのidを取得 parameters: - name: year in: path description: year required: true schema: type: integer responses: "200": description: 募金登録済みのteacherのidを取得 content: application/json: schema: type: object /upload_file: post: tags: - upload_file description: ファイルアップロード requestBody: content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: true responses: "200": description: ファイルアップロード成功 content: application/json: schema: type: object /users: get: tags: - user description: userの一覧を取得 parameters: - name: ids in: query description: user id一覧(複数指定可).未指定時は全件取得 required: false style: form schema: type: array items: type: integer example: [1, 2] responses: "200": description: userの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/user" example: - id: 1 name: 技大太郎1 bureauID: 1 roleID: 1 isDeleted: false createdAt: 2026-01-01T00:00:00Z updatedAt: 2026-01-01T00:00:00Z - id: 2 name: 技大太郎2 bureauID: 1 roleID: 1 isDeleted: false createdAt: 2026-01-02T00:00:00Z updatedAt: 2026-01-02T00:00:00Z post: tags: - user description: userの作成 parameters: - name: name in: query description: name required: true schema: type: string - name: bureau_id in: query description: bureau_d required: true schema: type: integer - name: role_id in: query description: role_id required: true schema: type: integer responses: "200": description: createされたuserが返ってくる content: application/json: schema: type: object /users/delete: delete: tags: - user description: userの複数作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/destroyUserIDs" required: false responses: "200": description: 複数のuserをidで削除できる content: application/json: schema: type: object x-codegen-request-body-name: destroyUserIDs /users/{id}: get: tags: - user description: IDで指定されたuserの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: userの取得 content: application/json: schema: type: object put: tags: - user description: userの更新 parameters: - name: id in: path description: userのid required: true schema: type: integer - name: name in: query description: name required: true schema: type: string - name: bureau_id in: query description: bureau_d required: true schema: type: integer - name: role_id in: query description: role_id required: true schema: type: integer responses: "200": description: 更新されたuserが返ってくる content: application/json: schema: type: object delete: tags: - user description: IDを指定してuserの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: userの削除完了 content: application/json: schema: type: object /users/{user_id}/groups/year/{year}: put: tags: - user operationId: updateUserGroups summary: ユーザー所属部門の差分更新 description: userの所属部門を差分更新する。groupIds が空配列の場合は全削除する。 parameters: - name: user_id in: path description: userのid required: true schema: type: integer - name: year in: path description: 対象年度 required: true schema: type: integer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/updateUserGroupsRequest" responses: "200": description: 更新後のuser_groupsの状態を返す content: application/json: schema: $ref: "#/components/schemas/updateUserGroupsResponse" x-codegen-request-body-name: updateUserGroupsRequest /years: get: tags: - year description: yearの一覧の取得 responses: "200": description: yearの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/year_periods" post: tags: - year description: yearの作成 parameters: - name: year in: query description: year required: true schema: type: integer responses: "200": description: 作成されたyearが返ってくる content: application/json: schema: type: object /years/{id}: get: tags: - year description: IDで指定されたyearの取得 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: yearの取得 content: application/json: schema: $ref: "#/components/schemas/year_periods" put: tags: - year description: yearの更新 parameters: - name: id in: path description: id required: true schema: type: integer - name: year in: query description: year required: true schema: type: integer responses: "200": description: 更新されたyearが返ってくる content: application/json: schema: type: object delete: tags: - year description: IDを指定してyearの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: yearの削除完了 content: application/json: schema: type: object /years/periods: get: tags: - year_periods description: 年度一覧の取得 responses: "200": description: year_periodsの一覧を取得 content: application/json: schema: type: array items: $ref: "#/components/schemas/year_periods" post: tags: - year_periods description: year_periodsの作成 requestBody: content: application/json: schema: $ref: "#/components/schemas/year_periods" required: false responses: "200": description: 作成されたyear_periodsが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: year_periods /years/periods/{id}: put: tags: - year_periods description: year_periodsの更新 parameters: - name: id in: path description: id required: true schema: type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/year_periods" required: false responses: "200": description: 更新されたyear_periodsが返ってくる content: application/json: schema: type: object x-codegen-request-body-name: year_periods delete: tags: - year_periods description: IDを指定してyear_periodsの削除 parameters: - name: id in: path description: id required: true schema: type: integer responses: "200": description: year_periodsの削除完了 content: application/json: schema: type: object /sponsorship_activities: get: tags: - sponsorship_activity summary: 協賛活動一覧取得 description: | 年度、キーワード、ステータス、担当者、協賛プランなどで絞り込み、指定順序でソートして一覧を取得。 合計金額(totalAmount)も返却。 parameters: - name: year_periods_id in: query description: 年度期間ID (指定なし時は最新年度) required: false schema: type: integer - name: keyword in: query description: 検索キーワード(企業名、担当者名など) required: false schema: type: string - name: activity_status in: query description: 活動ステータス (ActivityStatusの値を指定) required: false schema: $ref: "#/components/schemas/ActivityStatus" - name: feasibility_status in: query description: 協賛可否ステータス (FeasibilityStatusの値を指定) required: false schema: $ref: "#/components/schemas/FeasibilityStatus" - name: user_id in: query description: 担当者ID required: false schema: type: integer - name: sponsor_style_ids in: query description: "協賛プランID(複数指定可)" required: false schema: type: array items: type: integer - name: sort in: query description: "ソート対象カラム (例: updated_at, created_at, sponsor_id)" required: false schema: type: string default: updated_at - name: order in: query description: ソート順序 (asc または desc) required: false schema: type: string enum: - asc - desc default: desc responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/SponsorshipActivitiesResponse" post: tags: - sponsorship_activity summary: 協賛活動の新規作成 description: 新しい協賛活動データを作成。 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/CreateSponsorshipActivityRequest" responses: "200": description: Created content: application/json: schema: $ref: "#/components/schemas/SponsorshipActivity" /sponsorship_activities/{id}: get: tags: - sponsorship_activity summary: 協賛活動詳細取得 description: 指定IDの協賛活動データを取得。 parameters: - name: id in: path required: true schema: type: integer responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/SponsorshipActivity" put: tags: - sponsorship_activity summary: 協賛活動の更新(全項目) description: 指定IDの協賛活動データを更新(基本情報・プランなど)。 parameters: - name: id in: path description: 協賛活動ID required: true schema: type: integer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/UpdateSponsorshipActivityRequest" responses: "200": description: Updated content: application/json: schema: $ref: "#/components/schemas/SponsorshipActivity" delete: tags: - sponsorship_activity summary: 協賛活動の削除 description: 指定IDの協賛活動データを物理削除。 parameters: - name: id in: path description: 協賛活動ID required: true schema: type: integer responses: "200": description: Deleted content: application/json: schema: type: object /sponsorship_activities/{id}/status: put: tags: - sponsorship_activity summary: 協賛活動ステータスの更新 description: ステータス、可否、デザイン進捗、備考のみを更新。 parameters: - name: id in: path description: 協賛活動ID required: true schema: type: integer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/UpdateSponsorshipActivityStatusRequest" responses: "200": description: Updated content: application/json: schema: $ref: "#/components/schemas/SponsorshipActivity" /sponsorship_activities/export: get: tags: - sponsorship_activity summary: CSVエクスポート description: 検索条件に一致するデータをCSV形式でダウンロード。 parameters: - name: year_periods_id in: query schema: type: integer - name: keyword in: query schema: type: string - name: activity_status in: query schema: $ref: "#/components/schemas/ActivityStatus" - name: feasibility_status in: query schema: $ref: "#/components/schemas/FeasibilityStatus" - name: user_id in: query schema: type: integer - name: sponsor_style_ids in: query schema: type: array items: type: integer responses: "200": description: OK (CSV Data) content: text/csv: schema: type: string format: binary components: schemas: activity: required: - expense - feature - isDone - remark - sponsorID - userID type: object properties: sponsorID: type: integer example: 1 userID: type: integer example: 1 isDone: type: boolean example: false feature: type: string example: なし expense: type: integer example: 0 remark: type: string example: なし design: type: integer example: 0 url: type: string example: "" activity_information: type: object properties: activityID: type: integer example: 1 bucketName: type: string example: なし fileName: type: string example: なし fileType: type: string example: なし designProgress: type: integer example: 1 fileInformation: type: string example: "" activity_style: required: - activityID - sponsorStyleID type: object properties: activityID: type: integer example: 1 sponsorStyleID: type: integer example: 1 buildingTotal: description: 棟ごとの合計募金額 type: object properties: id: type: integer example: 1 name: type: string example: 電気棟 groupKey: $ref: "#/components/schemas/campusDonationBuildingGroupKey" totalPrice: type: integer example: 12000 required: - id - name - groupKey - totalPrice buyReport: description: 購入報告の際のパラメータ type: object properties: id: type: integer example: 1 festivalItemID: type: integer example: 1 amount: type: integer example: 1000 paidBy: type: string example: 企画局_技大太郎 paidByUserId: type: integer example: 1 required: - festivalItemID - amount buyReportInformation: description: マイページで表示する購入報告の情報 type: object properties: id: type: integer example: 1 buyReportName: type: string example: 段ボール amount: type: integer example: 1000 reportDate: type: string example: 2024-01-01 status: type: string enum: - 確認中 - 封詰め - 清算完了 buyReportWithDivisionId: description: 購入報告の際のパラメータ、部門と物品IDを含む type: object properties: id: type: integer example: 1 divisionId: type: integer example: 1 festivalItemID: type: integer example: 1 amount: type: integer example: 1000 paidBy: type: string example: 企画局_技大太郎 paidByUserId: type: integer example: 1 buyReportDetail: description: 購入報告ページで表示する詳細情報 type: object properties: id: type: integer example: 1 financialRecordName: type: string example: 企画局 divisionName: type: string example: ビンゴ部門 festivalItemName: type: string example: 段ボール amount: type: integer example: 1000 reportDate: type: string example: 2024-01-01 paidBy: type: string example: 企画局_技大太郎 paidByUserId: type: integer example: 1 isPacked: type: boolean example: false isSettled: type: boolean example: false fileName: type: string example: test.png year: type: integer example: 2025 filePath: type: string example: /2025/receipts/FileName required: - amount - divisionName - festivalItemName - financialRecordName - id - isPacked - isSettled - paidBy - reportDate - filePath buyReportSummary: description: 購入報告の未精算/未封詰め合計 type: object properties: unsettledAmount: type: integer example: 12000 description: isSettled=falseのamount合計 unpackedAmount: type: integer example: 8000 description: isPacked=falseのamount合計 required: - unsettledAmount - unpackedAmount campusDonationRequest: type: object required: - userId - teacherId - yearId - price - receivedAt properties: userId: type: integer description: 募金を登録・更新したユーザーID example: 1 teacherId: type: integer description: 募金対象の教員ID example: 1 yearId: type: integer description: 年度ID example: 1 price: type: integer description: 募金金額 example: 2000 receivedAt: type: string format: date description: 受領日 example: 2026-04-28 campusDonation: type: object required: - id - userId - teacherId - yearId - price - receivedAt properties: id: type: integer description: 学内募金ID example: 1 userId: type: integer description: 募金を登録・更新したユーザーID example: 1 teacherId: type: integer description: 募金対象の教員ID example: 1 yearId: type: integer description: 年度ID example: 1 price: type: integer description: 募金金額 example: 2000 receivedAt: type: string format: date description: 受領日 example: 2026-04-28 campusDonationTeacher: description: 棟・階ごとの教員別募金情報 type: object properties: roomName: type: string example: "501" teacherId: type: integer example: 1 teacherName: type: string example: 技大太郎 price: type: integer nullable: true example: 5000 isBlack: type: boolean example: false campusDonationId: type: integer nullable: true description: 対象年度に登録済みの学内募金ID example: 1 required: - roomName - teacherId - teacherName - campusDonationId - price - isBlack campusDonationBuildingFloor: description: 各号棟の指定フロア教員情報 type: object properties: buildingId: type: integer example: 1 buildingName: type: string example: 機械・建設棟 unitNumber: type: integer example: 1 floorNumber: type: string example: "5" donations: type: array items: $ref: "#/components/schemas/campusDonationTeacher" required: - buildingId - buildingName - unitNumber - floorNumber - donations campusDonationBuildingGroupKey: description: 学内募金で表示する棟グループのキー type: string enum: - mechanical_civil_engineering - electrical_engineering - biology - environmental_system - materials_management_information - general_research - nuclear_system_safety - administration - extreme_energy_density_research_center - machine_shop - large_experiment - analysis_instrumentation_center - other division: required: - name - financialRecordID type: object properties: id: type: integer example: 1 name: type: string example: 衛生管理部門 financialRecordID: type: integer example: 1 divisionOption: required: - name - divisionId type: object properties: name: type: string example: 衛生管理部門 divisionId: type: integer example: 1 divisionDetails: type: object properties: total: $ref: "#/components/schemas/total" divisions: type: array items: $ref: "#/components/schemas/divisionWithBalance" divisionWithBalance: type: object properties: id: type: integer example: 1 name: type: string example: 衛生管理部門 financialRecord: type: string example: 総務局 budget: type: integer example: 10000 expense: type: integer example: 1000 balance: type: integer example: 9000 festivalItem: required: - name - divisionId - amount type: object properties: id: type: integer example: 1 name: type: string example: 農ポリ divisionId: type: integer example: 1 amount: type: integer example: 10000 memo: type: string example: "" festivalItemOption: required: - festivalItemId - name type: object properties: festivalItemId: type: integer example: 1 name: type: string example: 農ポリ festivalItemDetails: type: object properties: total: $ref: "#/components/schemas/total" festivalItems: type: array items: $ref: "#/components/schemas/festivalItemWithBalance" festivalItemsForMyPage: type: object properties: divisionTotal: $ref: "#/components/schemas/total" financialRecordName: type: string example: 企画局 divisionName: type: string example: ビンゴ部門 festivalItems: type: array items: $ref: "#/components/schemas/festivalItemWithReport" festivalItemWithReport: type: object properties: festivalItemTotal: $ref: "#/components/schemas/total" festivalItemName: type: string example: ビンゴ景品 buyReports: type: array items: $ref: "#/components/schemas/buyReportInformation" festivalItemWithBalance: type: object properties: id: type: integer example: 1 name: type: string example: 農ポリ division: type: string example: 衛生管理部門 financialRecord: type: string example: 総務局 budget: type: integer example: 10000 expense: type: integer example: 1000 balance: type: integer example: 9000 memo: type: string example: "" financialRecord: required: - name - year_id type: object properties: id: type: integer example: 1 name: type: string example: 総務局 year_id: type: integer example: 1 financialRecordDetails: type: object properties: total: $ref: "#/components/schemas/total" financialRecords: type: array items: $ref: "#/components/schemas/financialRecordWithBalance" financialRecordWithBalance: type: object properties: id: type: integer example: 1 name: type: string example: 総務局 year: type: integer example: 2024 budget: type: integer example: 100000 expense: type: integer example: 10000 balance: type: integer example: 90000 income: type: object required: - name - amount - yearId - incomeId properties: id: type: integer example: 1 incomeId: type: integer example: 1 sponsorName: type: string example: 企業1 amount: type: integer example: 10000 yearId: type: integer example: 1 receiveOption: type: string enum: - hand - transfer incomeCategory: type: object required: - name properties: id: type: integer example: 1 name: type: string example: 教育振興会費 incomeExpenditureManagement: type: object required: - id - content - amount - currentBalance - date - isChecked properties: id: type: integer example: 1 content: type: string example: 情報局 detail: type: string example: ビール amount: type: integer example: 100000 currentBalance: type: integer example: 100000 receiveOption: type: string example: "" date: type: string example: 2024-01-01 isChecked: type: boolean example: false incomeExpenditureManagementDetails: type: object required: - total - incomeExpenditureManagements properties: total: type: integer example: 100000 incomeExpenditureManagements: type: array items: $ref: "#/components/schemas/incomeExpenditureManagement" sponsorStyle: required: - feature - price - style type: object properties: style: type: string example: 1分の1 feature: type: string example: カラー price: type: integer example: 30000 sponsor: required: - address - email - name - representative - tel type: object properties: id: type: integer example: 0 name: type: string example: 企業1 tel: type: string example: "09000000000" email: type: string example: test@example.com address: type: string example: ○○1-1 representative: type: string example: 長岡太郎(社長) passwordResetData: type: object properties: token: type: string example: "" password: type: string example: "" confirmPassword: type: string example: "" destroyTeacherIDs: required: - deleteIDs type: object properties: deleteIDs: type: array example: [] items: type: number destroyUserIDs: required: - deleteIDs type: object properties: deleteIDs: type: array example: [] items: type: number total: type: object properties: budget: type: integer example: 100000 expense: type: integer example: 10000 balance: type: integer example: 90000 year_periods: required: - endedAt - startedAt - year type: object properties: year: type: integer example: 2024 startedAt: type: string example: 0000-00-00T00:00:00Z endedAt: type: string example: 0000-00-00T00:00:00Z teacher: type: object properties: id: type: integer example: 1 name: type: string example: test-name position: type: string example: 准教授 department_id: type: integer example: 1 building: type: string example: 研究棟 room: type: string example: 101 is_black: type: boolean example: false remark: type: string example: 備考 required: - id - name - position - department_id - building - room_number - is_black - remark user: type: object properties: id: type: integer example: 1 name: type: string example: test-user bureauID: type: integer example: 1 roleID: type: integer example: 1 isDeleted: type: boolean example: false createdAt: type: string example: 0000-00-00T00:00:00Z updatedAt: type: string example: 0000-00-00T00:00:00Z required: - id - name - bureauID - roleID - isDeleted - createdAt - updatedAt updateUserGroupsRequest: type: object required: - groupIds properties: groupIds: type: array description: userに紐付けるdivisionのID一覧。空配列の場合は全削除 example: [1, 2, 3] uniqueItems: true items: type: integer updateUserGroupsResponse: type: object required: - groupIds properties: groupIds: type: array description: 更新後のuserに紐付いているdivisionのID一覧 example: [1, 2, 3] uniqueItems: true items: type: integer ActivityStatus: type: string description: 活動ステータス enum: - unstarted - material_sent - forms_sent - confirmed - invoice_sent - payment_confirmed - receipt_sent - rejected FeasibilityStatus: type: string description: 協賛可否 enum: - unstarted - possible - impossible DesignProgress: type: string description: デザイン進捗 enum: - unstarted - created_by_student - created_by_company - completed SponsorshipActivity: type: object description: 協賛活動データの詳細情報 properties: id: type: integer example: 1 yearPeriodsId: type: integer example: 5 sponsorId: type: integer example: 101 userId: type: integer example: 5 activityStatus: $ref: "#/components/schemas/ActivityStatus" feasibilityStatus: $ref: "#/components/schemas/FeasibilityStatus" designProgress: $ref: "#/components/schemas/DesignProgress" remarks: type: string example: "パンフレットと物品の併用プランです" sponsor: $ref: "#/components/schemas/sponsor" user: $ref: "#/components/schemas/user" sponsorStyles: type: array description: 紐づく協賛プランの内訳リスト items: $ref: "#/components/schemas/ActivitySponsorStyleLink" createdAt: type: string format: date-time example: "2026-05-01T09:00:00Z" updatedAt: type: string format: date-time example: "2026-05-20T10:00:00Z" CreateSponsorshipActivityRequest: type: object description: 新規作成時のリクエストボディ required: - yearPeriodsId - sponsorId - userId - activityStatus - feasibilityStatus - designProgress properties: yearPeriodsId: type: integer example: 5 sponsorId: type: integer example: 101 userId: type: integer example: 5 activityStatus: $ref: "#/components/schemas/ActivityStatus" feasibilityStatus: $ref: "#/components/schemas/FeasibilityStatus" designProgress: $ref: "#/components/schemas/DesignProgress" remarks: type: string example: "特になし" sponsorStyleDetails: type: array description: 登録したい協賛プラン情報のリスト items: type: object properties: sponsorStyleId: type: integer example: 1 category: $ref: "#/components/schemas/SponsorStyleCategory" UpdateSponsorshipActivityStatusRequest: type: object description: ステータス更新時のリクエストボディ required: - activityStatus - feasibilityStatus - designProgress properties: activityStatus: $ref: "#/components/schemas/ActivityStatus" feasibilityStatus: $ref: "#/components/schemas/FeasibilityStatus" designProgress: $ref: "#/components/schemas/DesignProgress" remarks: type: string example: "電話にて確認済み" UpdateSponsorshipActivityRequest: type: object description: 更新時のリクエストボディ required: - yearPeriodsId - sponsorId - userId - activityStatus - feasibilityStatus - designProgress properties: yearPeriodsId: type: integer example: 5 sponsorId: type: integer example: 101 userId: type: integer example: 5 activityStatus: $ref: "#/components/schemas/ActivityStatus" feasibilityStatus: $ref: "#/components/schemas/FeasibilityStatus" designProgress: $ref: "#/components/schemas/DesignProgress" remarks: type: string example: "更新しました" sponsorStyleDetails: type: array description: 更新したい協賛プラン情報のリスト(全置換) items: type: object properties: sponsorStyleId: type: integer example: 1 category: $ref: "#/components/schemas/SponsorStyleCategory" ActivitySponsorStyleLink: type: object description: 協賛活動とプランの紐付け情報 properties: id: type: integer example: 10 sponsorStyleId: type: integer example: 2 category: $ref: "#/components/schemas/SponsorStyleCategory" style: $ref: "#/components/schemas/sponsorStyle" SponsorshipActivitiesResponse: type: object description: 協賛活動一覧のレスポンス properties: totalAmount: type: integer description: 該当データの協賛金額合計 example: 350000 activities: type: array items: $ref: "#/components/schemas/SponsorshipActivity" SponsorStyleCategory: type: string description: 協賛スタイルのカテゴリー(お金か物品か) enum: - money - goods x-original-swagger-version: "2.0"