openapi: 3.0.3 info: title: 'SSO Server API Documentation' description: "This documentation provides all the information you will need to work with CUPID v2 API.\n The application is built with Laravel 9 PHP framework & is systematically versioned (SEMVER) to replace CUPID API v1." version: 1.0.0 servers: - url: 'http://api.idm.smartflowtech.org' paths: /api/auth/login: post: summary: 'Login a user using personal access token' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The id of the user' example: error password: type: string description: 'The id of the user' example: quo required: - email - password security: [] /api/auth/token: post: summary: 'Issue access & refresh tokens using oauth password grant type' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address.' example: considine.iva@example.net password: type: string description: 'The password of the user' example: inventore client_id: type: string description: 'The client_id that was issued to the vendor' example: distinctio client_secret: type: string description: 'The client_secret that was issued to the vendor' example: unde grant_type: type: string description: "Must be set to 'password'" example: aut username: type: string description: 'The email of the user' example: voluptatibus required: - email - password - client_id - client_secret - grant_type - username security: [] /api/user: get: summary: 'Get the logged-in user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 500: description: '' content: application/json: schema: type: object example: message: 'Invalid key supplied' properties: message: type: string example: 'Invalid key supplied' tags: - Endpoints /api/oauth/clients: get: summary: 'Display a listing of the oauth client resource.' description: 'Can also filter/search by name, vendor or client application' parameters: - in: query name: term description: 'Search query parameter' example: qui required: false schema: type: string description: 'Search query parameter' example: qui - in: query name: per_page description: 'Items per page' example: 7 required: false schema: type: integer description: 'Items per page' example: 7 - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints post: summary: 'Store a newly created resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'What you want to name this Oauth client' example: dolor redirect: type: string description: 'The URL to redirect the users after logging in' example: adipisci vendor_id: type: integer description: 'The ID of the vendor as stored in CUPID DB' example: 3 vendor_name: type: string description: 'The name of the vendor as stored in CUPID DB' example: maxime client_app: type: string description: 'The client application(PPOISe software product. Eg: TAM, CUPID)' example: dolore required: - name - vendor_id - vendor_name - client_app '/api/oauth/clients/{id}': get: summary: 'Display the oauth client resource.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints put: summary: 'Update the specified resource in storage.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints delete: summary: 'Delete the specified resource from storage.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints parameters: - in: path name: id description: 'The Oauth client ID that was issued to the application instance' example: nisi required: true schema: type: string '/api/oauth/revoke_client/{id}': get: summary: 'Revoke oauth client access to the authentication server' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints parameters: - in: path name: id description: 'The Oauth client ID that was issued to the application instance' example: voluptas required: true schema: type: string '/api/oauth/display_secret/{id}': post: summary: 'Show the unencrypted secret key if the user provides the correct password to the account' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: password: type: string description: 'The password the authenticated admin user' example: pariatur required: - password parameters: - in: path name: id description: 'The ID of the display secret.' example: eum required: true schema: type: string - in: path name: client_id description: 'The Oauth client ID that was issued to the application instance' example: quia required: true schema: type: string /api/oauth/token_access_logs: get: summary: "Display a list of all oauth tokens issued to users. Can also filter/search by users' name, email, vendor & client app" description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints /api/dashboard: get: summary: 'Get application metrics for dashboard' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints '/api/oauth/blacklist_ip/{user_id}/{ip_address}': get: summary: "Blacklist a users' IP address" description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints parameters: - in: path name: user_id description: 'The user_id to whom this IP will be blocked' example: 18 required: true schema: type: integer - in: path name: ip_address description: 'The IP address you want to block' example: ut required: true schema: type: string /api/auth/logout: get: summary: 'Logout a user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 500: description: '' content: application/json: schema: type: object example: message: 'Invalid key supplied' properties: message: type: string example: 'Invalid key supplied' tags: - Endpoints '/api/oauth/delete_token/{id}': delete: summary: 'Delete a token' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints parameters: - in: path name: id description: 'The ID of the token' example: quod required: true schema: type: string /api/cupid/groups: get: summary: 'Display a listing of vendor groups or search by name.' description: '' parameters: - in: query name: term description: 'Search query parameter' example: possimus required: false schema: type: string description: 'Search query parameter' example: possimus - in: query name: per_page description: 'Items per page' example: 11 required: false schema: type: integer description: 'Items per page' example: 11 - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: - vendors: [] - vendors: [] links: first: '/?page=1' last: '/?page=1' prev: null next: null meta: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 properties: data: type: array example: - vendors: [] - vendors: [] items: type: object links: type: object example: first: '/?page=1' last: '/?page=1' prev: null next: null meta: type: object example: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 tags: - Endpoints post: summary: 'Create a new vendor group' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: vendors: [] properties: data: type: object example: vendors: [] tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: pariatur description: type: string description: '' example: aut active: type: boolean description: '' example: false required: - name - description '/api/cupid/groups/{id}': get: summary: 'Display a vendor group resource.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: vendors: [] properties: data: type: object example: vendors: [] tags: - Endpoints put: summary: 'Update a vendor group.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: vendors: [] properties: data: type: object example: vendors: [] tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: sint description: type: string description: '' example: quia active: type: boolean description: '' example: false required: - name - description delete: summary: 'Delete a vendor group' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints parameters: - in: path name: id description: 'The company group ID that was issued to the application instance' example: quis required: true schema: type: string /api/cupid/vendors: get: summary: 'Display a listing of the vendors or search by name, phone number, email, address, city, state, country.' description: '' parameters: - in: query name: term description: 'Search query parameter' example: et required: false schema: type: string description: 'Search query parameter' example: et - in: query name: per_page description: 'Items per page' example: 10 required: false schema: type: integer description: 'Items per page' example: 10 - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: - id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null - id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null links: first: '/?page=1' last: '/?page=1' prev: null next: null meta: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 properties: data: type: array example: - id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null - id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null items: type: object links: type: object example: first: '/?page=1' last: '/?page=1' prev: null next: null meta: type: object example: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 tags: - Endpoints post: summary: 'Create a new vendor' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null properties: data: type: object example: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: quod group_id: type: string description: '' example: null sm_company_id: type: integer description: '' example: 15 address: type: string description: '' example: qui phone_number: type: string description: '' example: sed email: type: string description: 'Must be a valid email address.' example: dolorem country: type: string description: '' example: est state: type: string description: '' example: ducimus city: type: string description: '' example: in products_sold: type: string description: '' example: quia payment_type: type: string description: '' example: et has_active_paga_account: type: boolean description: '' example: true status: type: boolean description: '' example: true on_loyalty_program: type: boolean description: '' example: false create_wallet: type: boolean description: '' example: false required: - name - address - phone_number - email - country - state '/api/cupid/vendors/{id}': get: summary: 'Display a vendor resource.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null properties: data: type: object example: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null tags: - Endpoints put: summary: 'Update a vendor.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null properties: data: type: object example: id: 1 sm_company_id: 42 name: 'BHN Logistics' address: Sagamu email: Sourabh.sanganeria@tolaram.com phone_number: '08028268504' country: Nigeria state: 'Ogun State' city: Sagamu postcode: null products_sold: 'PMS,AGO' payment_type: neque contact_person: 'Sourabh sanganeria' registration_number: '1005' status: 1 has_active_paga_account: 0 on_loyalty_program: 0 created_at: '2023-02-16T11:23:28.000000Z' updated_at: '2023-09-22T11:49:33.000000Z' deleted_at: null tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: labore group_id: type: string description: '' example: null sm_company_id: type: integer description: '' example: 8 address: type: string description: '' example: et phone_number: type: string description: '' example: nulla email: type: string description: 'Must be a valid email address.' example: non country: type: string description: '' example: fugit state: type: string description: '' example: consequatur city: type: string description: '' example: aut products_sold: type: string description: '' example: laborum payment_type: type: string description: '' example: ut has_active_paga_account: type: boolean description: '' example: true status: type: boolean description: '' example: true on_loyalty_program: type: boolean description: '' example: false create_wallet: type: boolean description: '' example: false required: - name - address - phone_number - email - country - state delete: summary: 'Delete a vendor' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints parameters: - in: path name: id description: 'The vendor ID that was issued to the application instance' example: dolore required: true schema: type: string /api/cupid/get-all-vendors: get: summary: 'Get all the vendors(from CUPID DB)' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints '/api/profile/update-profile/{id}': patch: summary: 'Update user profile & password' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: title: Dr. name: 'Dr. Cristal Schuppe PhD' email: jeffery17@example.org username: zemlak.joanny email_verified_at: '2023-10-06T09:57:06.000000Z' phone: 1-219-436-7041 avatar: 'https://via.placeholder.com/640x480.png/00ffcc?text=illo' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 145 properties: data: type: object example: title: Dr. name: 'Dr. Cristal Schuppe PhD' email: jeffery17@example.org username: zemlak.joanny email_verified_at: '2023-10-06T09:57:06.000000Z' phone: 1-219-436-7041 avatar: 'https://via.placeholder.com/640x480.png/00ffcc?text=illo' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 145 tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: eos email: type: string description: 'Must be a valid email address.' example: langworth.emilie@example.com username: type: string description: '' example: ipsa gender: type: string description: 'Must be one of Male or Female.' example: Male phone: type: string description: '' example: molestiae current_password: type: string description: '' example: nemo password: type: string description: '' example: necessitatibus password_confirmation: type: string description: 'The value and password must match.' example: null required: - name - email - username - gender - phone parameters: - in: path name: id description: 'The ID of the user' example: 2 required: true schema: type: integer /api/reset-password: post: summary: 'Reset user password' description: '' parameters: - in: query name: email description: 'The user email' example: accusamus required: true schema: type: string description: 'The user email' example: accusamus - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints /api/register: post: summary: 'Register a user to SSO' description: '' parameters: - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: '' example: qui name: type: string description: '' example: quas phone: type: string description: '' example: ratione email: type: string description: 'Must be a valid email address.' example: noemi86@example.org username: type: string description: '' example: esse gender: type: string description: 'Must be one of Male or Female.' example: Female newsletter: type: boolean description: '' example: false active: type: boolean description: '' example: true suspended: type: boolean description: '' example: false is_admin: type: boolean description: '' example: false is_vendor: type: boolean description: '' example: false required: - name - phone - email - active - suspended - is_admin - is_vendor security: [] /api/users: get: summary: 'Display a listing of the users or search by name, email, address, state, country.' description: '' parameters: - in: query name: term description: 'Search query parameter' example: officia required: false schema: type: string description: 'Search query parameter' example: officia - in: query name: per_page description: 'Items per page' example: 9 required: false schema: type: integer description: 'Items per page' example: 9 - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: - title: Prof. name: 'Enola Cartwright' email: derick47@example.net username: mack.kling email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(602) 655-0415' avatar: 'https://via.placeholder.com/640x480.png/006622?text=iure' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 146 - title: Mr. name: 'Carmel Brekke' email: keith.watsica@example.org username: demarco.upton email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '+19108517534' avatar: 'https://via.placeholder.com/640x480.png/0055bb?text=dicta' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 147 links: first: '/?page=1' last: '/?page=1' prev: null next: null meta: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 properties: data: type: array example: - title: Prof. name: 'Enola Cartwright' email: derick47@example.net username: mack.kling email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(602) 655-0415' avatar: 'https://via.placeholder.com/640x480.png/006622?text=iure' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 146 - title: Mr. name: 'Carmel Brekke' email: keith.watsica@example.org username: demarco.upton email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '+19108517534' avatar: 'https://via.placeholder.com/640x480.png/0055bb?text=dicta' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 147 items: type: object links: type: object example: first: '/?page=1' last: '/?page=1' prev: null next: null meta: type: object example: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: '/?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: / per_page: 20 to: 2 total: 2 tags: - 'User Endpoints' post: summary: 'Create a new user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: title: Miss name: 'Ewell Macejkovic Sr.' email: graham.desiree@example.net username: hdoyle email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(706) 618-1130' avatar: 'https://via.placeholder.com/640x480.png/00ee22?text=enim' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 148 properties: data: type: object example: title: Miss name: 'Ewell Macejkovic Sr.' email: graham.desiree@example.net username: hdoyle email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(706) 618-1130' avatar: 'https://via.placeholder.com/640x480.png/00ee22?text=enim' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 148 tags: - 'User Endpoints' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: '' example: iure name: type: string description: '' example: neque phone: type: string description: '' example: aut email: type: string description: 'Must be a valid email address.' example: rossie.lesch@example.com username: type: string description: '' example: consequatur gender: type: string description: 'Must be one of Male or Female.' example: Female newsletter: type: boolean description: '' example: true active: type: boolean description: '' example: true suspended: type: boolean description: '' example: true is_admin: type: boolean description: '' example: true is_vendor: type: boolean description: '' example: false required: - name - phone - email - active - suspended - is_admin - is_vendor '/api/users/{id}': get: summary: 'Show a specified user.' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: title: Dr. name: 'Arianna Pfeffer' email: anabelle90@example.org username: alessia.pacocha email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(762) 461-7237' avatar: 'https://via.placeholder.com/640x480.png/00bb55?text=quo' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 149 properties: data: type: object example: title: Dr. name: 'Arianna Pfeffer' email: anabelle90@example.org username: alessia.pacocha email_verified_at: '2023-10-06T09:57:06.000000Z' phone: '(762) 461-7237' avatar: 'https://via.placeholder.com/640x480.png/00bb55?text=quo' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 149 tags: - 'User Endpoints' put: summary: 'Update the specified user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: 200: description: '0' content: application/json: schema: type: object example: data: title: Prof. name: 'Scarlett Watsica' email: abe49@example.net username: sawayn.isobel email_verified_at: '2023-10-06T09:57:06.000000Z' phone: +1-901-914-8850 avatar: 'https://via.placeholder.com/640x480.png/008811?text=voluptas' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 150 properties: data: type: object example: title: Prof. name: 'Scarlett Watsica' email: abe49@example.net username: sawayn.isobel email_verified_at: '2023-10-06T09:57:06.000000Z' phone: +1-901-914-8850 avatar: 'https://via.placeholder.com/640x480.png/008811?text=voluptas' is_admin: false is_vendor: false updated_at: '2023-10-06T09:57:06.000000Z' created_at: '2023-10-06T09:57:06.000000Z' id: 150 tags: - 'User Endpoints' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: '' example: necessitatibus name: type: string description: '' example: ab phone: type: string description: '' example: velit email: type: string description: 'Must be a valid email address.' example: brittany81@example.org username: type: string description: '' example: dolores gender: type: string description: 'Must be one of Male or Female.' example: Female newsletter: type: boolean description: '' example: false active: type: boolean description: '' example: true suspended: type: boolean description: '' example: false is_admin: type: boolean description: '' example: true is_vendor: type: boolean description: '' example: false required: - name - phone - email - active - suspended - is_admin - is_vendor delete: summary: 'Delete a user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - 'User Endpoints' parameters: - in: path name: id description: 'The ID of the user' example: 13 required: true schema: type: integer '/api/users/f_del_user/{id}': delete: summary: 'Permanently delete a user' description: '' parameters: - in: header name: Authorization description: '' example: '{YOUR_AUTH_KEY}' schema: type: string - in: header name: Content-Type description: '' example: application/json schema: type: string - in: header name: Accept description: '' example: application/json schema: type: string responses: { } tags: - 'User Endpoints' parameters: - in: path name: id description: 'The ID of the user' example: 13 required: true schema: type: integer tags: - name: Endpoints description: '' - name: 'User Endpoints' description: '' components: securitySchemes: default: type: apiKey name: Authorization in: header description: '' security: - default: []