openapi: 3.0.3 info: title: 'Api Documentation' description: '' version: 1.0.0 servers: - url: '{{ apiBaseUrl() }}' paths: /api/v1/dashboard/user: get: summary: 'Dashboard | Retrieve Authenticated User' operationId: dashboardRetrieveAuthenticatedUser description: "Retrieve the currently authenticated user's information. This includes details like the user's profile, roles, and associated departments or events." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin properties: data: type: object properties: id: type: integer example: 1 name: type: string example: admin email: type: string example: admin@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:18.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: admin phone_number: type: string example: null role_id: type: integer example: 1 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 1 name: type: string example: global_admin tags: - 'Dashboard πŸ›€οΈ' /api/v1/dashboard/user/departments/my/requests: get: summary: 'Dashboard | List My Department Requests' operationId: dashboardListMyDepartmentRequests description: 'List all requests related to departments that the authenticated user has submitted. This includes pending, approved, or rejected requests for joining departments.' parameters: - in: query name: status description: 'the type of status returned' example: all required: true schema: type: string description: 'the type of status returned' example: all enum: - all - pending - approved - rejected responses: 200: description: success content: application/json: schema: type: object example: data: - id: 1 user_id: 14 approved_at: null rejected_at: null status: pending request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' - id: 1 user_id: 14 approved_at: null rejected_at: null status: pending request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' properties: data: type: array example: - id: 1 user_id: 14 approved_at: null rejected_at: null status: pending request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' - id: 1 user_id: 14 approved_at: null rejected_at: null status: pending request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' items: type: object properties: id: type: integer example: 1 user_id: type: integer example: 14 approved_at: type: string example: null rejected_at: type: string example: null status: type: string example: pending request_id: type: string example: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: type: string example: '2025-02-03T23:26:28.000000Z' updated_at: type: string example: '2025-02-03T23:26:28.000000Z' department_id: type: integer example: 1 department: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' manager: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' tags: - 'Dashboard πŸ›€οΈ' /api/v1/dashboard/user/events/my/requests: get: summary: 'Event | List My Requests' operationId: eventListMyRequests description: "\n This endpoint is for users who want to track their own event participation requests. It lists all the events where the user has submitted a request, whether pending, approved, or rejected. This helps users stay informed about their event involvement." parameters: - in: query name: status description: 'the type of status returned' example: all required: true schema: type: string description: 'the type of status returned' example: all enum: - all - pending - approved - rejected responses: 200: description: success content: application/json: schema: type: object example: data: - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null properties: data: type: array example: - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null items: type: object properties: id: type: string example: null request_id: type: string example: null approved_at: type: string example: null rejected_at: type: string example: null event_id: type: string example: null status: type: string example: pending user_id: type: string example: null updated_at: type: string example: null created_at: type: string example: null tags: - 'Dashboard πŸ›€οΈ' '/api/v1/dashboard/user/departments/{departmentId}/requests/join': post: summary: 'Dashboard | Request to Join Department' operationId: dashboardRequestToJoinDepartment description: "Submit a request to join a specific department within the system. This action triggers the approval process where department heads can review the user's request." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: 1 user_id: 14 approved_at: null rejected_at: null status: pending request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' department_id: 1 properties: data: type: object properties: id: type: integer example: 1 user_id: type: integer example: 14 approved_at: type: string example: null rejected_at: type: string example: null status: type: string example: pending request_id: type: string example: 802fca01-5eb6-37e6-bb89-2c81d6be668f created_at: type: string example: '2025-02-03T23:26:28.000000Z' updated_at: type: string example: '2025-02-03T23:26:28.000000Z' department_id: type: integer example: 1 tags: - 'Dashboard πŸ›€οΈ' parameters: - in: path name: departmentId description: 'id of department' example: 1 required: true schema: type: integer '/api/v1/dashboard/user/events/{eventId}/requests/join': post: summary: 'Dashboard | Request to Join Event' operationId: dashboardRequestToJoinEvent description: 'Submit a request to join a specific event in the system. This action will initiate the approval process for event organizers to allow or deny the request.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null properties: data: type: object properties: id: type: string example: null request_id: type: string example: null approved_at: type: string example: null rejected_at: type: string example: null event_id: type: string example: null status: type: string example: pending user_id: type: string example: null updated_at: type: string example: null created_at: type: string example: null tags: - 'Dashboard πŸ›€οΈ' parameters: - in: path name: eventId description: 'id of event' example: 1 required: true schema: type: integer /api/v1/dashboard/profile/updateProfile: post: summary: 'Dashboard | Update profile' operationId: dashboardUpdateProfile description: 'Update a profile from the application' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Dashboard πŸ›€οΈ' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: '' example: sed address: type: string description: '' example: et surname: type: string description: '' example: exercitationem phone_number: type: string description: '' example: hic site_id: type: integer description: '' example: 12 image: type: string format: binary description: 'Must be an image.' has_image: type: boolean description: '' example: false required: - name - surname - site_id /api/v1/dashboard/profile/updatePassword: post: summary: 'Dashboard | Update password' operationId: dashboardUpdatePassword description: 'Update a password from the application' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Dashboard πŸ›€οΈ' requestBody: required: true content: application/json: schema: type: object properties: old_password: type: string description: '' example: et password: type: string description: '' example: ']&)DE' password_confirmation: type: string description: '' example: null required: - old_password - password /api/v1/dashboard/user/notifications: get: summary: 'Dashboard | List notifications' operationId: dashboardListNotifications description: 'Return list of notifications' parameters: - in: query name: filter description: 'Filtrer les notifications par statut (read, unread, all)' example: all required: true schema: type: string description: 'Filtrer les notifications par statut (read, unread, all)' example: all enum: - read - unread - all responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 1e72fa6f-8d8b-43da-b45f-df501b913a4e type: App\Notifications\UserNotification notifiable_id: 1 notifiable_type: App\Models\User data: message: 'Notification de test' read_at: null created_at: '2024-10-18T14:51:23.000000Z' updated_at: '2024-10-18T14:51:23.000000Z' properties: data: type: array example: - id: 1e72fa6f-8d8b-43da-b45f-df501b913a4e type: App\Notifications\UserNotification notifiable_id: 1 notifiable_type: App\Models\User data: message: 'Notification de test' read_at: null created_at: '2024-10-18T14:51:23.000000Z' updated_at: '2024-10-18T14:51:23.000000Z' items: type: object properties: id: type: string example: 1e72fa6f-8d8b-43da-b45f-df501b913a4e type: type: string example: App\Notifications\UserNotification notifiable_id: type: integer example: 1 notifiable_type: type: string example: App\Models\User data: type: object properties: message: type: string example: 'Notification de test' read_at: type: string example: null created_at: type: string example: '2024-10-18T14:51:23.000000Z' updated_at: type: string example: '2024-10-18T14:51:23.000000Z' 401: description: unauthenticated content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. 422: description: 'invalid filter' content: application/json: schema: type: object example: errors: [] message: 'filter is invalid' properties: errors: type: array example: [] message: type: string example: 'filter is invalid' tags: - 'Dashboard πŸ›€οΈ' /api/v1/dashboard/user/notifications/markAsRead: post: summary: 'Dashboard | Mark as read' operationId: dashboardMarkAsRead description: 'Mark unread notification as read' parameters: [] responses: 200: description: success content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Dashboard πŸ›€οΈ' '/api/v1/dashboard/user/departments/{departmentId}/leave': post: summary: 'Dashboard | Me Leave department' operationId: dashboardMeLeaveDepartment description: 'Leave a department that i have joined' parameters: [] responses: 200: description: success content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 422: description: 'validation errors' content: application/json: schema: type: object example: errors: user: 'user not attached to department' message: 'user not attached to department' properties: errors: type: object properties: user: type: string example: 'user not attached to department' message: type: string example: 'user not attached to department' tags: - 'Dashboard πŸ›€οΈ' parameters: - in: path name: departmentId description: '' example: 1 required: true schema: type: integer /api/v1/dashboard/sites: get: summary: 'List of Churches' operationId: listOfChurches description: 'Retrieve a list of all churches.' parameters: [] responses: 200: description: 'list success' content: application/json: schema: type: object example: data: - id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' - id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' properties: data: type: array example: - id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' - id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' items: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' tags: - 'Dashboard πŸ›€οΈ' security: [] /api/v1/register: post: summary: 'Authentication | Register User' operationId: authenticationRegisterUser description: 'Create a new user account in the system. This endpoint allows for registering a new user with their credentials and returns their account details once the registration is successful.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: token: XHDH293939jjfjfj939339339 expired_at: '2024-08-23' properties: token: type: string example: XHDH293939jjfjfj939339339 expired_at: type: string example: '2024-08-23' tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'represent the name of user.' example: 'Richard Bertin' image: type: string format: binary description: 'Must be an image.' phone_number: type: string description: 'phone number.' example: '0338014183' surname: type: string description: 'represent the surname of user.' example: Gilles address: type: string description: 'The correct address for the user.' example: "29, place Roger Leblanc\n78810 Rey-sur-Mer" email: type: string description: 'represent the email of user. Must be a valid email address. Must not be greater than 254 characters.' example: qperrier@example.net role_id: type: string description: '' example: re enum: - global_admin - pastor - re - member password: type: string description: 'represent the password of user.' example: password password_confirmation: type: string description: 'represent the confirmation password for user.' example: password site_id: type: integer description: '' example: 2 required: - name - surname - email - password - site_id security: [] /api/v1/login: post: summary: 'Authentication | Login with Token' operationId: authenticationLoginWithToken description: 'Authenticate a user by providing a login token. This token will be used to grant the user access to the system and validate their session for future requests.' parameters: [] responses: 200: description: success content: application/json: schema: type: object example: token: SuIENqMMfOnuthHDPkmRC8x1uYvviAylC44WJ7DWfa7631eb expired_at: '2024-04-23' token_name: name abilities: '*' properties: token: type: string example: SuIENqMMfOnuthHDPkmRC8x1uYvviAylC44WJ7DWfa7631eb expired_at: type: string example: '2024-04-23' token_name: type: string example: name abilities: type: string example: '*' tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'email for the user. Must be a valid email address.' example: lucchuala@gmail.com password: type: string description: '' example: password required: - email - password security: [] /api/v1/forgot-password: post: summary: 'Authentication | Forgot Password Notification' operationId: authenticationForgotPasswordNotification description: 'Send an email with a link and instructions for the user to reset their account password. This ensures that users can regain access to their account securely if they forget their credentials.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: status: 'password sent' properties: status: type: string example: 'password sent' tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address.' example: blick.jacinthe@example.net required: - email security: [] /api/v1/reset-password: post: summary: 'Authentication | Reset Password' operationId: authenticationResetPassword description: 'Reset the password for a specific user. This action allows users to set a new password if they have forgotten their current one or wish to update it for security reasons.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: status: 'password sent' properties: status: type: string example: 'password sent' tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' requestBody: required: true content: application/json: schema: type: object properties: token: type: string description: '' example: omnis email: type: string description: 'Must be a valid email address.' example: vwolff@example.net password: type: string description: '' example: asperiores required: - token - email - password security: [] '/api/v1/verify-email/{id}/{hash}': get: summary: 'Authentication | Check Email Verification' operationId: authenticationCheckEmailVerification description: 'Check whether the current user has verified their email address. This endpoint is useful for ensuring that users have completed the verification process after registration.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: verified: false properties: data: type: object properties: verified: type: boolean example: false tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' security: [] parameters: - in: path name: id description: 'The ID of the verify email.' example: id required: true schema: type: string - in: path name: hash description: '' example: enim required: true schema: type: string /api/v1/email/verification-notification: post: summary: 'Authentication | Send Verification Email' operationId: authenticationSendVerificationEmail description: 'Send a new verification email to the user. This allows users to receive another verification link if they did not receive or lost the initial email.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: status: verification-link-sent properties: status: type: string example: verification-link-sent tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' security: [] '/api/v1/reset-password/{token}': get: summary: 'Display the password reset view.' operationId: displayThePasswordResetView description: '' parameters: [] responses: 500: description: '' content: application/json: schema: type: object example: message: 'Missing required parameter for [Route: password.store] [URI: api/v1/reset-password] [Missing parameter: { apiBaseUrl() ]. (View: /home/c2341937c/public_html/_church/resources/views/auth/reset-password.blade.php)' exception: Illuminate\View\ViewException file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Exceptions/UrlGenerationException.php line: 35 trace: - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 58 function: handleViewException class: Illuminate\View\Engines\CompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php line: 60 function: handleViewException class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 22 function: evaluatePath class: Illuminate\View\Engines\PhpEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php line: 74 function: evaluatePath class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 10 function: get class: Illuminate\View\Engines\CompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 208 function: get class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 191 function: getContents class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 160 function: renderContents class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Response.php line: 70 function: render class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Response.php line: 35 function: setContent class: Illuminate\Http\Response type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 920 function: __construct class: Illuminate\Http\Response type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 887 function: toResponse class: Illuminate\Routing\Router type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 807 function: prepareResponse class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Illuminate\Routing\{closure}' class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php line: 88 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\VerifyCsrfToken type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php line: 51 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Routing\Middleware\SubstituteBindings type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php line: 49 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\View\Middleware\ShareErrorsFromSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php line: 121 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php line: 64 function: handleStatefulRequest class: Illuminate\Session\Middleware\StartSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Session\Middleware\StartSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php line: 37 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php line: 75 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Cookie\Middleware\EncryptCookies type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php line: 25 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Laravel\Sanctum\Http\Middleware\{closure}' class: Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php line: 24 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 807 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 786 function: runRouteWithinStack class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 750 function: runRoute class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 739 function: dispatchToRoute class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 201 function: dispatch class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Illuminate\Foundation\Http\{closure}' class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php line: 19 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Livewire\Features\SupportDisablingBackButtonCache\DisableBackButtonCacheMiddleware type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php line: 21 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php line: 31 function: handle class: Illuminate\Foundation\Http\Middleware\TransformsRequest type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php line: 21 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php line: 51 function: handle class: Illuminate\Foundation\Http\Middleware\TransformsRequest type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\TrimStrings type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php line: 27 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\ValidatePostSize type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php line: 110 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php line: 62 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\HandleCors type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php line: 58 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\TrustProxies type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php line: 22 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\InvokeDeferredCallbacks type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 176 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 145 function: sendRequestThroughRouter class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 310 function: handle class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 298 function: callLaravelOrLumenRoute class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 91 function: makeApiCall class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 44 function: makeResponseCall class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 35 function: makeResponseCallIfConditionsPass class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 237 function: __invoke class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 163 function: iterateThroughStrategies class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 95 function: fetchResponses class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 125 function: processRoute class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 72 function: extractEndpointsInfoFromLaravelApp class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 50 function: extractEndpointsInfoAndWriteToDisk class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php line: 53 function: get class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 36 function: handle class: Knuckles\Scribe\Commands\GenerateDocumentation type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/Util.php line: 43 function: 'Illuminate\Container\{closure}' class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 95 function: unwrapIfClosure class: Illuminate\Container\Util type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 35 function: callBoundMethod class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/Container.php line: 690 function: call class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Console/Command.php line: 213 function: call class: Illuminate\Container\Container type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Command/Command.php line: 279 function: execute class: Illuminate\Console\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Console/Command.php line: 182 function: run class: Symfony\Component\Console\Command\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 1047 function: run class: Illuminate\Console\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 316 function: doRunCommand class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 167 function: doRun class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php line: 197 function: run class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Application.php line: 1203 function: handle class: Illuminate\Foundation\Console\Kernel type: '->' - file: /home/c2341937c/public_html/_church/artisan line: 13 function: handleCommand class: Illuminate\Foundation\Application type: '->' properties: message: type: string example: 'Missing required parameter for [Route: password.store] [URI: api/v1/reset-password] [Missing parameter: { apiBaseUrl() ]. (View: /home/c2341937c/public_html/_church/resources/views/auth/reset-password.blade.php)' exception: type: string example: Illuminate\View\ViewException file: type: string example: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Exceptions/UrlGenerationException.php line: type: integer example: 35 trace: type: array example: - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 58 function: handleViewException class: Illuminate\View\Engines\CompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php line: 60 function: handleViewException class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 22 function: evaluatePath class: Illuminate\View\Engines\PhpEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php line: 74 function: evaluatePath class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: 10 function: get class: Illuminate\View\Engines\CompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 208 function: get class: Livewire\Mechanisms\ExtendBlade\ExtendedCompilerEngine type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 191 function: getContents class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/View.php line: 160 function: renderContents class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Response.php line: 70 function: render class: Illuminate\View\View type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Response.php line: 35 function: setContent class: Illuminate\Http\Response type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 920 function: __construct class: Illuminate\Http\Response type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 887 function: toResponse class: Illuminate\Routing\Router type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 807 function: prepareResponse class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Illuminate\Routing\{closure}' class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php line: 88 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\VerifyCsrfToken type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php line: 51 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Routing\Middleware\SubstituteBindings type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php line: 49 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\View\Middleware\ShareErrorsFromSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php line: 121 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php line: 64 function: handleStatefulRequest class: Illuminate\Session\Middleware\StartSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Session\Middleware\StartSession type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php line: 37 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php line: 75 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Cookie\Middleware\EncryptCookies type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php line: 25 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Laravel\Sanctum\Http\Middleware\{closure}' class: Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php line: 24 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 807 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 786 function: runRouteWithinStack class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 750 function: runRoute class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Routing/Router.php line: 739 function: dispatchToRoute class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 201 function: dispatch class: Illuminate\Routing\Router type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 144 function: 'Illuminate\Foundation\Http\{closure}' class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Features/SupportDisablingBackButtonCache/DisableBackButtonCacheMiddleware.php line: 19 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Livewire\Features\SupportDisablingBackButtonCache\DisableBackButtonCacheMiddleware type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php line: 21 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php line: 31 function: handle class: Illuminate\Foundation\Http\Middleware\TransformsRequest type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php line: 21 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php line: 51 function: handle class: Illuminate\Foundation\Http\Middleware\TransformsRequest type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\TrimStrings type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php line: 27 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\ValidatePostSize type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php line: 110 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php line: 62 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\HandleCors type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php line: 58 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Http\Middleware\TrustProxies type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php line: 22 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 183 function: handle class: Illuminate\Foundation\Http\Middleware\InvokeDeferredCallbacks type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php line: 119 function: 'Illuminate\Pipeline\{closure}' class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 176 function: then class: Illuminate\Pipeline\Pipeline type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php line: 145 function: sendRequestThroughRouter class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 310 function: handle class: Illuminate\Foundation\Http\Kernel type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 298 function: callLaravelOrLumenRoute class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 91 function: makeApiCall class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 44 function: makeResponseCall class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php line: 35 function: makeResponseCallIfConditionsPass class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 237 function: __invoke class: Knuckles\Scribe\Extracting\Strategies\Responses\ResponseCalls type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 163 function: iterateThroughStrategies class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php line: 95 function: fetchResponses class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 125 function: processRoute class: Knuckles\Scribe\Extracting\Extractor type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 72 function: extractEndpointsInfoFromLaravelApp class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php line: 50 function: extractEndpointsInfoAndWriteToDisk class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php line: 53 function: get class: Knuckles\Scribe\GroupedEndpoints\GroupedEndpointsFromApp type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 36 function: handle class: Knuckles\Scribe\Commands\GenerateDocumentation type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/Util.php line: 43 function: 'Illuminate\Container\{closure}' class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 95 function: unwrapIfClosure class: Illuminate\Container\Util type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php line: 35 function: callBoundMethod class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Container/Container.php line: 690 function: call class: Illuminate\Container\BoundMethod type: '::' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Console/Command.php line: 213 function: call class: Illuminate\Container\Container type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Command/Command.php line: 279 function: execute class: Illuminate\Console\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Console/Command.php line: 182 function: run class: Symfony\Component\Console\Command\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 1047 function: run class: Illuminate\Console\Command type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 316 function: doRunCommand class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/symfony/console/Application.php line: 167 function: doRun class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php line: 197 function: run class: Symfony\Component\Console\Application type: '->' - file: /home/c2341937c/public_html/_church/vendor/laravel/framework/src/Illuminate/Foundation/Application.php line: 1203 function: handle class: Illuminate\Foundation\Console\Kernel type: '->' - file: /home/c2341937c/public_html/_church/artisan line: 13 function: handleCommand class: Illuminate\Foundation\Application type: '->' items: type: object properties: file: type: string example: /home/c2341937c/public_html/_church/vendor/livewire/livewire/src/Mechanisms/ExtendBlade/ExtendedCompilerEngine.php line: type: integer example: 58 function: type: string example: handleViewException class: type: string example: Illuminate\View\Engines\CompilerEngine type: type: string example: '->' tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' security: [] parameters: - in: path name: token description: '' example: quas required: true schema: type: string /api/v1/logout: post: summary: 'Logout session.' operationId: logoutSession description: '' parameters: [] responses: { } tags: - 'Module | Account πŸ‘©πŸΏβ€πŸ’»' security: [] /api/v1/departments: get: summary: 'Department | List All Departments' operationId: departmentListAllDepartments description: 'Get the list of all departments in the system. This endpoint provides a full overview of all departments, including relevant details like department names, their associated roles, and any other useful metadata.' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: - id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' - id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' properties: data: type: array example: - id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' - id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' items: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' manager: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' tags: - 'Module | Department' post: summary: 'Department | Create New Department' operationId: departmentCreateNewDepartment description: 'Create a new department and store it in the system. The newly created department will include the department name, description, and any associated data. This endpoint ensures that departments are added accurately to the system.' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' manager: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' tags: - 'Module | Department' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'the name of the department. Must not be greater than 244 characters.' example: 'Thierry Thierry et Fils' description: type: string description: 'the description of the department.' example: 'Laudantium blanditiis est vel explicabo laborum. Cumque deleniti eveniet enim veritatis. Quas aut incidunt enim sit. Aliquam ipsam et beatae nemo et est debitis.' user_id: type: integer description: 'the id of user to be replaced.' example: 1 matricule: type: string description: 'the matricule of the department. if not provided system will auto generate a default matricule.' example: null required: - name - description - user_id '/api/v1/departments/{departmentId}': get: summary: 'Department | Show Department Details' operationId: departmentShowDepartmentDetails description: 'Retrieve detailed information about a specific department. This includes its name, description, associated members, and any events it is responsible for. Use this to get insights on departmental structure.' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null members: [] updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' manager: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor members_count: type: string example: null members: type: array example: [] updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' tags: - 'Module | Department' put: summary: 'Department | Update Department' operationId: departmentUpdateDepartment description: 'Update the details of a specific department and return the updated department data. This is essential when changes to department names, descriptions, or managers are required. The system will ensure the changes are reflected correctly.' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' manager: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' manager: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' tags: - 'Module | Department' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'the name of the department. Must not be greater than 244 characters.' example: 'Hoareau Gautier SAS' description: type: string description: 'the description of the department.' example: 'Voluptatem dignissimos a deserunt. Velit molestiae aut vero et porro laborum consequatur. Eum voluptatum eaque dicta in rerum. Tempora nihil explicabo ut tenetur placeat vero rem omnis.' user_id: type: integer description: 'the id of user to be replaced.' example: 1 required: - name - description - user_id delete: summary: 'Department | Delete Department' operationId: departmentDeleteDepartment description: 'Remove a specific department from the system. Once deleted, this action cannot be undone, and all department-related data will be permanently removed. Use this endpoint with caution.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: deleted properties: message: type: string example: deleted tags: - 'Module | Department' parameters: - in: path name: departmentId description: 'id of department' example: 9 required: true schema: type: integer '/api/v1/departments/{departmentId}/users': get: summary: 'Department | List Members' operationId: departmentListMembers description: 'Retrieve a list of all members associated with a specific department. This includes the member details such as their roles within the department, their joining date, and their current status.' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin properties: data: type: array example: - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin items: type: object properties: id: type: integer example: 1 name: type: string example: admin email: type: string example: admin@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:18.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: admin phone_number: type: string example: null role_id: type: integer example: 1 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 1 name: type: string example: global_admin tags: - 'Module | Department' parameters: - in: path name: departmentId description: 'id of department' example: 1 required: true schema: type: integer '/api/v1/departments/{departmentId}/chief/append': post: summary: 'Department | Add Manager' operationId: departmentAddManager description: 'Assign a new manager or update the current manager for a specific department. This ensures that the leadership structure is accurately maintained and reflects any recent changes in departmental management.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success properties: message: type: string example: success tags: - 'Module | Department' requestBody: required: true content: application/json: schema: type: object properties: user_id: type: integer description: '' example: 2 required: - user_id parameters: - in: path name: departmentId description: 'id of department' example: 1 required: true schema: type: integer '/api/v1/departments/requests/{requestId}/approve': post: summary: 'Department | Approve Join Request' operationId: departmentApproveJoinRequest description: 'Approve a join request submitted by a member wanting to join the department. Once approved, the member will be added to the department and can participate in its activities.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: approved status: 200 properties: message: type: string example: approved status: type: integer example: 200 tags: - 'Module | Department' parameters: - in: path name: requestId description: 'the request id' example: xxxx-xxxx-xxxx required: true schema: type: string '/api/v1/departments/requests/{requestId}/reject': post: summary: 'Department | Reject Join Request' operationId: departmentRejectJoinRequest description: 'Reject a join request from a member who wants to be part of the department. This ensures that only qualified or necessary members are allowed to join the department.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: rejected status: 200 properties: message: type: string example: rejected status: type: integer example: 200 tags: - 'Module | Department' parameters: - in: path name: requestId description: 'id of request' example: xxx-xxx-xxx required: true schema: type: string '/api/v1/departments/{departmentId}/requests/list': get: summary: 'Department | List All Join Requests' operationId: departmentListAllJoinRequests description: 'List all join requests for a department, including those that are pending, approved, or rejected. This gives administrators full visibility of all membership requests.' parameters: - in: query name: status description: 'the type of status returned' example: all required: true schema: type: string description: 'the type of status returned' example: all enum: - all - pending - approved - rejected responses: 200: description: ok content: application/json: schema: type: object example: data: - id: 1 request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f approved_at: null created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' user_id: 14 status: pending department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' user: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor - id: 1 request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f approved_at: null created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' user_id: 14 status: pending department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' user: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor properties: data: type: array example: - id: 1 request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f approved_at: null created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' user_id: 14 status: pending department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' user: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor - id: 1 request_id: 802fca01-5eb6-37e6-bb89-2c81d6be668f approved_at: null created_at: '2025-02-03T23:26:28.000000Z' updated_at: '2025-02-03T23:26:28.000000Z' user_id: 14 status: pending department_id: 1 department: id: 1 name: 'department number 1' matricule: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: 'description for department number 1' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:28.000000Z' user: id: 14 name: 'name test 13' email: email013@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "boulevard Monnier\n33747 Marchal" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:25.000000Z' updated_at: '2025-02-16T07:03:05.000000Z' surname: 'surname test 13' phone_number: null role_id: 2 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 2 name: pastor items: type: object properties: id: type: integer example: 1 request_id: type: string example: 802fca01-5eb6-37e6-bb89-2c81d6be668f approved_at: type: string example: null created_at: type: string example: '2025-02-03T23:26:28.000000Z' updated_at: type: string example: '2025-02-03T23:26:28.000000Z' user_id: type: integer example: 14 status: type: string example: pending department_id: type: integer example: 1 department: type: object properties: id: type: integer example: 1 name: type: string example: 'department number 1' matricule: type: string example: ICG-39eec551-8eb4-3fc8-a485-5132e7e8a5de description: type: string example: 'description for department number 1' members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:28.000000Z' user: type: object properties: id: type: integer example: 14 name: type: string example: 'name test 13' email: type: string example: email013@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "boulevard Monnier\n33747 Marchal" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:25.000000Z' updated_at: type: string example: '2025-02-16T07:03:05.000000Z' surname: type: string example: 'surname test 13' phone_number: type: string example: null role_id: type: integer example: 2 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 2 name: type: string example: pastor tags: - 'Module | Department' parameters: - in: path name: departmentId description: 'id of department' example: 1 required: true schema: type: integer /api/v1/events: get: summary: 'Event | List All Events' operationId: eventListAllEvents description: "\n This endpoint allows you to retrieve a list of all the events available in the system. It provides a comprehensive overview of each event, including essential details such as the event name, date, and status. This is useful for administrators or users looking to manage or join events." parameters: - in: query name: departmentId description: 'Return all department belong to departmentId' example: 1 required: false schema: type: integer description: 'Return all department belong to departmentId' example: 1 - in: query name: type description: "Type d'Γ©vΓ©nements Γ  lister. Peut Γͺtre all, my ou others. Par dΓ©faut all." example: my required: false schema: type: string description: "Type d'Γ©vΓ©nements Γ  lister. Peut Γͺtre all, my ou others. Par dΓ©faut all." example: my enum: - all - my - others - in: query name: state description: "State de l'Γ©vΓ©nement : past, current, upcoming." example: upcoming required: false schema: type: string description: "State de l'Γ©vΓ©nement : past, current, upcoming." example: upcoming enum: - past - current - upcoming - in: query name: status description: "Statut de l'Γ©vΓ©nement : past, current, upcoming." example: closed required: false schema: type: string description: "Statut de l'Γ©vΓ©nement : past, current, upcoming." example: closed enum: - pending - closed responses: 200: description: success content: application/json: schema: type: object example: data: - id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' - id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' properties: data: type: array example: - id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' - id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' items: type: object properties: id: type: integer example: 1 name: type: string example: 'event test 1' status: type: string example: NOT_CLOSED status_label: type: string example: NOT_CLOSED purpose: type: string example: Mlle description: type: string example: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: type: string example: '1981-02-01T21:20:50.000000Z' end_date: type: string example: '1995-10-10T02:20:34.000000Z' location: type: string example: "81, avenue de Ramos\n70262 Morel" poster: type: string example: '{{ apiBaseUrl() }}/storage' poster_url: type: string example: '{{ apiBaseUrl() }}/storage' phone_number: type: string example: null manager: type: object properties: id: type: integer example: 3 name: type: string example: 'name test 2' email: type: string example: email002@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:19.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: 'surname test 2' phone_number: type: string example: null role_id: type: integer example: 4 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' department: type: object properties: id: type: integer example: 4 name: type: string example: 'department number 4' matricule: type: string example: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: type: string example: 'description for department number 4' members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:29.000000Z' user_id: type: integer example: 3 updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:30.000000Z' tags: - 'Module | Events' post: summary: 'Event | Create A New Event' operationId: eventCreateANewEvent description: "\n Use this endpoint to create a new event and save it in the system. You will need to provide relevant details like the event name, start date, end date, and other necessary information. Once the event is successfully created, the system will return the newly created event with its unique identifier and all associated data." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'event test 1' status: type: string example: NOT_CLOSED status_label: type: string example: NOT_CLOSED purpose: type: string example: Mlle description: type: string example: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: type: string example: '1981-02-01T21:20:50.000000Z' end_date: type: string example: '1995-10-10T02:20:34.000000Z' location: type: string example: "81, avenue de Ramos\n70262 Morel" poster: type: string example: '{{ apiBaseUrl() }}/storage' poster_url: type: string example: '{{ apiBaseUrl() }}/storage' phone_number: type: string example: null user_id: type: integer example: 3 updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:30.000000Z' tags: - 'Module | Events' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'represent the name of the event .' example: 'prayer walk with 300 members in capte town' purpose: type: string description: 'purpose of event.' example: 'Cologne. Comme elle se mit Γ  parler culture.' description: type: string description: 'a small description about the event (text).' example: "Chez mademoiselle Lempereur. -- J'en -- ai -- connu. -- Eh bien! tu rΓ©flΓ©chiras, nous verrons, la." location: type: string description: 'where the location ought to be done.' example: 'avenue JΓ©rΓ΄me Morvan' phone_number: type: string description: 'phone of contact event.' example: '+33082668408' start_date: type: string description: 'when the event must be done. Must be a valid date.' example: 2025-02-16T07:03:23.101422+00:00 poster: type: string format: binary description: 'Must be an image.' end_date: type: string description: 'when the event must be finish . Must be a valid date. Must be a date after start_date.' example: 2025-02-16T17:03:23.101436+00:00 department_id: type: integer description: '' example: 17 user_id: type: integer description: 'represent the manager or the creator of this event.' example: 1 required: - name - purpose - description - location - phone_number - start_date - poster - end_date - department_id - user_id '/api/v1/events/{eventId}': get: summary: 'Event | Detail For An Event' operationId: eventDetailForAnEvent description: "\n This endpoint allows you to retrieve detailed information about a specific event. You need to provide the event's unique identifier (ID) to get its full details, including its participants, status, and timeline. This is ideal for users or organizers who want to view or monitor the specifics of an event." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 4 name: member department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 members: [] event_detail: id: null evangelised_number: 0 converted_number: 0 comment: '' other_number: 0 prayer_healing_number: 0 healing_number: null created_at: null updated_at: null event_id: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'event test 1' status: type: string example: NOT_CLOSED status_label: type: string example: NOT_CLOSED purpose: type: string example: Mlle description: type: string example: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: type: string example: '1981-02-01T21:20:50.000000Z' end_date: type: string example: '1995-10-10T02:20:34.000000Z' location: type: string example: "81, avenue de Ramos\n70262 Morel" poster: type: string example: '{{ apiBaseUrl() }}/storage' poster_url: type: string example: '{{ apiBaseUrl() }}/storage' phone_number: type: string example: null manager: type: object properties: id: type: integer example: 3 name: type: string example: 'name test 2' email: type: string example: email002@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:19.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: 'surname test 2' phone_number: type: string example: null role_id: type: integer example: 4 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 4 name: type: string example: member department: type: object properties: id: type: integer example: 4 name: type: string example: 'department number 4' matricule: type: string example: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: type: string example: 'description for department number 4' members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:29.000000Z' user_id: type: integer example: 3 members: type: array example: [] event_detail: type: object properties: id: type: string example: null evangelised_number: type: integer example: 0 converted_number: type: integer example: 0 comment: type: string example: '' other_number: type: integer example: 0 prayer_healing_number: type: integer example: 0 healing_number: type: string example: null created_at: type: string example: null updated_at: type: string example: null event_id: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:30.000000Z' tags: - 'Module | Events' put: summary: 'Event | Update An Event' operationId: eventUpdateAnEvent description: "\n This endpoint enables the update of an existing event in the system. By passing the event's ID and the updated details (such as changes in the event name, date, or participants), the system will modify the event accordingly and return the updated version. It ensures that events remain up-to-date and accurate." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'event test 1' status: type: string example: NOT_CLOSED status_label: type: string example: NOT_CLOSED purpose: type: string example: Mlle description: type: string example: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: type: string example: '1981-02-01T21:20:50.000000Z' end_date: type: string example: '1995-10-10T02:20:34.000000Z' location: type: string example: "81, avenue de Ramos\n70262 Morel" poster: type: string example: '{{ apiBaseUrl() }}/storage' poster_url: type: string example: '{{ apiBaseUrl() }}/storage' phone_number: type: string example: null user_id: type: integer example: 3 updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:30.000000Z' tags: - 'Module | Events' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'represent the name of the event .' example: 'prayer walk with 300 members in capte town' purpose: type: string description: 'purpose of event.' example: 'Elle eut un crachement de sang, et le menton.' description: type: string description: 'a small description about the event (text).' example: 'M. Bovary. Mais cette exaltation dΓ©licieuse, qui fait Γ  la verte odeur de la consoler par quantitΓ©.' location: type: string description: 'where the location ought to be done.' example: '65, chemin Grondin' phone_number: type: string description: 'phone of contact event.' example: '+33625647732' start_date: type: string description: 'when the event must be done. Must be a valid date.' example: 2025-02-16T07:03:23.123766+00:00 poster: type: string format: binary description: 'Must be an image.' end_date: type: string description: 'when the event must be finish . Must be a valid date. Must be a date after start_date.' example: 2025-02-16T17:03:23.123781+00:00 department_id: type: integer description: '' example: 4 user_id: type: integer description: 'represent the manager or the creator of this event.' example: 1 required: - name - purpose - description - location - phone_number - start_date - poster - end_date - department_id - user_id delete: summary: 'Event | Remove An Event' operationId: eventRemoveAnEvent description: "\n This endpoint is used to permanently delete a specific event from the database. Once removed, the event cannot be recovered. You must provide the event's ID to ensure that the correct event is deleted. Use this with caution, particularly for events with many participants or significant importance." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: deleted status: 200 properties: message: type: string example: deleted status: type: integer example: 200 tags: - 'Module | Events' parameters: - in: path name: eventId description: 'id of event' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/details': post: summary: 'Event | Update Event Detail' operationId: eventUpdateEventDetail description: "\n This endpoint enables the updating of detailed information for a specific event. By modifying aspects like event schedule or objectives, organizers can ensure that the event remains aligned with its intended goals." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Module | Events' requestBody: required: true content: application/json: schema: type: object properties: evangelised_number: type: integer description: '' example: 5 converted_number: type: integer description: '' example: 12 comment: type: string description: '' example: enim prayer_healing_number: type: integer description: '' example: 18 healing_number: type: integer description: '' example: 19 other_number: type: integer description: '' example: 8 contacts: type: array description: '' example: null items: type: object properties: contact_name: type: string description: '' example: sed phone_number: type: string description: '' example: in required: - contact_name - phone_number participants: type: array description: '' example: - [] items: type: object properties: user_id: type: integer description: 'represent each user that participate in event.' example: 13 participated: type: boolean description: 'designate if this user participate in this event.' example: false required: - user_id required: - evangelised_number - converted_number - other_number get: summary: 'Event | Get Event Detail' operationId: eventGetEventDetail description: "\n Use this endpoint to retrieve a detailed breakdown of an event, including its timeline, participants, and key milestones. This provides a comprehensive view for organizers and participants alike to understand the event's structure." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: id: null evangelised_number: null converted_number: null comment: null other_number: null prayer_healing_number: null healing_number: null created_at: null updated_at: null event_id: null properties: data: type: object properties: id: type: string example: null evangelised_number: type: string example: null converted_number: type: string example: null comment: type: string example: null other_number: type: string example: null prayer_healing_number: type: string example: null healing_number: type: string example: null created_at: type: string example: null updated_at: type: string example: null event_id: type: string example: null tags: - 'Module | Events' parameters: - in: path name: eventId description: '' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/contacts': get: summary: 'Event | List Event Contacts' operationId: eventListEventContacts description: "\n Use this endpoint to list all the important contacts associated with an event, such as event coordinators, speakers, or sponsors. This is especially useful for large events where many stakeholders are involved." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: - id: null name: null phone_number: null created_at: null updated_at: null event_detail_id: null - id: null name: null phone_number: null created_at: null updated_at: null event_detail_id: null properties: data: type: array example: - id: null name: null phone_number: null created_at: null updated_at: null event_detail_id: null - id: null name: null phone_number: null created_at: null updated_at: null event_detail_id: null items: type: object properties: id: type: string example: null name: type: string example: null phone_number: type: string example: null created_at: type: string example: null updated_at: type: string example: null event_detail_id: type: string example: null tags: - 'Module | Events' parameters: - in: path name: eventId description: '' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/finish': post: summary: 'Event | Mark As Finished' operationId: eventMarkAsFinished description: "\n This endpoint marks an event as finished. Once marked, the event will be considered closed and no further changes or participation will be allowed. It's typically used by event managers when an event concludes successfully." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Module | Events' parameters: - in: path name: eventId description: '' example: 1 required: true schema: type: integer '/api/v1/events/requests/{requestId}/approve': post: summary: 'Event | Approve A Join Request' operationId: eventApproveAJoinRequest description: "\n This endpoint is designed for approving a join request made by a user within a department. By approving this request, the user will officially become a participant of the event. This functionality is useful for event administrators managing participation in large-scale events." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: approved status: 200 properties: message: type: string example: approved status: type: integer example: 200 tags: - 'Module | Events' parameters: - in: path name: requestId description: 'the request id' example: xxxx-xxxx-xxxx required: true schema: type: string '/api/v1/events/requests/{requestId}/reject': post: summary: 'Event | Reject A Join Request' operationId: eventRejectAJoinRequest description: "\n With this endpoint, you can reject a join request submitted by a user. Rejection of the request means that the user will not be allowed to participate in the event. It is typically used by event managers or department heads when they need to manage attendance strictly." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: rejected status: 200 properties: message: type: string example: rejected status: type: integer example: 200 tags: - 'Module | Events' parameters: - in: path name: requestId description: 'the request id' example: xxxx-xxxx-xxxx required: true schema: type: string '/api/v1/events/{eventId}/requests': get: summary: 'Event | List All Requests' operationId: eventListAllRequests description: "\n This endpoint allows you to retrieve a complete list of all join requests related to an event, whether they are pending, approved, or rejected. This helps event organizers track participation requests and manage the approval workflow efficiently." parameters: - in: query name: status description: 'the type of status returned' example: all required: true schema: type: string description: 'the type of status returned' example: all enum: - all - pending - approved - rejected responses: 200: description: ok content: application/json: schema: type: object example: data: - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null properties: data: type: array example: - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null - id: null request_id: null approved_at: null rejected_at: null event_id: null status: pending user_id: null updated_at: null created_at: null items: type: object properties: id: type: string example: null request_id: type: string example: null approved_at: type: string example: null rejected_at: type: string example: null event_id: type: string example: null status: type: string example: pending user_id: type: string example: null updated_at: type: string example: null created_at: type: string example: null tags: - 'Module | Events' parameters: - in: path name: eventId description: 'id of event' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/users': get: summary: 'Event | List Event Members' operationId: eventListEventMembers description: "\n With this endpoint, you can list all the members currently registered as participants in a specific event. This is useful for event organizers or department heads who want to monitor attendance and ensure that all participants are accounted for." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: - id: null name: null email: null image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: null updated_at: null surname: null phone_number: null role_id: null site_id: null - id: null name: null email: null image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: null updated_at: null surname: null phone_number: null role_id: null site_id: null properties: data: type: array example: - id: null name: null email: null image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: null updated_at: null surname: null phone_number: null role_id: null site_id: null - id: null name: null email: null image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: null updated_at: null surname: null phone_number: null role_id: null site_id: null items: type: object properties: id: type: string example: null name: type: string example: null email: type: string example: null image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: null updated_at: type: string example: null surname: type: string example: null phone_number: type: string example: null role_id: type: string example: null site_id: type: string example: null 422: description: validation content: application/json: schema: type: object example: errors: event: 'event must exists' message: 'event must exists' properties: errors: type: object properties: event: type: string example: 'event must exists' message: type: string example: 'event must exists' tags: - 'Module | Events' parameters: - in: path name: eventId description: '' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/users/{userId}': post: summary: 'Event | Add A New Member' operationId: eventAddANewMember description: "\n This endpoint allows you to add a new participant to an event. By providing the user details and the event ID, the new member will be officially added to the list of event participants, ensuring they are part of all event activities." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: message: added properties: message: type: string example: added tags: - 'Module | Events' parameters: - in: path name: eventId description: '' example: 1 required: true schema: type: integer - in: path name: userId description: '' example: 1 required: true schema: type: integer '/api/v1/events/{eventId}/download': get: summary: 'Event | Download Event PDF' operationId: eventDownloadEventPDF description: "\n This endpoint allows users to download a PDF version of the event details. The PDF includes all the important information such as participants, schedule, and summary, which can be shared or archived for future reference." parameters: [] responses: 200: description: '' content: application/octet-stream: schema: type: string format: binary tags: - 'Module | Events' parameters: - in: path name: eventId description: 'id of event' example: 1 required: true schema: type: integer '/api/v1/departments/{departmentId}/events': get: summary: 'Department | List All Events' operationId: departmentListAllEvents description: "Retrieve all events that are organized or belong to a specific department. This helps in tracking the department's activities and ensuring all planned events are visible to department heads and members." parameters: [] responses: 200: description: success content: application/json: schema: type: object example: data: id: 1 name: 'event test 1' status: NOT_CLOSED status_label: NOT_CLOSED purpose: Mlle description: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: '1981-02-01T21:20:50.000000Z' end_date: '1995-10-10T02:20:34.000000Z' location: "81, avenue de Ramos\n70262 Morel" poster: '{{ apiBaseUrl() }}/storage' poster_url: '{{ apiBaseUrl() }}/storage' phone_number: null manager: id: 3 name: 'name test 2' email: email002@gmail.com image: '{{ apiBaseUrl() }}/storage' address: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:19.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: 'surname test 2' phone_number: null role_id: 4 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' department: id: 4 name: 'department number 4' matricule: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: 'description for department number 4' members_count: null updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:29.000000Z' user_id: 3 updated_at: '2025-02-16T07:03:10.000000Z' created_at: '2025-02-03T23:26:30.000000Z' properties: data: type: object properties: id: type: integer example: 1 name: type: string example: 'event test 1' status: type: string example: NOT_CLOSED status_label: type: string example: NOT_CLOSED purpose: type: string example: Mlle description: type: string example: 'Inventore corporis laborum sequi explicabo ab. Cumque omnis repellendus culpa autem. Enim a alias cumque.' start_date: type: string example: '1981-02-01T21:20:50.000000Z' end_date: type: string example: '1995-10-10T02:20:34.000000Z' location: type: string example: "81, avenue de Ramos\n70262 Morel" poster: type: string example: '{{ apiBaseUrl() }}/storage' poster_url: type: string example: '{{ apiBaseUrl() }}/storage' phone_number: type: string example: null manager: type: object properties: id: type: integer example: 3 name: type: string example: 'name test 2' email: type: string example: email002@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: "place Bourgeois\n47088 Peltier-sur-Denis" email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:19.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: 'surname test 2' phone_number: type: string example: null role_id: type: integer example: 4 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' department: type: object properties: id: type: integer example: 4 name: type: string example: 'department number 4' matricule: type: string example: ICG-6c12a71f-3127-3581-abe8-f36a4046c84c description: type: string example: 'description for department number 4' members_count: type: string example: null updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:29.000000Z' user_id: type: integer example: 3 updated_at: type: string example: '2025-02-16T07:03:10.000000Z' created_at: type: string example: '2025-02-03T23:26:30.000000Z' tags: - 'Module | Events' parameters: - in: path name: departmentId description: '' example: 1 required: true schema: type: integer /api/v1/users: get: summary: 'User | List All Users' operationId: userListAllUsers description: 'Retrieve a complete list of all users in the system. This provides a detailed overview of every user registered, including their associated roles, statuses, and metadata.' parameters: - in: query name: banned description: 'filter by banned users if provided and retrieve by their boolean value.' example: true required: false schema: type: boolean description: 'filter by banned users if provided and retrieve by their boolean value.' example: true - in: query name: star description: 'Retrieve all users if it is star. if star is provided it will return all users with boolean value of star given' example: true required: false schema: type: boolean description: 'Retrieve all users if it is star. if star is provided it will return all users with boolean value of star given' example: true responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin properties: data: type: array example: - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin - id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin items: type: object properties: id: type: integer example: 1 name: type: string example: admin email: type: string example: admin@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:18.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: admin phone_number: type: string example: null role_id: type: integer example: 1 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 1 name: type: string example: global_admin tags: - 'Module | Users' post: summary: 'User | Create New User' operationId: userCreateNewUser description: "Create a new user and store the user's information in the system. This endpoint allows you to define the user's details, including their role and profile information, and returns the newly created user data." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: token: XHDH293939jjfjfj939339339 expired_at: '2024-08-23' properties: token: type: string example: XHDH293939jjfjfj939339339 expired_at: type: string example: '2024-08-23' tags: - 'Module | Users' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'represent the name of user.' example: 'Alphonse-Guillaume Reynaud' image: type: string format: binary description: 'Must be an image.' phone_number: type: string description: 'phone number.' example: '+33 1 82 44 45 17' surname: type: string description: 'represent the surname of user.' example: Moreno address: type: string description: 'The correct address for the user.' example: "impasse Louis\n30161 MartyVille" email: type: string description: 'represent the email of user. Must be a valid email address. Must not be greater than 254 characters.' example: olivier20@example.com role_id: type: string description: '' example: re enum: - global_admin - pastor - re - member password: type: string description: 'represent the password of user.' example: password password_confirmation: type: string description: 'represent the confirmation password for user.' example: password site_id: type: integer description: '' example: 2 required: - name - surname - email - password - site_id '/api/v1/users/{userId}': get: summary: 'User | Show User Details' operationId: userShowUserDetails description: "Retrieve detailed information about a specific user. This includes the user's personal details, roles, associated departments, and any activity history within the system." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin properties: data: type: object properties: id: type: integer example: 1 name: type: string example: admin email: type: string example: admin@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:18.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: admin phone_number: type: string example: null role_id: type: integer example: 1 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 1 name: type: string example: global_admin tags: - 'Module | Users' put: summary: 'User | Update User' operationId: userUpdateUser description: "Update the details of a specific user and return the updated user data. Use this endpoint to modify the user's profile, role, or department membership." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: updated properties: message: type: string example: updated tags: - 'Module | Users' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'represent the name of user.' example: 'OcΓ©ane Ledoux' image: type: string format: binary description: 'Must be an image.' phone_number: type: string description: 'phone number.' example: '0378423843' surname: type: string description: 'represent the surname of user.' example: Guillot address: type: string description: 'The correct address for the user.' example: "boulevard Gabrielle Moreau\n24998 Colas" email: type: string description: 'represent the email of user. Must be a valid email address. Must not be greater than 254 characters.' example: ollivier.charlotte@example.com role_id: type: string description: '' example: member enum: - global_admin - pastor - re - member password: type: string description: 'represent the password of user.' example: password password_confirmation: type: string description: 'represent the confirmation password for user.' example: password required: - name - surname - email - password delete: summary: 'User | Delete User' operationId: userDeleteUser description: 'Remove a specific user from the system. Once deleted, all associated data and records tied to the user will be permanently removed from the database. Use this action carefully.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: deleted properties: message: type: string example: deleted tags: - 'Module | Users' parameters: - in: path name: userId description: '' example: 1 required: true schema: type: integer '/api/v1/user/{userId}/suspend': post: summary: 'User | Suspend Account' operationId: userSuspendAccount description: 'Suspend the account of a specific user. This will disable their access to the system and prevent them from participating in any events or activities until the suspension is lifted.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: leaved properties: message: type: string example: leaved tags: - 'Module | Users' parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer '/api/v1/user/{userId}/assignRole': post: summary: 'User | Assign Role' operationId: userAssignRole description: "Assign a specific role to a user. This endpoint allows you to update the user's permissions and responsibilities by changing or adding a new role." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: message: success properties: message: type: string example: success tags: - 'Module | Users' requestBody: required: true content: application/json: schema: type: object properties: role: type: string description: '' example: global_admin enum: - global_admin - pastor - re - member required: - role parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer '/api/v1/user/{userId}/revoke': post: summary: 'User | Revoke Role' operationId: userRevokeRole description: 'Revoke a role to member' parameters: [] responses: 200: description: revoked content: application/json: schema: type: object example: message: success status: 200 properties: message: type: string example: success status: type: integer example: 200 tags: - 'Module | Users' parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer '/api/v1/user/{userId}/department/{departmentId}/leave': post: summary: 'User | Leave Department' operationId: userLeaveDepartment description: "Allow a user to leave a specific department. This action removes the user's association with the department and any responsibilities tied to it." parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: user: [] department: [] properties: user: type: array example: [] department: type: array example: [] tags: - 'Module | Users' parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer - in: path name: departmentId description: 'id of department' example: 1 required: true schema: type: integer '/api/v1/users/{userId}/statistic': post: summary: 'User | statistic' operationId: userStatistic description: 'statistic user' parameters: [] responses: 200: description: ok content: application/json: schema: type: object example: data: id: 1 name: admin email: admin@gmail.com image: '{{ apiBaseUrl() }}/storage' address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:18.000000Z' updated_at: '2025-02-16T07:02:59.000000Z' surname: admin phone_number: null role_id: 1 site_id: 1 site: id: 1 name: 'Charle Roi' code: charle_roi address: 'Belgique,' description: description created_at: '2025-02-03T23:26:32.000000Z' updated_at: '2025-02-03T23:26:32.000000Z' role: id: 1 name: global_admin missed_events: [] participated_events: [] managed_departments: [] attached_departments: - id: 7 department_id: 8 updated_at: '2025-02-16T07:03:10.000000Z' joined_at: '2025-02-16T07:03:10.000000Z' user_id: 1 department: id: 8 name: 'department number 8' email: null image: null address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:29.000000Z' updated_at: '2025-02-16T07:03:10.000000Z' surname: null phone_number: null role_id: null site_id: 1 properties: data: type: object properties: id: type: integer example: 1 name: type: string example: admin email: type: string example: admin@gmail.com image: type: string example: '{{ apiBaseUrl() }}/storage' address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:18.000000Z' updated_at: type: string example: '2025-02-16T07:02:59.000000Z' surname: type: string example: admin phone_number: type: string example: null role_id: type: integer example: 1 site_id: type: integer example: 1 site: type: object properties: id: type: integer example: 1 name: type: string example: 'Charle Roi' code: type: string example: charle_roi address: type: string example: 'Belgique,' description: type: string example: description created_at: type: string example: '2025-02-03T23:26:32.000000Z' updated_at: type: string example: '2025-02-03T23:26:32.000000Z' role: type: object properties: id: type: integer example: 1 name: type: string example: global_admin missed_events: type: array example: [] participated_events: type: array example: [] managed_departments: type: array example: [] attached_departments: type: array example: - id: 7 department_id: 8 updated_at: '2025-02-16T07:03:10.000000Z' joined_at: '2025-02-16T07:03:10.000000Z' user_id: 1 department: id: 8 name: 'department number 8' email: null image: null address: null email_verified_at: null remember_token: null created_at: '2025-02-03T23:26:29.000000Z' updated_at: '2025-02-16T07:03:10.000000Z' surname: null phone_number: null role_id: null site_id: 1 items: type: object properties: id: type: integer example: 7 department_id: type: integer example: 8 updated_at: type: string example: '2025-02-16T07:03:10.000000Z' joined_at: type: string example: '2025-02-16T07:03:10.000000Z' user_id: type: integer example: 1 department: type: object properties: id: type: integer example: 8 name: type: string example: 'department number 8' email: type: string example: null image: type: string example: null address: type: string example: null email_verified_at: type: string example: null remember_token: type: string example: null created_at: type: string example: '2025-02-03T23:26:29.000000Z' updated_at: type: string example: '2025-02-16T07:03:10.000000Z' surname: type: string example: null phone_number: type: string example: null role_id: type: string example: null site_id: type: integer example: 1 tags: - 'Module | Users' parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer '/api/v1/users/{userId}/statistic/download/pdf': get: summary: 'User | Download pdf' operationId: userDownloadPdf description: 'download pdf' parameters: [] responses: 200: description: '' content: application/octet-stream: schema: type: string format: binary tags: - 'Module | Users' parameters: - in: path name: userId description: 'id of user' example: 1 required: true schema: type: integer tags: - name: 'Dashboard πŸ›€οΈ' description: '' - name: 'Module | Account πŸ‘©πŸΏβ€πŸ’»' description: '' - name: 'Module | Department' description: '' - name: 'Module | Events' description: '' - name: 'Module | Users' description: '' components: securitySchemes: default: type: http scheme: bearer description: 'You can retrieve your token by visiting your dashboard and clicking Generate API token.' security: - default: []