openapi: 3.0.3 info: title: 'Smarter Launch' description: 'API documentation for developers' version: 1.0.0 servers: - url: 'https://staging.api.smarterlaunch.com' paths: /api/v1/service-plans: get: summary: List operationId: list description: 'Shows the list of Service Plans with pagination.' parameters: [] responses: { } tags: - 'Service Plan' post: summary: Create operationId: create description: 'Store a newly created Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of Service Plan.' example: 'Premium Service Plan' display_name: type: string description: '' example: sit description: type: string description: 'The description of Service Plan.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' company_locations_uuid: type: array description: 'List of company_location_uuid.' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string categories_uuid: type: array description: 'List of category_uuid. Example:' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string default_contract_term: type: string description: '' example: null default_contract_term_units: type: number description: '' example: 28454150.70456 required: - name parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 16 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sit - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: asperiores - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ducimus - in: path name: string description: 'Optional parameter. The filter for service plans with status in statuses_uuid.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: '["725d1dcd-54ad-3a8b-a28e-830c43d8ed6c", "b033658c-4532-3dd7-9be7-64433580eda6"]' '/api/v1/service-plans/{servicePlan_uuid}': get: summary: Get operationId: get description: 'Shows the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' put: summary: Update operationId: update description: 'Perform a full field update for the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of Service Plan.' example: 'Premium Service Plan' display_name: type: string description: '' example: quia description: type: string description: 'The description of Service Plan.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' company_locations_uuid: type: array description: 'List of company_location_uuid.' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string categories_uuid: type: array description: 'List of category_uuid. Example:' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string default_contract_term: type: string description: '' example: null default_contract_term_units: type: number description: '' example: 27606.347593 save_as: type: string description: '' example: SERVICE_PLAN_ACTIVE enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED required: - name patch: summary: Patch operationId: patch description: 'Perform a patch for the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'requiredThe name of Service Plan.' example: 'Premium Service Plan' display_name: type: string description: '' example: et description: type: string description: 'The description of Service Plan.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' company_locations_uuid: type: array description: 'List of company_location_uuid.' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string categories_uuid: type: array description: 'List of category_uuid. Example:' example: - 10933939-447e-3d2c-944f-b3ef57dc6eeb - 10933939-447e-3d2c-944f-b3ef57dc6eeb items: type: string settings: type: object description: '' example: null properties: { } default_contract_term: type: string description: '' example: null default_contract_term_units: type: number description: '' example: 67.6 save_as: type: string description: '' example: SERVICE_PLAN_ARCHIVED enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED delete: summary: Delete operationId: delete description: 'Remove the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/service-plans/{servicePlan_uuid}/duplicate': post: summary: Duplicate operationId: duplicate description: 'This endpoint lets user to duplicate service plan and set into a draft mode' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer - in: path name: service_plan_uuid description: 'Optional parameter. uuid required The uuid of the service plan.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f '/api/v1/service-plans/{servicePlan_uuid}/draft': patch: summary: 'Save as Draft' operationId: saveAsDraft description: 'Save as Draft the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/service-plans/{servicePlan_uuid}/publish': patch: summary: Publish operationId: publish description: 'Publish the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/service-plans/{servicePlan_uuid}/archive': patch: summary: Archived operationId: archived description: 'Archived the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/service-plans/{servicePlan_uuid}/unarchive': patch: summary: Unarchived operationId: unarchived description: 'Unarchived the specified Service Plan.' parameters: [] responses: { } tags: - 'Service Plan' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/companies/{company_uuid}/decline-reasons': get: summary: List operationId: list description: 'Shows the list of decline reasons with pagination.' parameters: [] responses: { } tags: - 'Decline Reason' post: summary: Store operationId: store description: 'Store a newly created decline reasons.' parameters: [] responses: { } tags: - 'Decline Reason' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the decline reasons. Example : So Expensive' example: placeat description: type: object description: 'The description of the decline reasons.' example: 'Lorem, ipsum dolor sit amet consectetur adipisicing elit.' properties: { } required: - title parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 4 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 15 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: amet - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: tempore - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sed '/api/v1/companies/{company_uuid}/decline-reasons/{declineReason_uuid}': get: summary: Show operationId: show description: 'Show a single decline reason.' parameters: [] responses: { } tags: - 'Decline Reason' put: summary: Update operationId: update description: 'Update a decline reason.' parameters: [] responses: { } tags: - 'Decline Reason' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the decline reasons. Example : "So Expensive"' example: rerum description: type: object description: 'The description of the decline reasons.' example: 'Lorem, ipsum dolor sit amet consectetur adipisicing elit.' properties: { } required: - title patch: summary: Patch operationId: patch description: 'Patch a company decline reason.' parameters: [] responses: { } tags: - 'Decline Reason' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the decline reasons. Example : So Expensive' example: iure description: type: object description: 'The description of the decline reasons.' example: 'Lorem, ipsum dolor sit amet consectetur adipisicing elit.' properties: { } required: - title delete: summary: Delete operationId: delete description: 'Delete a decline reason.' parameters: [] responses: { } tags: - 'Decline Reason' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: declineReason_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/automations': get: summary: List operationId: list description: 'Shows the list of Automations with pagination.' parameters: [] responses: { } tags: - Automation post: summary: Create operationId: create description: 'Store a newly created Automation.' parameters: [] responses: { } tags: - Automation requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the automation.' example: 'Small Pests' description: type: string description: 'The description of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' type: type: string description: 'The type of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' actions: type: array description: "of object required The actions of automation.\n Example : [{action: \"SEND_EMAIL\",\n value: [\"john@smarterlaunch.com\", \"smith@smarterlaunch.com\"],\n settings: {body: \"Please follow-up with this and set an appointment.\"}}]" example: - nostrum items: type: string filters: type: array description: "of object required The filters of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS\",value: \"3245d630-24fd-11ec-accd-e397aec85c7f\",},\n {type: \"USER\",operator: \"IS_ONE_OF\",value: [\"3245d630-24fd-11ec-accd-e397aec85c7f\",\n \"3245d630-24fd-11ec-accd-e397aec85c7h\"]}]" example: - aut items: type: string triggers: type: array description: "of object required The triggers of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS_CHANGED_TO\",value: \"3245d630-24fd-11ec-accd-e397aec85c7f\"}]" example: - occaecati items: type: string required: - name - type parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 12 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quia - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nisi - in: path name: is_enabled description: 'Optional parameter. boolean Filter by enabled status. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: reiciendis '/api/v1/companies/{company_uuid}/automations/{automation_uuid}': get: summary: Get operationId: get description: 'Display the specified Automation.' parameters: [] responses: { } tags: - Automation put: summary: Update operationId: update description: 'Modify the specified Automation.' parameters: [] responses: { } tags: - Automation requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the automation.' example: 'Small Pests' description: type: string description: 'The description of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' type: type: string description: 'The type of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' actions: type: array description: "of object required The actions of automation.\n Example : [{action: \"SEND_EMAIL\",value: [\"john@smarterlaunch.com\", \"smith@smarterlaunch.com\"],\n settings: {body: \"Please follow-up with this and set an appointment.\"}}]" example: - voluptatem items: type: string filters: type: array description: "of object required The filters of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS\",\n value: \"3245d630-24fd-11ec-accd-e397aec85c7f\",},\n {type: \"USER\",operator: \"IS_ONE_OF\",\n value: [\"3245d630-24fd-11ec-accd-e397aec85c7f\", \"3245d630-24fd-11ec-accd-e397aec85c7h\"]}]" example: - perspiciatis items: type: string triggers: type: array description: "of object required The triggers of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS_CHANGED_TO\",value: \"3245d630-24fd-11ec-accd-e397aec85c7f\"}]" example: - dolore items: type: string required: - name - type patch: summary: Patch operationId: patch description: 'Perform patches for the specified Automation.' parameters: [] responses: { } tags: - Automation requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the automation.' example: 'Small Pests' description: type: string description: 'The description of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' type: type: string description: 'The type of the automation.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' actions: type: array description: "of object The actions of automation.\n Example : [{action: \"SEND_EMAIL\",\n value: [\"john@smarterlaunch.com\", \"smith@smarterlaunch.com\"],\n settings: {body: \"Please follow-up with this and set an appointment.\"}}]" example: - explicabo items: type: string filters: type: array description: "of object The filters of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS\",\n value: \"3245d630-24fd-11ec-accd-e397aec85c7f\",},\n {type: \"USER\",operator: \"IS_ONE_OF\",\n value: [\"3245d630-24fd-11ec-accd-e397aec85c7f\", \"3245d630-24fd-11ec-accd-e397aec85c7h\"]}]" example: - expedita items: type: string triggers: type: array description: "of object The triggers of automation.\n Example : [{type: \"CUSTOMER\",operator: \"IS_CHANGED_TO\",value: \"3245d630-24fd-11ec-accd-e397aec85c7f\"}]" example: - dignissimos items: type: string delete: summary: Delete operationId: delete description: 'Remove the specified Automation.' parameters: [] responses: { } tags: - Automation parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: automation_uuid description: '' example: 3 required: true schema: type: integer /api/v1/heartbeat: post: summary: Lock operationId: lock description: 'Lock a specific item of given the type for editing' parameters: [] responses: { } tags: - Heartbeat requestBody: required: true content: application/json: schema: type: object properties: type: type: string description: 'The type of endpoint to be locked.' example: '"Proposal"' uuid: type: string description: 'The uuid of the specific item.' example: '"f26834b1-b086-3c99-adc7-b1660383a3fd"' required: - type - uuid delete: summary: Unlock operationId: unlock description: 'Unlock a specific item of given the type for editing' parameters: [] responses: { } tags: - Heartbeat requestBody: required: true content: application/json: schema: type: object properties: type: type: string description: 'The type of endpoint to be unlocked.' example: '"Proposal"' uuid: type: string description: 'The uuid of the specific item.' example: '"f26834b1-b086-3c99-adc7-b1660383a3fd"' required: - type - uuid /api/v1/roles: get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of role or fetch single record using uuid.' parameters: [] responses: { } tags: - Role requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the role.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'optional The role name.' example: admin post: summary: 'Create / Update role.' operationId: createUpdateRole description: 'This endpoint lets user to create/update role.' parameters: [] responses: { } tags: - Role requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the role.' example: admin uuid: type: string description: 'optional The uuid of the role.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 required: - name '/api/v1/roles/{roleUuid}': get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of role or fetch single record using uuid.' parameters: [] responses: { } tags: - Role requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the role.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'optional The role name.' example: admin put: summary: 'Create / Update role.' operationId: createUpdateRole description: 'This endpoint lets user to create/update role.' parameters: [] responses: { } tags: - Role requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the role.' example: admin uuid: type: string description: 'optional The uuid of the role.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 required: - name delete: summary: Delete operationId: delete description: '' parameters: [] responses: { } tags: - Role parameters: - in: path name: roleUuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/reviews': get: summary: List operationId: list description: 'Shows the list of review with pagination.' parameters: [] responses: { } tags: - Review post: summary: Store operationId: store description: 'Store a newly created review.' parameters: [] responses: { } tags: - Review requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the customer/reviewer. Example : "My Review"' example: et message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: sed rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: nulla photo: type: string format: binary description: 'The file photo of the review..jpg, .jpeg, .png' external_photo_url: type: string description: 'An external url of an image as review/photo.' example: 'http://www.kuhlman.biz/' position: type: integer description: 'The the position of the review. Example : 2' example: 4 company_location_uuid: type: uuid description: 'The company location to be associated to the review. Leaving empty/blank means visible to all company locations.' example: 8b721c17-3368-3688-afe9-30d1e9ce3790 required: - name - rate patch: summary: 'Patch Index' operationId: patchIndex description: 'Performs specific updates for review ranking' parameters: [] responses: { } tags: - Review parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 15 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 14 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: dolorum - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptas - in: path name: is_all_location description: 'Optional parameter. boolean Will get all reviews that is not company location specific. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quia '/api/v1/companies/{company_uuid}/reviews/{review_uuid}': get: summary: Show operationId: show description: 'Show a single review.' parameters: [] responses: { } tags: - Review post: summary: Update operationId: update description: 'Update a review.' parameters: [] responses: { } tags: - Review requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the customer/reviewer. Example : "My Review"' example: nihil message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: consectetur rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: ut photo: type: string format: binary description: 'The file photo of the review..jpg, .jpeg, .png' external_photo_url: type: string description: 'An external url of an image as review/photo.' example: 'http://www.jast.com/' position: type: integer description: 'The the position of the review. Example : 2' example: 18 company_location_uuid: type: uuid description: 'The company location to be associated to the review. Leaving empty/blank means visible to all company locations.' example: f7385aa8-02f2-3bd0-8644-56e31b893e48 required: - name - rate patch: summary: Patch operationId: patch description: 'Patch a company review.' parameters: [] responses: { } tags: - Review requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the customer/reviewer. Example : "My Review"' example: esse message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: saepe rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: assumenda external_photo_url: type: string description: 'An external url of an image as review/photo.' example: 'http://www.lueilwitz.com/debitis-dolor-omnis-esse-voluptatum-et.html' position: type: integer description: 'The the position of the review. Example : 2' example: 19 company_location_uuid: type: uuid description: 'The company location to be associated to the review. Leaving empty/blank means visible to all company locations.' example: 9d8d3bcb-24ce-3942-9876-417c492cc89a delete: summary: Delete operationId: delete description: 'Delete a review.' parameters: [] responses: { } tags: - Review parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: review_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/forms/{form_uuid}/fields': get: summary: List operationId: list description: 'Shows the list of form fields with pagination.' parameters: [] responses: { } tags: - 'Form Field' post: summary: Store operationId: store description: 'Store a newly created formField.' parameters: [] responses: { } tags: - 'Form Field' requestBody: required: true content: application/json: schema: type: object properties: label: type: string description: 'The label of the form field. Example : "Are you satisfied with the communication from our technician?"' example: placeat input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: beatae default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: doloremque is_required: type: boolean description: 'The label of the form field. Example : true' example: true is_conditional: type: boolean description: 'The label of the form field. Example : true' example: true has_help_guide: type: boolean description: 'The label of the form field. Example : true' example: true conditional_value: type: text description: 'The label of the form field. Example : {"condition1":"condition"}' example: eum help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: quia position: type: integer description: 'The position of the form field. Example : 1' example: 6 required: - label - input_type parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: form_uuid description: '' example: 2 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 14 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: in - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Quality Assurance"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: alias '/api/v1/companies/{company_uuid}/forms/{form_uuid}/fields/{formField_uuid}': get: summary: Show operationId: show description: 'Show a single form field.' parameters: [] responses: { } tags: - 'Form Field' put: summary: Update operationId: update description: 'Update a formfield.' parameters: [] responses: { } tags: - 'Form Field' requestBody: required: true content: application/json: schema: type: object properties: label: type: string description: 'The label of the form field. Example : "Are you satisfied with the communication from our technician?"' example: ratione input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: dolor default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: unde is_required: type: boolean description: 'The label of the form field. Example : true' example: false is_conditional: type: boolean description: 'The label of the form field. Example : true' example: true has_help_guide: type: boolean description: 'The label of the form field. Example : true' example: true conditional_value: type: text description: 'The label of the form field. Example : {"condition1":"condition"}' example: unde help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: odio position: type: integer description: 'The position of the form field. Example : 1' example: 13 required: - label - input_type post: summary: Update operationId: update description: 'Update a formfield.' parameters: [] responses: { } tags: - 'Form Field' requestBody: required: true content: application/json: schema: type: object properties: label: type: string description: 'The label of the form field. Example : "Are you satisfied with the communication from our technician?"' example: alias input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: ducimus default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: aperiam is_required: type: boolean description: 'The label of the form field. Example : true' example: true is_conditional: type: boolean description: 'The label of the form field. Example : true' example: false has_help_guide: type: boolean description: 'The label of the form field. Example : true' example: false conditional_value: type: text description: 'The label of the form field. Example : {"condition1":"condition"}' example: ut help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: iusto position: type: integer description: 'The position of the form field. Example : 1' example: 15 required: - label - input_type patch: summary: Patch operationId: patch description: 'Patch a company form field.' parameters: [] responses: { } tags: - 'Form Field' requestBody: required: false content: application/json: schema: type: object properties: label: type: string description: 'The label of the form field. Example : "Are you satisfied with the communication from our technician?"' example: aliquam input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: illum default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: repellendus is_required: type: boolean description: 'The label of the form field. Example : true' example: true is_conditional: type: boolean description: 'The label of the form field. Example : true' example: true has_help_guide: type: boolean description: 'The label of the form field. Example : true' example: true conditional_value: type: text description: 'The label of the form field. Example : {"condition1":"condition"}' example: mollitia help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: sed position: type: integer description: 'The position of the form field. Example : 1' example: 8 delete: summary: Delete operationId: delete description: 'Delete a form field.' parameters: [] responses: { } tags: - 'Form Field' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: form_uuid description: '' example: 2 required: true schema: type: integer - in: path name: formField_uuid description: '' example: 6d2f162c-47a5-3c3a-95c2-9d364c5d6d2e required: true schema: type: string /api/v1/app-data: get: summary: 'Application Settings.' operationId: applicationSettings description: 'Show the list of application data: [roles, company_locations, statuses, countries[states], client_version]' parameters: [] responses: { } tags: - 'App Data' '/api/v1/customers/{customer_uuid}/customer-contacts': put: summary: Update operationId: update description: 'Update customer contacts' parameters: [] responses: { } tags: - 'Customer Contacts' requestBody: required: false content: application/json: schema: type: object properties: 'contacts[]': type: array description: 'of contacts.' example: null items: type: string 'delete_contacts[]': type: array description: 'of contacts.uuid to be deleted.' example: null items: type: string parameters: - in: path name: customer_uuid description: 'Optional parameter. uuid required The UUID of the customer that is to be updated.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d634-24fd-11ec-accd-e397aec85c7f '/api/v1/service-plans/{servicePlan_uuid}/custom-fields': get: summary: List operationId: list description: 'Shows the list of Service Plan Custom Fields with pagination.' parameters: [] responses: { } tags: - 'Service Plan Custom Field' post: summary: 'Create (Single/Multiple)' operationId: createSingleMultiple description: "Store a newly created Service Plan Custom Field.\nFor multiple creation, the @bodyParameter will be an array of a single @bodyParameter" parameters: [] responses: { } tags: - 'Service Plan Custom Field' requestBody: required: true content: application/json: schema: type: object properties: label: type: string description: 'The label Service Plan Custom Field.' example: 'First Name' input_type: type: string description: 'The field type of the custom field.' example: TEXT default_value: type: string description: 'optional The default value of the custom field.' example: '""' combine_input_value_collection: type: boolean description: 'optional The option to combine custom fields by label.' example: true required: - label - input_type put: summary: 'Update (Single/Multiple)' operationId: updateSingleMultiple description: "Modify the specified Service Plan Custom Field.\nFor Multiple update, @bodyparameter will be an array of the Single @bodyParameter (if uuid is included then perform an update; else, create new record)." parameters: [] responses: { } tags: - 'Service Plan Custom Field' requestBody: required: true content: application/json: schema: type: object properties: custom_fields: type: array description: 'Must have at least 0 items. Must not have more than 150 items.' example: ypixgdofcc items: type: string save_service_plan_as: type: string description: '' example: SERVICE_PLAN_DRAFT enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED label: type: string description: 'The label Service Plan Custom Field.' example: 'First Name' input_type: type: string description: 'The field type of the custom field.' example: TEXT default_value: type: string description: 'optional The default value of the custom field.' example: '""' combine_input_value_collection: type: boolean description: 'optional The option to combine custom fields by label.' example: true required: - label - input_type parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 20 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: laboriosam - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quaerat - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: laudantium '/api/v1/service-plans/{servicePlan_uuid}/custom-fields/{servicePlanCustomField_uuid}': get: summary: Get operationId: get description: 'Display the specified Service Plan Custom Field.' parameters: [] responses: { } tags: - 'Service Plan Custom Field' put: summary: 'Update (Single/Multiple)' operationId: updateSingleMultiple description: "Modify the specified Service Plan Custom Field.\nFor Multiple update, @bodyparameter will be an array of the Single @bodyParameter (if uuid is included then perform an update; else, create new record)." parameters: [] responses: { } tags: - 'Service Plan Custom Field' requestBody: required: true content: application/json: schema: type: object properties: custom_fields: type: array description: 'Must have at least 0 items. Must not have more than 150 items.' example: bhpznpzxqrlmkg items: type: string save_service_plan_as: type: string description: '' example: SERVICE_PLAN_DRAFT enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED label: type: string description: 'The label Service Plan Custom Field.' example: 'First Name' input_type: type: string description: 'The field type of the custom field.' example: TEXT default_value: type: string description: 'optional The default value of the custom field.' example: '""' combine_input_value_collection: type: boolean description: 'optional The option to combine custom fields by label.' example: true required: - label - input_type patch: summary: Patch operationId: patch description: 'Perform patches for the specified Service Plan Custom Field.' parameters: [] responses: { } tags: - 'Service Plan Custom Field' requestBody: required: false content: application/json: schema: type: object properties: label: type: string description: 'The label Service Plan Custom Field.' example: 'First Name' input_type: type: string description: 'The field type of the custom field.' example: TEXT default_value: type: string description: 'optional The default value of the custom field.' example: '""' combine_input_value_collection: type: boolean description: 'optional The option to combine custom fields by label.' example: true delete: summary: Delete operationId: delete description: 'Remove the specified Service Plan Custom Field.' parameters: [] responses: { } tags: - 'Service Plan Custom Field' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer - in: path name: servicePlanCustomField_uuid description: '' example: a66a796a-d987-39cb-8340-ba850ea4f199 required: true schema: type: string /api/v1/media-tags: get: summary: List operationId: list description: 'Shows the list of media tag with pagination.' parameters: [] responses: { } tags: - 'Media Tag' post: summary: Store operationId: store description: 'Upload a media tag' parameters: [] responses: { } tags: - 'Media Tag' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the file. Example : Tag 1' example: quis parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 18 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quod - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ipsa - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: consequatur '/api/v1/media-tags/{mediaTag_uuid}': get: summary: Show operationId: show description: 'Show a single media tag' parameters: [] responses: { } tags: - 'Media Tag' put: summary: Update operationId: update description: 'Update a media tag.' parameters: [] responses: { } tags: - 'Media Tag' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media tag. Example : "My media tag"' example: modi required: - name patch: summary: Patch operationId: patch description: 'Patch a media tag.' parameters: [] responses: { } tags: - 'Media Tag' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media tag. Example : "My media tag"' example: occaecati required: - name delete: summary: Delete operationId: delete description: 'Delete a media tag.' parameters: [] responses: { } tags: - 'Media Tag' parameters: - in: path name: mediaTag_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/property-locations': get: summary: List operationId: list description: 'Shows the list of property locations with pagination.' parameters: [] responses: { } tags: - 'Property Locations' post: summary: Store operationId: store description: 'Store a newly created property location.' parameters: [] responses: { } tags: - 'Property Locations' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the property location. Example : "Living Room"' example: laboriosam required: - name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 4 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: aut - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: fuga - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nisi '/api/v1/companies/{company_uuid}/property-locations/{propertyLocation_uuid}': get: summary: Show operationId: show description: 'Show a single property location.' parameters: [] responses: { } tags: - 'Property Locations' put: summary: Update operationId: update description: 'Update a property location.' parameters: [] responses: { } tags: - 'Property Locations' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the property location. Example : "Living Room Updated"' example: rerum required: - name patch: summary: Patch operationId: patch description: 'Patch a company property location.' parameters: [] responses: { } tags: - 'Property Locations' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the property location. Example : "Living Room Patched"' example: sit delete: summary: Delete operationId: delete description: 'Delete a property location.' parameters: [] responses: { } tags: - 'Property Locations' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: propertyLocation_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/countries/{countryUuid}/states/{countryStateUuid}': get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of state or fetch single record using uuid.' parameters: [] responses: { } tags: - State requestBody: required: false content: application/json: schema: type: object properties: country_uuid: type: string description: 'optional The country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_state_uuid: type: string description: 'optional The state uuid.' example: ed20f1c0-2749-11ec-85fa-a791bcbdc50d name: type: string description: 'optional The state name.' example: 'Queen Creek' security: [] parameters: - in: path name: countryUuid description: '' example: 510ba169-48b6-3659-88fb-3bcc711dfd8d required: true schema: type: string - in: path name: countryStateUuid description: '' example: 5262ea51-350b-307b-9a45-503126fc0fee required: true schema: type: string '/api/v1/companies/{company_uuid}/taxes': get: summary: List operationId: list description: 'Shows the list of taxes with pagination.' parameters: [] responses: { } tags: - 'Company Tax' patch: summary: 'Patch Index' operationId: patchIndex description: 'Performs specific updates for tax settings' parameters: [] responses: { } tags: - 'Company Tax' post: summary: Store operationId: store description: 'Store a newly created tax.' parameters: [] responses: { } tags: - 'Company Tax' requestBody: required: true content: application/json: schema: type: object properties: country_uuid: type: string description: 'The UUID of a country. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: a755472c-2ae1-3d4a-8d54-90a723070a81 country_state_uuids: type: array description: 'An array of country state UUID. Example : ["815d3d9c-f371-3781-8456-7e6954b5b0f5", "815d3d9c-f371-3781-8456-7e6954b5b0f2"]' example: - voluptatibus items: type: string name: type: string description: 'The name of the tax. Example : Pest Route Initial Proposal' example: provident postal_codes: type: array description: 'optional The postal code of the company.' example: 85410 items: type: string cities: type: string description: 'required[] The company city name.' example: 'Queen Creek' rate: type: decimal description: 'The tax rate.' example: '12.0000' is_compound: type: boolean description: 'A flag that indicate if the tax is a compound.' example: true required: - country_uuid - country_state_uuids - name - rate - is_compound parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 11 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 11 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: velit - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: consequatur - in: path name: search description: 'Optional parameter. The general search, it will find matching string (name, postal_code, cities). Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: labore - in: path name: country_uuid description: 'Optional parameter. The UUID of country. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: e48e0837-e5e6-346a-92fa-012987f13ca5 - in: path name: country_state_uuids description: 'Optional parameter. string[] The UUID of country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 11 - in: path name: is_compound description: 'Optional parameter. boolean To filter by is_compound flag. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: eos '/api/v1/companies/{company_uuid}/taxes/{companyTax_uuid}': get: summary: Show operationId: show description: 'Show a single tax.' parameters: [] responses: { } tags: - 'Company Tax' put: summary: Update operationId: update description: 'Update a tax.' parameters: [] responses: { } tags: - 'Company Tax' requestBody: required: true content: application/json: schema: type: object properties: country_uuid: type: string description: 'The UUID of a country. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: da7a301e-7e07-3d9f-8ab0-5dcb11247d92 country_state_uuids: type: array description: 'The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: - quo items: type: string name: type: string description: 'The name of the tax. Example : Pest Route Initial Proposal' example: modi postal_codes: type: string description: 'optional The postal code of the company.' example: '85410' cities: type: string description: 'The company city name.' example: 'Queen Creek' rate: type: decimal description: 'The tax rate.' example: '12.0000' is_compound: type: boolean description: 'A flag that indicate if the tax is a compound.' example: true rank: type: integer description: 'The rank/order number of tax in a company.' example: 1 required: - country_uuid - country_state_uuids - name - cities - rate - is_compound patch: summary: Patch operationId: patch description: 'Patch a tax.' parameters: [] responses: { } tags: - 'Company Tax' requestBody: required: false content: application/json: schema: type: object properties: country_uuid: type: string description: 'optional The UUID of a country. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: e7563335-f529-3bca-b4d7-a9479baae088 country_state_uuids: type: array description: 'optional The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: - voluptas items: type: string name: type: string description: 'optional The name of the tax. Example : Pest Route Initial Proposal' example: perferendis postal_codes: type: string description: 'optional The postal code of the company.' example: '85410' cities: type: string description: 'optional The company city name.' example: 'Queen Creek' rate: type: decimal description: 'optional The tax rate.' example: '12.0000' is_compound: type: boolean description: 'optional A flag that indicate if the tax is a compound.' example: true rank: type: integer description: 'The rank/order number of tax in a company.' example: 1 delete: summary: Delete operationId: delete description: 'Delete a tax.' parameters: [] responses: { } tags: - 'Company Tax' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyTax_uuid description: '' example: 46a50f07-246f-3df1-9f8f-e76b59b849cb required: true schema: type: string '/api/v1/companies/{company_uuid}/locations': get: summary: List operationId: list description: 'Shows the list of locations with pagination.' parameters: [] responses: { } tags: - 'Company Location' post: summary: Create operationId: create description: 'This endpoint lets user to create single record using uuid.' parameters: [] responses: { } tags: - 'Company Location' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the location.' example: 'Phoenix Metro Area' description: type: string description: 'optional The description of the location.' example: 'We do amazing things here.' phone: type: string description: 'optional The last name of the location.' example: '5554443333' email: type: string description: 'optional The email of the location.' example: hello@smarterlaunch.com address1: type: string description: 'optional The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'optional The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'optional The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'optional The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' enable_overrides: type: boolean description: optional. example: true license_number: type: string description: optional. example: lc-123456 required: - name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 6 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 11 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: qui - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: necessitatibus - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: error - in: path name: has_service_plans description: 'Optional parameter. boolean The locations which has service plans. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: laborum '/api/v1/companies/{company_uuid}/locations/{companyLocation_uuid}': get: summary: Show operationId: show description: 'Shows the detail of a specific company location.' parameters: [] responses: { } tags: - 'Company Location' requestBody: required: false content: application/json: schema: type: object properties: withTemplates: type: boolean description: 'optional Whether return templates attached to company location.' example: true put: summary: Edit operationId: edit description: 'This endpoint lets user to update single record using uuid (using PUT method).' parameters: [] responses: { } tags: - 'Company Location' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the location.' example: 'Phoenix Metro Area' description: type: string description: 'optional The description of the location.' example: 'We do amazing things here.' phone: type: string description: 'optional The last name of the location.' example: '5554443333' email: type: string description: 'optional The email of the location.' example: hello@smarterlaunch.com address1: type: string description: 'optional The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'optional The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'optional The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'optional The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' enable_overrides: type: boolean description: optional. example: true license_number: type: string description: optional. example: lc-123456 required: - name patch: summary: Update operationId: update description: 'This endpoint lets user to update single record using uuid.' parameters: [] responses: { } tags: - 'Company Location' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the location.' example: 'Phoenix Metro Area' description: type: string description: 'optional The description of the location.' example: 'We do amazing things here.' phone: type: string description: 'optional The last name of the location.' example: '5554443333' email: type: string description: 'optional The email of the location.' example: hello@smarterlaunch.com address1: type: string description: 'optional The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'optional The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'optional The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'optional The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' enable_overrides: type: boolean description: optional. example: true license_number: type: string description: optional. example: lc-123456 required: - name delete: summary: Delete operationId: delete description: 'This endpoint enables user to delete a company location' parameters: [] responses: { } tags: - 'Company Location' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyLocation_uuid description: '' example: 11313874-2664-32d4-8466-78524e7b2567 required: true schema: type: string - in: path name: companyUUID description: 'The company uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string - in: path name: companyLocationUUID description: 'The company uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/locations/updateAll': put: summary: 'Update All' operationId: updateAll description: 'This endpoint lets user to update multiple record using uuids.' parameters: [] responses: { } tags: - 'Company Location' requestBody: required: false content: application/json: schema: type: object properties: '*': type: object description: '' example: name: 'Phoenix Metro Area' properties: name: type: string description: 'The name of the location.' example: 'Phoenix Metro Area' description: type: string description: 'optional The description of the location.' example: 'We do amazing things here.' phone: type: string description: 'optional The last name of the location.' example: '5554443333' email: type: string description: 'optional The email of the location.' example: hello@smarterlaunch.com address1: type: string description: 'optional The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'optional The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'optional The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'optional The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' enable_overrides: type: boolean description: optional. example: true parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyUuid description: 'The uuid id of the company.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/locations/{companyLocation_uuid}/integration-data': get: summary: 'Integration Data' operationId: integrationData description: 'Get data from a 3rd party API' parameters: [] responses: { } tags: - 'Company Location' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyLocation_uuid description: '' example: 8a155b1c-d7e4-3321-a691-6744c6015984 required: true schema: type: string - in: path name: uuid description: 'The uuid of the company location.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string - in: path name: integration_type_uuid description: 'The uuid of the integration type.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string - in: path name: force_look_up description: 'Optional parameter.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 'true' /api/v1/auth/register: post: summary: 'Company Registration.' operationId: companyRegistration description: 'This endpoint lets company owner/manager to register.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: company_name: type: string description: 'The company name of the user.' example: 'Smarter Launch' first_name: type: string description: 'The first name of the user.' example: John last_name: type: string description: 'The last name of the user.' example: Smith email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com password: type: string description: 'The password of the user.' example: '$m@4T34L@un(}{' confirm_password: type: string description: 'The same password for confirmation.' example: '$m@4T34L@un(}{' referral_source: type: string description: 'optional The referral source.' example: 'google ad' required: - company_name - first_name - last_name - email - password - confirm_password security: [] /api/v1/auth/register/social: post: summary: 'Company registration using social account.' operationId: companyRegistrationUsingSocialAccount description: 'This endpoint lets company to register using social account.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: social_type: type: integer description: 'The login type of the user (Google = 1).' example: 1 code: type: string description: 'auth code of the user.' example: '111806022046983237516' referral_source: type: string description: 'optional The referral source.' example: 'google ad' required: - social_type - code security: [] /api/v1/auth/register/company-user: post: summary: 'User registration based on company invite.' operationId: userRegistrationBasedOnCompanyInvite description: 'This endpoint lets you user to register himself who are invited by company.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'The first name of the user.' example: John last_name: type: string description: 'The last name of the user.' example: Smith email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com password: type: string description: 'The password of the user.' example: '$m@4T34L@un(}{' confirm_password: type: string description: 'The same password for confirmation.' example: '$m@4T34L@un(}{' token: type: string description: 'To restrict unauthorized registration.' example: 7hKxKlz5sKHlqXFkkCfsKpj9iVPoaSlM18Uv5JuehYXQfTme33XtxGmNQ1yE required: - first_name - last_name - email - password - confirm_password - token security: [] /api/v1/auth/register/social/company-user: post: summary: 'User registration using social account based on company invite.' operationId: userRegistrationUsingSocialAccountBasedOnCompanyInvite description: 'This endpoint lets user to register using social account.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com social_type: type: integer description: 'The login type of the user (Google = 1).' example: 1 social_id: type: string description: 'The social id of the user provided by the 3rd party provider.' example: '111806022046983237516' social_token_id: type: string description: 'The social id of the user.' example: eyRhbGciOiJSUzI1NiIsImtpZCI6Ijg1ODI4YzU5Jjg0YTY5YjU0YjI3NDgzZTQ4N2MzYmQ0NmNkMmEyYjMiLCJ0eXAiOiJKV1QifB token: type: string description: 'To restrict unauthorized registration.' example: 7hKxKlz5sKHlqXFkkCfsKpj9iVPoaSlM18Uv5JuehYXQfTme33XtxGmNQ1yE required: - email - social_type - social_id - social_token_id - token security: [] /api/v1/auth/login: post: summary: Login. operationId: login description: 'This endpoint allows common login into the system.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The email-id of the user.' example: hello@smarterlaunch.com password: type: string description: 'The password of the user.' example: xxxxxx required: - email - password security: [] /api/v1/auth/login/social: post: summary: 'Social Login.' operationId: socialLogin description: 'This endpoint lets you login into the system using a 3rd party provider.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: social_type: type: integer description: 'The login type of the user (Google = 1).' example: 1 code: type: string description: 'auth code of the user.' example: '111806022046983237516' required: - social_type - code security: [] /api/v1/auth/forgot-password: post: summary: 'Forgot password.' operationId: forgotPassword description: 'This endpoint lets user to get token to change password.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com token: type: string description: 'This field is required when email is not present.' example: delectus required: - email security: [] /api/v1/auth/token-validate: post: summary: 'Validate Bearer token.' operationId: validateBearerToken description: 'This endpoint lets user to validate token, on success returns token object.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: false content: application/json: schema: type: object properties: bearer_token: type: string description: required. example: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9... security: [] /api/v1/auth/token-expiration: get: summary: "Get Token Expiration\nThis endpoint allows client to retrieve their user token expiration date." operationId: getTokenExpirationThisEndpointAllowsClientToRetrieveTheirUserTokenExpirationDate description: '' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com required: - email security: [] /api/v1/auth/verify-email: post: summary: 'Verify email.' operationId: verifyEmail description: 'This endpoint lets the user verify their email and login with token and password.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com password: type: string description: 'The password of the user.' example: '$m@4T34L@un(}{' token: type: string description: 'To restrict unauthorized registration.' example: '123456' required: - email - password - token security: [] /api/v1/auth/verify-email-resend: post: summary: 'Resend the email verification notification.' operationId: resendTheEmailVerificationNotification description: 'This endpoint lets user to resend email verification notification.' parameters: [] responses: { } tags: - 'User Authentication' /api/v1/auth/reset-password: post: summary: 'Reset password.' operationId: resetPassword description: 'This endpoint lets the user reset their password.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: password: type: string description: 'The password of the user.' example: '$m@4T34L@un(}{' confirm_password: type: string description: 'The same password for confirmation.' example: '$m@4T34L@un(}{' token: type: string description: 'To restrict unauthorized registration.' example: 7hKxKlz5sKHlqXFkkCfsKpj9iVPoaSlM18Uv5JuehYXQfTme33XtxGmNQ1yE email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com required: - password - confirm_password - token - email /api/v1/auth/check-token-validity: post: summary: 'Check token validity.' operationId: checkTokenValidity description: 'This endpoint verifies the validity of a reset password token.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: token: type: string description: 'The token to be verified.' example: 7hKxKlz5sKHlqXFkkCfsKpj9iVPoaSlM18Uv5JuehYXQfTme33XtxGmNQ1yE required: - token /api/v1/auth/user-invite: get: summary: 'Get invited user by token' operationId: getInvitedUserByToken description: '' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: token: type: string description: 'The token provided for the invited user.' example: BMj4tHdI9jeRidv8O6emwqwepk34sl2tYrm1gakhDhqgOxdi7JO4BEkJG4yh required: - token security: [] /api/v1/auth/logout: post: summary: Logout. operationId: logout description: "let's user to logout." parameters: [] responses: { } tags: - 'User Authentication' /api/v1/device-info/store: post: summary: 'User Device Management.' operationId: userDeviceManagement description: 'This endpoint lets user to add device information.' parameters: [] responses: { } tags: - 'User Authentication' requestBody: required: true content: application/json: schema: type: object properties: pushtoken: type: string description: 'The push-token.' example: xxxxx device_name: type: string description: 'The device name of the device.' example: 'iPhone 12' device_id: type: string description: 'The device id of the device.' example: skdlfsk-sfs-dsfsdf-sdfs app_version: type: string description: 'The app version of the device.' example: v1 os_version: type: string description: 'The os version of the device.' example: 'iOS 14.1' time_zone: type: string description: 'The time zone of the user.' example: NZ platform: type: string description: 'The platform of the device.' example: Apple required: - pushtoken - device_name - device_id - app_version - os_version - time_zone - platform '/api/v1/companies/{company_uuid}/integrations/{companyIntegration_uuid}/{action}': get: summary: 'Generic handler for company integration actions' operationId: genericHandlerForCompanyIntegrationActions description: "If the method exists within the CompanyIntegrationController, it will be called,\notherwise it will be passed to the integration type if the method exists there.\n\nIf the endpoint is a no-auth endpoint, we will allow it to be executed without\ngoing through the auth middleware. This is useful for endpoints that are called\nby customers that aren't logged in. The endpoint must be explicitly defined to\nbe a no-auth endpoint in the integration type." parameters: [] responses: { } tags: - 'Company Integration' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyIntegration_uuid description: '' example: 3886aef1-4a0b-3039-b39a-232014e9abba required: true schema: type: string - in: path name: action description: '' example: in required: true schema: type: string '/api/v1/integration-types/{integrationType_type_code}/{action}': get: summary: 'Generic handler for integration type actions' operationId: genericHandlerForIntegrationTypeActions description: "it will be passed to the integration type if the method exists there.\n\nIf the endpoint is a no-auth endpoint, we will allow it to be executed without\ngoing through the auth middleware. This is useful for endpoints that are called\nby customers that aren't logged in. The endpoint must be explicitly defined to\nbe a no-auth endpoint in the integration type." parameters: [] responses: { } tags: - 'Company Integration' parameters: - in: path name: integrationType_type_code description: '' example: 1 required: true schema: type: integer - in: path name: action description: '' example: veniam required: true schema: type: string '/api/v1/companies/{company_uuid}/integrations': get: summary: List operationId: list description: 'Shows the list of integrations for a company' parameters: [] responses: { } tags: - 'Company Integration' post: summary: Store operationId: store description: 'Create a company integration with empty credential values' parameters: [] responses: { } tags: - 'Company Integration' requestBody: required: true content: application/json: schema: type: object properties: integration_type_uuid: type: uuid description: 'The integration type UUID.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - integration_type_uuid parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/integrations/{companyIntegration_uuid}': get: summary: Show operationId: show description: 'Shows a single item of integrations for a company' parameters: [] responses: { } tags: - 'Company Integration' put: summary: Update operationId: update description: "This endpoint updates the company integration and triggers the sync process (if applicable)\nif the data is verified and the status is set to active." parameters: [] responses: { } tags: - 'Company Integration' requestBody: required: true content: application/json: schema: type: object properties: credentials: type: array description: 'The credentials for the company integration' example: - et items: type: string status_uuid: type: uuid description: 'The status UUID for company integration' example: fd22e1df-3531-34d9-8089-a055fb938977 required: - credentials - status_uuid patch: summary: Patch operationId: patch description: "This endpoint patch the company integration and triggers the sync process\nif the data is verified and the status is set to active." parameters: [] responses: { } tags: - 'Company Integration' requestBody: required: true content: application/json: schema: type: object properties: credentials: type: array description: 'The credentials for the company integration' example: - aperiam items: type: string status_uuid: type: uuid description: 'The status uuid for company integration' example: 7f957619-af63-315d-ab7b-2d5b12c92cdf required: - credentials - status_uuid delete: summary: Delete operationId: delete description: 'This endpoint allows user to delete a Company Integration.' parameters: [] responses: { } tags: - 'Company Integration' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyIntegration_uuid description: '' example: b95e7a6c-02db-3fa0-8489-da291f3161a8 required: true schema: type: string - in: path name: company_integration_uuid description: "Optional parameter. uuid required\n The UUID of the company integration that is to be updated." required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d634-24fd-11ec-accd-e397aec85c7f /api/v1/integrations: get: summary: 'List Integration Types' operationId: listIntegrationTypes description: "Shows the list of integration types available for a company.
\nNote: Only administrators have access to certain integration types." parameters: [] responses: { } tags: - 'Company Integration' '/api/v1/companies/{company_uuid}/symbols': get: summary: List operationId: list description: 'Shows the list of company symbols with pagination.' parameters: [] responses: { } tags: - 'Company Symbol' post: summary: Store operationId: store description: 'Store a newly created company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the symbol. Example : Dig' example: vel source: type: string description: 'The source of the symbol. Example : text' example: consequuntur description: type: string description: 'optional The description of the symbol. Example : text' example: 'Rerum incidunt distinctio enim et.' icon_url: type: string description: 'optional The image url of the symbol.' example: 'http://smarterlaunch.local/image1.jpg' icon_file: type: string format: binary description: 'optional The file of the symbol image.' company_product_uuids: type: array description: 'of string optional The products of the symbol.' example: - deleniti items: type: string required: - name - source parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 6 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 18 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quia - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: distinctio - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: eius - in: path name: with_trashed description: 'Optional parameter. boolean To display soft deleted data as well. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: veniam - in: path name: category_uuids description: 'Optional parameter. string[] To filter symbols by category. Example : [3245d630-24fd-11ec-accd-e397aec85c7f, 3245d630-24fd-11ec-accd-e397aec85c7f]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: consectetur '/api/v1/companies/{company_uuid}/symbols/{companySymbol_uuid}': get: summary: Show operationId: show description: 'Show a single company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' put: summary: Update operationId: update description: 'Update a company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the symbol. Example : Dig' example: libero source: type: string description: 'The source of the symbol. Example : text' example: est description: type: string description: 'optional The description of the symbol. Example : text' example: 'Illo aliquam tempora quisquam laudantium est sit.' icon_url: type: string description: 'optional The image url of the symbol.' example: 'http://smarterlaunch.local/image1.jpg' icon_file: type: string format: binary description: 'optional The file of the symbol image.' company_product_uuids: type: array description: 'of string optional The products of the symbol.' example: - dignissimos items: type: string required: - name - source post: summary: Update operationId: update description: 'Update a company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the symbol. Example : Dig' example: reiciendis source: type: string description: 'The source of the symbol. Example : text' example: et description: type: string description: 'optional The description of the symbol. Example : text' example: 'Itaque enim provident quasi aliquam velit enim.' icon_url: type: string description: 'optional The image url of the symbol.' example: 'http://smarterlaunch.local/image1.jpg' icon_file: type: string format: binary description: 'optional The file of the symbol image.' company_product_uuids: type: array description: 'of string optional The products of the symbol.' example: - perspiciatis items: type: string required: - name - source patch: summary: Patch operationId: patch description: 'Patch a company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the symbol. Example : Dig' example: quo source: type: string description: 'The source of the symbol. Example : text' example: fuga description: type: string description: 'optional The description of the symbol. Example : text' example: 'Iusto commodi recusandae quidem ut autem.' icon_url: type: string description: 'optional The image url of the symbol.' example: 'http://smarterlaunch.local/image1.jpg' icon_file: type: string format: binary description: 'optional The file of the symbol image.' required: - name - source delete: summary: Delete operationId: delete description: 'Delete a company symbol.' parameters: [] responses: { } tags: - 'Company Symbol' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companySymbol_uuid description: '' example: 0f4ed437-5f69-3aa2-b488-65f6b2d65a7b required: true schema: type: string /api/v1/support-request: post: summary: Store operationId: store description: 'Send support request from users' parameters: [] responses: { } tags: - 'Support Request' requestBody: required: true content: application/json: schema: type: object properties: support_type: type: string description: 'The support type.' example: "'General Inquiry'" description: type: string description: 'The support request details.' example: "'I cannot access documents. Please help.'" recordings: type: object description: '' example: null properties: { } client_detail: type: object description: '' example: null properties: { } screenshots_url: type: array description: 'The screenshots URL string.' example: - 'https://example.net/image1.jpg' - 'https://example.net/image1.png' items: type: string error_detail: type: object description: '' example: null properties: { } no_attachments: type: boolean description: 'Check if request has attachments.' example: false required: - support_type - description - screenshots_url - no_attachments '/api/v1/support-request-upload/{supportRequest_uuid}': post: summary: Upload operationId: upload description: 'Upload photos for Cover Letter or Photo Layout pages' parameters: [] responses: { } tags: - 'Support Request' requestBody: required: true content: multipart/form-data: schema: type: object properties: screenshot_file: type: string format: binary description: 'Must be a file. Must be an image.' document_template_page_title: type: string description: 'The template page title.' example: 'Cover Letter' photo_file: type: string format: binary description: 'The photo of template page.' title: type: string description: 'optional The title of the photo.' example: 'Cover Letter Featured Image' decription: type: string description: 'optional The description of the photo.' example: 'Lorem ipsum dolor' append: type: boolean description: 'optional Determine whether to append uploaded photo to existing photos of template page.' example: true required: - screenshot_file - document_template_page_title - photo_file parameters: - in: path name: supportRequest_uuid description: '' example: 93cf5a04-7f92-3c96-8d2b-86d80bbede33 required: true schema: type: string '/api/v1/companies/{company_uuid}/pests-treated': get: summary: List operationId: list description: 'Shows the list of pest treated with pagination.' parameters: [] responses: { } tags: - 'Pest Treated' post: summary: Store operationId: store description: 'Store a newly created pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the pest treated. Example : Pest Treated 1' example: nihil pest_treated_attributes: type: object description: 'The attributes of the pest treated.' example: attr: value properties: { } icon_image_url: type: string description: 'optional The image url of the pest treated.' example: 'http://smarterlaunch.local/image1.jpg' photo_file: type: string format: binary description: 'optional The file of the pest treated image.' pest_treated: type: array description: 'optional An array of the above parameters.' example: null items: type: object required: - name - pest_treated_attributes parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: est - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: fugit - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: magnam '/api/v1/companies/{company_uuid}/pests-treated/{pestTreated_uuid}': get: summary: Show operationId: show description: 'Show a single pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' put: summary: Update operationId: update description: 'Update a pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the pest treated. Example : Pest Treated 1' example: perferendis pest_treated_attributes: type: object description: 'The attributes of the pest treated.' example: attr: value properties: { } icon_image_url: type: string description: 'optional The image url of the pest treated.' example: 'http://smarterlaunch.local/image1.jpg' photo_file: type: string format: binary description: 'optional The file of the pest treated image.' required: - name - pest_treated_attributes post: summary: Update operationId: update description: 'Update a pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the pest treated. Example : Pest Treated 1' example: eos pest_treated_attributes: type: object description: 'The attributes of the pest treated.' example: attr: value properties: { } icon_image_url: type: string description: 'optional The image url of the pest treated.' example: 'http://smarterlaunch.local/image1.jpg' photo_file: type: string format: binary description: 'optional The file of the pest treated image.' required: - name - pest_treated_attributes patch: summary: Patch operationId: patch description: 'Patch a company pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' requestBody: required: false content: multipart/form-data: schema: type: object properties: name: type: string description: 'optional The name of the pest treated. Example : Pest Treated 1' example: sit pest_treated_attributes: type: object description: 'optional The attributes of the pest treated.' example: attr: value properties: { } icon_image_url: type: string description: 'optional The image url of the pest treated.' example: 'http://smarterlaunch.local/image1.jpg' photo_file: type: string format: binary description: 'optional The file of the pest treated image.' delete: summary: Delete operationId: delete description: 'Delete a pest treated.' parameters: [] responses: { } tags: - 'Pest Treated' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: pestTreated_uuid description: '' example: fb0723e8-2ec8-3ca7-b8fb-8cd9dabdf5bb required: true schema: type: string /api/v1/media-sources: get: summary: List operationId: list description: 'Shows the list of media source with pagination.' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: false content: application/json: schema: type: object properties: types: type: object description: '' example: null properties: { } post: summary: Store operationId: store description: 'Upload a media source' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the file. Example : MyFile.txt' example: sed description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'Enim ut qui quia numquam adipisci.' parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 1 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: dolore - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: incidunt - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: eaque /api/v1/media-sources/favorites: get: summary: 'Favorite Media Source List' operationId: favoriteMediaSourceList description: 'Get the list of favorite Media Sources' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media source. Example : "My media source"' example: labore description: type: string description: 'The description of the media source. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Omnis et inventore velit iusto.' required: - name '/api/v1/media-sources/{mediaSource_uuid}': get: summary: Show operationId: show description: 'Show a single media source' parameters: [] responses: { } tags: - 'Media Source' put: summary: Update operationId: update description: 'Update a media source.' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media source. Example : "My media source"' example: commodi description: type: string description: 'The description of the media source. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Enim est nesciunt fugiat laboriosam.' required: - name patch: summary: Patch operationId: patch description: 'Patch a media source.' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media source. Example : "My media source"' example: eius description: type: string description: 'The description of the media source. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Magnam occaecati praesentium ut in voluptatem maxime doloribus consequuntur.' required: - name delete: summary: Delete operationId: delete description: 'Delete a media source.' parameters: [] responses: { } tags: - 'Media Source' parameters: - in: path name: mediaSource_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/media-sources/{mediaSource_uuid}/favorites': post: summary: 'Add to Favorite' operationId: addToFavorite description: "Add media source to the user company's media source favorites" parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media source. Example : "My media source"' example: autem description: type: string description: 'The description of the media source. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Beatae illum dignissimos sed voluptatem ullam.' required: - name delete: summary: 'Remove Favorite Media Source' operationId: removeFavoriteMediaSource description: "Remove media source to the user company's media source favorites" parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media source. Example : "My media source"' example: at description: type: string description: 'The description of the media source. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Cupiditate odio quia est doloremque modi totam iure mollitia.' required: - name parameters: - in: path name: mediaSource_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/media-sources/{mediaSource_uuid}/import-csv': post: summary: 'Import CSV' operationId: importCSV description: 'Accept CSV and populate media item data for a media source/manufacturer' parameters: [] responses: { } tags: - 'Media Source' requestBody: required: true content: multipart/form-data: schema: type: object properties: file: type: string format: binary description: 'The name of the media source. Example : "company.csv"' required: - file parameters: - in: path name: mediaSource_uuid description: '' example: 1 required: true schema: type: integer /api/v1/proposals/templates: get: summary: List operationId: list description: 'Shows the list of ProposalTemplates with pagination.' parameters: [] responses: { } tags: - 'Proposal Templates' post: summary: Store operationId: store description: 'Store a newly created Proposal Template.' parameters: [] responses: { } tags: - 'Proposal Templates' requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: string description: "The uuid of company location for proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 1254238e-428d-3525-b269-6839a2242f00 title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: quis description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Alias sit voluptatum autem.' settings: type: object description: 'The attributes of the proposal template.' example: attr: value properties: { } service_plan_uuids: type: array description: 'The list of ServicePlans to be associated to the ProposalTemplate.' example: - 815d3d9c-f371-3781-8456-7e6954b5b0f5 - 815d3d9c-f371-3781-8456-7e6954b5b0f5 items: type: string required: - company_location_uuid - title parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 11 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 15 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: rerum - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sit - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: string description: 'Optional parameter. The filter for proposal templates with company location in company_locations_uuid.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: '["725d1dcd-54ad-3a8b-a28e-830c43d8ed6c", "b033658c-4532-3dd7-9be7-64433580eda6"]' '/api/v1/proposals/templates/{proposalTemplate_uuid}/duplicate': post: summary: Duplicate operationId: duplicate description: 'Duplicate a proposal template' parameters: [] responses: { } tags: - 'Proposal Templates' parameters: - in: path name: proposalTemplate_uuid description: '' example: 81e45c1a-98c7-37db-8152-2c0d8c70c851 required: true schema: type: string '/api/v1/proposals/templates/{proposalTemplate_uuid}': get: summary: Show operationId: show description: 'Show a single proposal template.' parameters: [] responses: { } tags: - 'Proposal Templates' put: summary: Update operationId: update description: 'Update a proposal template.' parameters: [] responses: { } tags: - 'Proposal Templates' requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: string description: "The uuid of company location for proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 0f594911-1086-34ea-997c-e53062e1f636 title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: doloribus description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Magnam beatae atque voluptatibus saepe.' settings: type: object description: 'The attributes of the proposal template.' example: attr: value properties: { } service_plan_uuids: type: array description: 'The list of ServicePlans to be associated to the ProposalTemplate.' example: - 815d3d9c-f371-3781-8456-7e6954b5b0f5 - 815d3d9c-f371-3781-8456-7e6954b5b0f5 items: type: string required: - company_location_uuid - title patch: summary: Patch operationId: patch description: 'Patch a company proposal template.' parameters: [] responses: { } tags: - 'Proposal Templates' requestBody: required: false content: application/json: schema: type: object properties: company_location_uuid: type: string description: "The uuid of company location for proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 5e874931-f4d5-3398-a38d-7dd085bb8a81 title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: architecto description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Non magni soluta est alias ut neque.' settings: type: object description: 'The attributes of the proposal template.' example: attr: value properties: { } service_plan_uuids: type: array description: 'The list of ServicePlans to be associated to the ProposalTemplate.' example: - 815d3d9c-f371-3781-8456-7e6954b5b0f5 - 815d3d9c-f371-3781-8456-7e6954b5b0f5 items: type: string delete: summary: Delete operationId: delete description: 'Delete a proposal template.' parameters: [] responses: { } tags: - 'Proposal Templates' parameters: - in: path name: proposalTemplate_uuid description: '' example: 7e1422aa-d776-3a90-921a-e1de80d1f28b required: true schema: type: string /api/v1/media-items: get: summary: List operationId: list description: 'Shows the list of media items with pagination.' parameters: [] responses: { } tags: - 'Media Item' requestBody: required: false content: application/json: schema: type: object properties: types: type: object description: '' example: null properties: { } media_tag_names: type: object description: '' example: null properties: { } company_uuid: type: string description: 'Must be a valid UUID.' example: 0f1706b4-e1bd-3902-a8d0-5412866000eb companies_uuid: type: object description: '' example: null properties: { } company_location_uuid: type: string description: 'Must be a valid UUID.' example: ec399b09-ade3-3640-8d08-b33ceaf2236c company_locations_uuid: type: object description: '' example: null properties: { } media_source_uuid: type: string description: 'Must be a valid UUID.' example: 58020f08-83d0-33d2-a4c7-c6769e6d42df include_global_files: type: boolean description: '' example: true post: summary: Store operationId: store description: 'Upload a media item' parameters: [] responses: { } tags: - 'Media Item' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the file. Example : MyFile.txt' example: libero description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'At velit aliquam culpa et maxime.' directory: type: string description: 'The directory where the file will be located.' example: proposal-template type: type: string description: 'The type of the file (in: image, document).' example: document fileUpload: type: string format: binary description: 'The file to be uploaded.' required: - directory - type - fileUpload parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 14 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: perferendis - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: in - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: dolorem '/api/v1/media-items/{mediaItem_uuid}': get: summary: Show operationId: show description: 'Show a single media item' parameters: [] responses: { } tags: - 'Media Item' put: summary: Update operationId: update description: 'Update a media item.' parameters: [] responses: { } tags: - 'Media Item' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media item. Example : "My media item"' example: et description: type: string description: 'The description of the media item. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Atque in sit nulla.' required: - name patch: summary: Patch operationId: patch description: 'Patch a media item.' parameters: [] responses: { } tags: - 'Media Item' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the media item. Example : "My media item"' example: ut description: type: string description: 'The description of the media item. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Id harum expedita sapiente cum totam eum laborum magnam.' required: - name delete: summary: Delete operationId: delete description: 'Delete a media item.' parameters: [] responses: { } tags: - 'Media Item' parameters: - in: path name: mediaItem_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/products': get: summary: List operationId: list description: 'Shows the list of company products with pagination.' parameters: [] responses: { } tags: - 'Company Product' post: summary: Store operationId: store description: 'Store a newly created company product.' parameters: [] responses: { } tags: - 'Company Product' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the product. Example : Product 1' example: occaecati product_attributes: type: object description: 'The attributes of the product.' example: attr: value properties: { } label_image_url: type: string description: 'optional The image url of the product.' example: 'http://smarterlaunch.local/image1.jpg' required: - name - product_attributes parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 10 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nesciunt - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: similique - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: incidunt '/api/v1/companies/{company_uuid}/products/{companyProduct_uuid}': get: summary: Show operationId: show description: 'Show a single company product.' parameters: [] responses: { } tags: - 'Company Product' put: summary: Update operationId: update description: 'Update a company product.' parameters: [] responses: { } tags: - 'Company Product' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the product. Example : Product 1' example: reprehenderit product_attributes: type: object description: 'The attributes of the product.' example: attr: value properties: { } label_image_url: type: string description: 'optional The image url of the product.' example: 'http://smarterlaunch.local/image1.jpg' required: - name - product_attributes patch: summary: Patch operationId: patch description: 'Patch a company product.' parameters: [] responses: { } tags: - 'Company Product' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'optional The name of the product. Example : Product 1' example: rem product_attributes: type: object description: 'optional The attributes of the product.' example: attr: value properties: { } label_image_url: type: string description: 'optional The image url of the product.' example: 'http://smarterlaunch.local/image1.jpg' delete: summary: Delete operationId: delete description: 'Delete a product.' parameters: [] responses: { } tags: - 'Company Product' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyProduct_uuid description: '' example: 512adc80-5131-3c40-aff2-9c213db8289b required: true schema: type: string /api/v1/import-set-tags: get: summary: List operationId: list description: 'Shows the list of tags with pagination.' parameters: [] responses: { } tags: - Tag parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 1 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 6 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptatem - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: placeat - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Pest Control"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: vitae /api/v1/permissions: get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of permission or fetch single record using uuid.' parameters: [] responses: { } tags: - Permission requestBody: required: true content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the permission.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'The name of the permission.' example: user-list required: - name post: summary: 'Create / Update permission.' operationId: createUpdatePermission description: 'This endpoint lets user to create/update permission.' parameters: [] responses: { } tags: - Permission requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the permission.' example: user-list uuid: type: string description: 'optional The uuid of the permission.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 required: - name '/api/v1/permissions/{permissionUuid}': get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of permission or fetch single record using uuid.' parameters: [] responses: { } tags: - Permission requestBody: required: true content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the permission.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'The name of the permission.' example: user-list required: - name put: summary: 'Create / Update permission.' operationId: createUpdatePermission description: 'This endpoint lets user to create/update permission.' parameters: [] responses: { } tags: - Permission requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the permission.' example: user-list uuid: type: string description: 'optional The uuid of the permission.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 required: - name delete: summary: Delete operationId: delete description: 'This endpoint allows user to delete permission.' parameters: [] responses: { } tags: - Permission parameters: - in: path name: permissionUuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/files': post: summary: Store operationId: store description: 'Upload a file into a company' parameters: [] responses: { } tags: - 'Company File' requestBody: required: true content: multipart/form-data: schema: type: object properties: name: type: string description: 'The name of the file. Example : MyFile.txt' example: et description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'Impedit nesciunt incidunt dignissimos et.' directory: type: string description: 'The directory where the file will be located.' example: proposal-template type: type: string description: 'The type of the file (in: image, document).' example: document fileUpload: type: string format: binary description: 'The file to be uploaded.' required: - directory - type - fileUpload delete: summary: Delete operationId: delete description: 'Delete a file from a company' parameters: [] responses: { } tags: - 'Company File' requestBody: required: false content: application/json: schema: type: object properties: file_url: type: string description: 'or array The url of the file. Example : MyFile.txt' example: 'http://collier.net/magnam-voluptas-sapiente-quia-quia-ut-ratione-unde.html' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer /api/v1/countries: get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of country or fetch single record using uuid.' parameters: [] responses: { } tags: - Country requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The country uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'optional The country name.' example: baroda security: [] '/api/v1/countries/{countryUuid}': get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of country or fetch single record using uuid.' parameters: [] responses: { } tags: - Country requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The country uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f name: type: string description: 'optional The country name.' example: baroda security: [] parameters: - in: path name: countryUuid description: '' example: d0f09c7e-1b5e-3cd9-a843-7dde24068c41 required: true schema: type: string '/api/v1/countries/{countryUuid}/states': get: summary: 'Get country states using country uuid.' operationId: getCountryStatesUsingCountryUuid description: 'Shows the list of states using country uuid.' parameters: [] responses: { } tags: - Country security: [] parameters: - in: path name: countryUuid description: '' example: 96e241e6-fb34-3a13-9cdb-b994bcd0d3eb required: true schema: type: string - in: path name: country_uuid description: 'The country uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string /api/v1/solution-categories: get: summary: List operationId: list description: 'Shows the list of solution categories.' parameters: [] responses: { } tags: - 'Solution Category' requestBody: required: false content: application/json: schema: type: object properties: include_fields: type: array description: '' example: - user_progress items: type: string ignore_cached: type: boolean description: '' example: false post: summary: Store operationId: store description: 'Store a new solution category.' parameters: [] responses: { } tags: - 'Solution Category' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the solution category. Example : Solution Category 1' example: est description: type: string description: 'The attributes of the solution category.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' parent_solution_category_uuid: type: string description: 'optional The parent of the solution category.' example: '"3c787d66-2a4f-3f1d-9591-c330be0abe82"' required: - name - description parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 20 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 10 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sunt - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: distinctio - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sit - in: path name: filter_by_parent_solution_category_uuids description: 'Optional parameter. array To filter the list of solution categories by parent solution category. Example : ["3c787d66-2a4f-3f1d-9591-c330be0abe82"]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et '/api/v1/solution-categories/{solutionCategory_uuid}': get: summary: Show operationId: show description: 'Show a single solution category.' parameters: [] responses: { } tags: - 'Solution Category' put: summary: Update operationId: update description: 'Update a solution category.' parameters: [] responses: { } tags: - 'Solution Category' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the solution category. Example : Proposal Creation' example: sed description: type: string description: 'The attributes of the solution category.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' parent_solution_category_uuid: type: string description: 'optional The parent of the solution category.' example: '"3c787d66-2a4f-3f1d-9591-c330be0abe82"' required: - name - description patch: summary: Patch operationId: patch description: 'Patch a solution category.' parameters: [] responses: { } tags: - 'Solution Category' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the solution category. Example : Proposal Creation' example: tenetur description: type: string description: 'The attributes of the solution category.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' parent_solution_category_uuid: type: string description: 'optional The parent of the solution category.' example: '"3c787d66-2a4f-3f1d-9591-c330be0abe82"' required: - name - description delete: summary: Delete operationId: delete description: 'Delete a solution category.' parameters: [] responses: { } tags: - 'Solution Category' parameters: - in: path name: solutionCategory_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/solution-categories/{solutionCategory_uuid}/reset': put: summary: Reset operationId: reset description: 'Reset a solution category user progress.' parameters: [] responses: { } tags: - 'Solution Category' parameters: - in: path name: solutionCategory_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/solution-categories/{solutionCategory_uuid}/user-progress': put: summary: 'Update user progress' operationId: updateUserProgress description: 'Update user progress.' parameters: [] responses: { } tags: - 'Solution Category' requestBody: required: false content: application/json: schema: type: object properties: is_completed: type: boolean description: 'The solution category of the solution. Example : false' example: true step: type: object description: 'The current step the use is on. Example : 2' example: [] properties: { } parameters: - in: path name: solutionCategory_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/solution-categories/{solutionCategory_uuid}/sort': patch: summary: 'Patch Index' operationId: patchIndex description: 'Performs specific updates for solution categories' parameters: [] responses: { } tags: - 'Solution Category' parameters: - in: path name: solutionCategory_uuid description: '' example: 1 required: true schema: type: integer - in: path name: solution_categories_ranking_list description: 'Optional parameter. string[] A dictionary of uuids with uuid as key and rank as the value. Example : {"69e56cdf-cea8-4356-b35d-58d610aba886" : 1, "9c578b77-916a-4620-a246-fa951f422912" : 2}' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quia '/api/v1/solutions/{solution_uuid}/feedback': get: summary: List operationId: list description: 'Shows the list of solution feedbacks.' parameters: [] responses: { } tags: - 'Solution Feedback' post: summary: Store operationId: store description: 'Store a new solution feedback.' parameters: [] responses: { } tags: - 'Solution Feedback' requestBody: required: true content: application/json: schema: type: object properties: rate: type: integer description: 'The name of the solution. Example : 5' example: 16 feedback: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' required: - rate parameters: - in: path name: solution_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: alias - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: molestiae - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: vel '/api/v1/solutions/{solution_uuid}/feedback/{solutionFeedback_uuid}': get: summary: Show operationId: show description: 'Show a single solution.' parameters: [] responses: { } tags: - 'Solution Feedback' put: summary: Update operationId: update description: 'Update a solution .' parameters: [] responses: { } tags: - 'Solution Feedback' requestBody: required: true content: application/json: schema: type: object properties: rate: type: integer description: 'The name of the solution. Example : 5' example: 10 feedback: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' required: - rate patch: summary: Patch operationId: patch description: 'Patch a solution feedback.' parameters: [] responses: { } tags: - 'Solution Feedback' requestBody: required: true content: application/json: schema: type: object properties: rate: type: integer description: 'The name of the solution. Example : 5' example: 16 feedback: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' required: - rate delete: summary: Delete operationId: delete description: 'Remove the specified resource from storage.' parameters: [] responses: { } tags: - 'Solution Feedback' parameters: - in: path name: solution_uuid description: '' example: 1 required: true schema: type: integer - in: path name: solutionFeedback_uuid description: '' example: 581c5326-3131-3213-96ca-891a61bfdb3f required: true schema: type: string '/api/v1/companies/{company_uuid}/users': get: summary: List operationId: list description: 'Shows the list of company users that the user has access to view.' parameters: - in: query name: page description: 'optional The page number.' example: 1 required: false schema: type: integer description: 'optional The page number.' example: 1 responses: { } tags: - 'Company Users' requestBody: required: false content: application/json: schema: type: object properties: include_fields: type: array description: '' example: null items: type: string ignore_cached: type: boolean description: '' example: true should_reset_cache: type: boolean description: 'optional Resets the cache' example: false page_size: type: integer description: 'optional The number of records you want per page.' example: 15 sort_by: type: string description: 'optional The column name.' example: display_name sort_order: type: string description: 'optional The order in which you want your records.' example: asc search: type: string description: 'optional The general search, it will find matching string.' example: John filter_by_status_code: type: string/array description: 'optional Filter results by user status.' example: 'STATUS_ACTIVE / ["STATUS_ACTIVE"."STATUS_DISABLED"]' filter_by_role_code: type: string description: 'optional Filter results by user role.' example: ROLE_COMPANY_MANAGER filter_by_company_location_uuid: type: string description: 'uuid optional Filter results by company location uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f post: summary: 'Send invitation to user.' operationId: sendInvitationToUser description: 'This endpoint lets company owner to send invite to its sub-user.' parameters: [] responses: { } tags: - 'Company Users' requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'The first name of the user.' example: John email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com role_uuid: type: string description: 'uuid required The role uuid of the user.' example: 45955590-4152-11ec-9c77-2181a8ee04db company_locations: type: object description: '' example: [] properties: { } last_name: type: string description: 'The first name of the user.' example: Smith 'company_locations[]': type: string description: 'uuid of The company location.' example: '["45955590-4152-11ec-9c77-2181a8ee04db"]' required: - first_name - email - company_locations - last_name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyUuid description: 'The company uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/users/{userOrUserInviteUuid}': get: summary: Show operationId: show description: 'Shows detail of a specific company user' parameters: [] responses: { } tags: - 'Company Users' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: userOrUserInviteUuid description: '' example: 3 required: true schema: type: integer '/api/v1/companies/{company_uuid}/users/{uuid}': post: summary: 'Resend invitation to user.' operationId: resendInvitationToUser description: 'This endpoint lets company owner to send invite to its sub-user.' parameters: [] responses: { } tags: - 'Company Users' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: uuid description: 'The invited user uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/users/{userInviteUuid}/activate': post: summary: 'Force activate user' operationId: forceActivateUser description: 'This endpoint lets admin/super admin to activate user.' parameters: [] responses: { } tags: - 'Company Users' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: userInviteUuid description: '' example: 3 required: true schema: type: integer - in: path name: uuid description: 'The invited user uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/users/{userUuid}': put: summary: Update operationId: update description: 'This endpoint lets the user update company user.' parameters: [] responses: { } tags: - 'Company Users' requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'The first name of the user.' example: John last_name: type: string description: 'The first name of the user.' example: Smith email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com role_uuid: type: string description: 'uuid required The role uuid of the user.' example: 45955590-4152-11ec-9c77-2181a8ee04db company_locations: type: array description: 'array of uuid required The company location.' example: - 3245d630-24fd-11ec-accd-e397aec85c7f items: type: object required: - first_name - last_name - email patch: summary: Patch operationId: patch description: 'This endpoint lets the user patch company user.' parameters: [] responses: { } tags: - 'Company Users' requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'The first name of the user.' example: John role_uuid: type: string description: 'uuid required The role uuid of the user.' example: 45955590-4152-11ec-9c77-2181a8ee04db company_locations: type: array description: 'array of uuid required The company location.' example: - 3245d630-24fd-11ec-accd-e397aec85c7f items: type: object status_uuid: type: string description: 'Must be a valid UUID.' example: 61fc278a-a23b-3b5b-8ea2-81e901f29e54 last_name: type: string description: 'The first name of the user.' example: Smith email: type: string description: 'The email of the user.' example: hello@smarterlaunch.com required: - first_name - last_name - email delete: summary: Delete operationId: delete description: 'This endpoint allows owner to delete a user.' parameters: [] responses: { } tags: - 'Company Users' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: userUuid description: '' example: 3 required: true schema: type: integer '/api/v1/companies/{company_uuid}/custom-field-groups': get: summary: List operationId: list description: 'Shows the list of company custom field groups with pagination.' parameters: [] responses: { } tags: - 'Company Field Group' post: summary: Store operationId: store description: 'Store a newly created company custom field group.' parameters: [] responses: { } tags: - 'Company Field Group' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the custom field group. Example : Additional Details' example: illo assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: rerum company_custom_fields: type: array description: "of object required The company_custom_fields of the custom field group. Example : [{label: 'Address 3', input_type: 'TEXT}]" example: - unde items: type: string required: - name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: doloribus - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: aspernatur - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: cum - in: path name: with_trashed description: 'Optional parameter. boolean To display soft deleted data as well. Example : true' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: itaque - in: path name: assignment description: 'Optional parameter. To filter data by assignment. Example : CUSTOMER_ADDRESS' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: provident '/api/v1/companies/{company_uuid}/custom-field-groups/{companyCustomFieldGroup_uuid}': get: summary: Show operationId: show description: 'Show a single company custom field group.' parameters: [] responses: { } tags: - 'Company Field Group' put: summary: Update operationId: update description: 'Update a company custom field group.' parameters: [] responses: { } tags: - 'Company Field Group' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the custom field group. Example : Additional Details' example: nostrum assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: eligendi company_custom_fields: type: array description: "of object required The company_custom_fields of the custom field group. Example : [{label: 'Address 3', input_type: 'TEXT}]" example: - consequatur items: type: string deleted_custom_field_uuids: type: array description: 'of uuid required The deleted_custom_field_uuids of the custom field group. Example : ["3245d630-24fd-11ec-accd-e397aec85c7f", "3245d630-24fd-11ec-accd-e397aec85c7f"]' example: - animi items: type: string required: - name patch: summary: Patch operationId: patch description: 'Patch a company custom field group.' parameters: [] responses: { } tags: - 'Company Field Group' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the custom field group. Example : Additional Details' example: et assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: velit company_custom_fields: type: array description: "of object required The company_custom_fields of the custom field group. Example : [{label: 'Address 3', input_type: 'TEXT}]" example: - voluptatem items: type: string deleted_custom_field_uuids: type: array description: 'of uuid required The deleted_custom_field_uuids of the custom field group. Example : ["3245d630-24fd-11ec-accd-e397aec85c7f", "3245d630-24fd-11ec-accd-e397aec85c7f"]' example: - ut items: type: string required: - name delete: summary: Delete operationId: delete description: 'Delete a company custom field group.' parameters: [] responses: { } tags: - 'Company Field Group' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyCustomFieldGroup_uuid description: '' example: 892b34bd-6f8a-37eb-aca8-ed1812faacda required: true schema: type: string /api/v1/upload-from-url: post: summary: '' operationId: postApiV1UploadFromUrl description: '' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: url: type: string description: 'Must be a valid URL.' example: 'http://feest.com/est-deleniti-dolorum-excepturi-maiores-autem-autem-ullam.html' required: - url /api/v1/auth/webhook-receiving-url: post: summary: '' operationId: postApiV1AuthWebhookReceivingUrl description: '' parameters: [] responses: { } tags: - 'Other Endpoints' /api/v1/auth/webhooks/subscribe-test: post: summary: Test operationId: test description: 'Save new webhook subscription' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: url: type: string description: 'The url where smarterlaunch submit data when particular events are triggered.' example: "'http://zapier.com/customer-created-in-smarterlaunch'" event: type: string description: 'To determine what kind of trigger the webhook is for.' example: "customer-create'" type: type: boolean description: 'Check To determine what integration the incoming webhook is for.' example: true required: - url - event - type '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/proposal-file-upload-presigned-url': post: summary: "POST\nGet S3 Pre-signed Url for Proposal Review" operationId: pOSTGetS3PreSignedUrlForProposalReview description: '' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: signature_photo: type: object description: 'The signature image file object {"full_path": string, "md5_hash": string, "extension": string}.' example: full_path: /test/signature.png md5_hash: '#hash#' extension: png properties: { } proposal_pdf: type: object description: 'The pdf file object {"full_path": string, "md5_hash": string, "extension": string}.' example: full_path: /test/proposal.pdf md5_hash: '#hash#' extension: pdf properties: { } required: - signature_photo - proposal_pdf parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/file-upload-presigned-url': post: summary: "POST\nGet S3 Pre-signed Url" operationId: pOSTGetS3PreSignedUrl description: '' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: false content: application/json: schema: type: object properties: 'items[]': type: $items description: "An array of ['path' => string, 'extension' => string, 'md5_hash' => string, 'is_full_path' => boolean]." example: '[{"path": "/companies/{company-uuid}/", "extension": "jpg"}]' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer /api/v1/file-upload-presigned-url: post: summary: "POST\nGet S3 Pre-signed Url" operationId: pOSTGetS3PreSignedUrl description: '' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: false content: application/json: schema: type: object properties: 'items[]': type: $items description: "An array of ['path' => string, 'extension' => string, 'md5_hash' => string, 'is_full_path' => boolean]." example: '[{"path": "/companies/{company-uuid}/", "extension": "jpg"}]' '/api/v1/companies/{company_uuid}/line-items': get: summary: List operationId: list description: 'Shows the list of line items with pagination.' parameters: [] responses: { } tags: - 'Other Endpoints' post: summary: Store operationId: store description: 'Store a new line item.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the line item. Example : "Termite Pesticide"' example: eaque description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Tempora ut hic voluptas iste commodi assumenda.' line_item_values: type: string description: 'The data of the line item. Example : {"price": [100, 100]}' example: et required: - name - description - line_item_values parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 9 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: magnam - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptatem - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: non '/api/v1/companies/{company_uuid}/line-items/{lineItem_uuid}': get: summary: Show operationId: show description: 'Show a single line item.' parameters: [] responses: { } tags: - 'Other Endpoints' put: summary: Update operationId: update description: 'Update a line item.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the line item. Example : "Termite Pesticide"' example: sapiente description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Sint iste qui sint neque atque.' line_item_values: type: string description: 'The data of the line item. Example : {"price": [100, 100]}' example: omnis required: - name - line_item_values patch: summary: Patch operationId: patch description: 'Update a line item.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the line item. Example : "Termite Pesticide"' example: eum description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Magnam provident architecto omnis velit mollitia voluptatem ut.' line_item_values: type: string description: 'The data of the line item. Example : {"price": [100, 100]}' example: odio required: - name - line_item_values delete: summary: Delete operationId: delete description: 'Delete a line item.' parameters: [] responses: { } tags: - 'Other Endpoints' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: lineItem_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/line-items/import': post: summary: 'Import Set to Line Items' operationId: importSetToLineItems description: 'Store a newly created import set.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: import_files: type: files description: 'The set of json files containing import settings data.' example: qui override: type: boolean description: 'Determine if the import set will replace the current ones with matching names.' example: true required: - import_files - override parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/teams': get: summary: List operationId: list description: 'Shows the list of teams with pagination.' parameters: [] responses: { } tags: - 'Other Endpoints' post: summary: Store operationId: store description: 'Store a newly created team.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the team. Example : "Engineering"' example: voluptas required: - name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: iste - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: enim - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quo '/api/v1/companies/{company_uuid}/teams/{team_uuid}': get: summary: Show operationId: show description: 'Show a single team.' parameters: [] responses: { } tags: - 'Other Endpoints' put: summary: Update operationId: update description: 'Update a team.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the team. Example : "Accounting"' example: autem required: - name patch: summary: Patch operationId: patch description: 'Patch a company team.' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the team. Example : "Accounting"' example: rerum delete: summary: Delete operationId: delete description: 'Delete a team.' parameters: [] responses: { } tags: - 'Other Endpoints' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: team_uuid description: '' example: 1 required: true schema: type: integer /api/v1/reports/templates: get: summary: List operationId: list description: 'Returns the list of available reports' parameters: [] responses: { } tags: - 'Other Endpoints' parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 15 - in: path name: sort_by description: 'Optional parameter. The column name. Example : title' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: repudiandae - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: non - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: assumenda - in: path name: filter_by_uuids description: 'Optional parameter. string[] To fitler by selected uuids. Example : [uuid, uuid-2]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: vero - in: path name: groups description: 'Optional parameter. string[] To fitler by selected groups. Example : [dashboard, sales]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ex - in: path name: uuid description: 'Optional parameter. optional The company uuid.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f '/api/v1/reports/templates/{reportTemplate_uuid}': put: summary: Update operationId: update description: 'Update a report template.' parameters: [] responses: { } tags: - 'Other Endpoints' delete: summary: Delete operationId: delete description: 'Delete a report template.' parameters: [] responses: { } tags: - 'Other Endpoints' parameters: - in: path name: reportTemplate_uuid description: '' example: 169e25d8-bc90-3b8e-ac33-ce9caab5d9f1 required: true schema: type: string /api/v1/webhooks/subscribe: get: summary: List operationId: list description: 'Shows the list of webhooks.' parameters: [] responses: { } tags: - 'Other Endpoints' post: summary: Store operationId: store description: 'Save new webhook subscription' parameters: [] responses: { } tags: - 'Other Endpoints' requestBody: required: true content: application/json: schema: type: object properties: url: type: string description: 'The url where smarterlaunch submit data when particular events are triggered.' example: "'http://zapier.com/customer-created-in-smarterlaunch'" event: type: string description: 'To determine what kind of trigger the webhook is for.' example: "customer-create'" type: type: boolean description: 'Check To determine what integration the incoming webhook is for.' example: true required: - url - event - type parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 18 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: qui - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ut - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nihil '/api/v1/webhooks/subscribe/{webhook_uuid}': delete: summary: Delete operationId: delete description: 'Delete a webhook.' parameters: [] responses: { } tags: - 'Other Endpoints' parameters: - in: path name: webhook_uuid description: '' example: 3a78ab1e-a993-370e-8487-f56a11447243 required: true schema: type: string /api/v1/users: get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of users or fetch single record using uuid.' parameters: [] responses: { } tags: - User requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the user.' example: 3245d630-24fd-11ec-accd-e397aec85c7f post: summary: 'Create / Update.' operationId: createUpdate description: 'This endpoint lets user to create or update single record using uuid' parameters: [] responses: { } tags: - User requestBody: required: true content: multipart/form-data: schema: type: object properties: uuid: type: string description: 'optional The document uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f first_name: type: string description: 'The first name of the customer.' example: John last_name: type: string description: 'The last name of the customer.' example: Smith phone: type: string description: 'The phone of the customer.' example: '7897897894' email: type: string description: 'optional The email of the customer.' example: hello@smarterlaunch.com position: type: string description: 'The position of the customer.' example: Manager new_password: type: string description: 'optional The current password of the customer.' example: XXX confirm_new_password: type: string description: "optional The confirmation of the new password of\n the customer." example: XTXT profile_photo_url: type: string format: binary description: 'optional The image file.' required: - first_name - last_name - phone - position '/api/v1/users/{user_uuid}': get: summary: 'List / Fetch' operationId: listFetch description: 'Shows the list of users or fetch single record using uuid.' parameters: [] responses: { } tags: - User requestBody: required: false content: application/json: schema: type: object properties: uuid: type: string description: 'optional The uuid of the user.' example: 3245d630-24fd-11ec-accd-e397aec85c7f put: summary: 'Create / Update.' operationId: createUpdate description: 'This endpoint lets user to create or update single record using uuid' parameters: [] responses: { } tags: - User requestBody: required: true content: multipart/form-data: schema: type: object properties: uuid: type: string description: 'optional The document uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f first_name: type: string description: 'The first name of the customer.' example: John last_name: type: string description: 'The last name of the customer.' example: Smith phone: type: string description: 'The phone of the customer.' example: '7897897894' email: type: string description: 'optional The email of the customer.' example: hello@smarterlaunch.com position: type: string description: 'The position of the customer.' example: Manager new_password: type: string description: 'optional The current password of the customer.' example: XXX confirm_new_password: type: string description: "optional The confirmation of the new password of\n the customer." example: XTXT profile_photo_url: type: string format: binary description: 'optional The image file.' required: - first_name - last_name - phone - position patch: summary: Patch operationId: patch description: 'This endpoint allows users to patch their user info.' parameters: [] responses: { } tags: - User requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'optional The first name of the user.' example: John last_name: type: string description: 'optional The last name of the user.' example: Smith phone: type: string description: 'optional The phone of the user.' example: '7897897894' position: type: string description: 'optional The position of the user.' example: Manager settings: type: array description: 'optional The user settings.' example: - omnis items: type: string uuid: type: string description: 'The user uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - uuid delete: summary: Delete operationId: delete description: 'This end point allows user to delete the user-account.' parameters: [] responses: { } tags: - User requestBody: required: true content: application/json: schema: type: object properties: uuid: type: string description: 'The uuid of the user.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - uuid parameters: - in: path name: user_uuid description: '' example: 3 required: true schema: type: integer '/api/v1/users/{user_uuid}/image': post: summary: 'Store user profile pic.' operationId: storeUserProfilePic description: 'This endpoint lets user to upload or update profile picture.' parameters: [] responses: { } tags: - User requestBody: required: true content: multipart/form-data: schema: type: object properties: profile_photo_url: type: string format: binary description: 'The image file.' uuid: type: string description: 'The user uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - profile_photo_url - uuid delete: summary: 'Remove Profile pic.' operationId: removeProfilePic description: 'This endpoint allows users to remove profile pictures with proper authorization.' parameters: [] responses: { } tags: - User parameters: - in: path name: user_uuid description: '' example: 3 required: true schema: type: integer '/api/v1/users/{user_uuid}/signature-image': post: summary: 'Store user signature pic.' operationId: storeUserSignaturePic description: 'This endpoint lets user to upload or update signature picture.' parameters: [] responses: { } tags: - User requestBody: required: true content: multipart/form-data: schema: type: object properties: signature_photo_url: type: string format: binary description: 'The image file.' uuid: type: string description: 'The user uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - signature_photo_url - uuid parameters: - in: path name: user_uuid description: '' example: 3 required: true schema: type: integer /api/v1/users/image: delete: summary: 'Remove Profile pic.' operationId: removeProfilePic description: 'This endpoint allows users to remove profile pictures with proper authorization.' parameters: [] responses: { } tags: - User '/api/v1/companies/{company_uuid}/custom-settings': get: summary: List operationId: list description: 'Shows the list of do with filter or single template page data.' parameters: - in: query name: page description: 'optional The page number.' example: 1 required: false schema: type: integer description: 'optional The page number.' example: 1 responses: { } tags: - 'Company Location Custom Settings' requestBody: required: false content: application/json: schema: type: object properties: page_size: type: integer description: 'optional The number of records you want per page.' example: 15 sort_by: type: string description: 'optional The column name.' example: title sort_order: type: string description: 'optional The order in which you want your records.' example: asc search: type: string description: 'optional The general search, it will find matching string.' example: John post: summary: Create operationId: create description: 'Create a company location custom setting' parameters: [] responses: { } tags: - 'Company Location Custom Settings' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of custom setting.' example: Services value: type: string description: 'The value of custom setting.' example: 'Pest control' company_location_uuid: type: string description: 'option The specific company location uuid of the custom setting.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - name - value parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/custom-settings/{companyLocationCustomSetting_uuid}': get: summary: Show operationId: show description: 'Show detail of a company location setting' parameters: [] responses: { } tags: - 'Company Location Custom Settings' put: summary: Update operationId: update description: 'Update a company location custom setting' parameters: [] responses: { } tags: - 'Company Location Custom Settings' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of custom setting.' example: Services value: type: string description: 'The value of custom setting.' example: 'Pest control' company_location_uuid: type: string description: 'option The specific company location uuid of the custom setting.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - name - value delete: summary: Delete operationId: delete description: 'Deletes a company location custom setting' parameters: [] responses: { } tags: - 'Company Location Custom Settings' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: companyLocationCustomSetting_uuid description: '' example: 908c1059-c320-301a-9190-0cafaa97cff6 required: true schema: type: string - in: path name: companyUuid description: 'Optional parameter. Uuid of Company.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f - in: path name: companyLocationCustomSettingUuid description: 'Optional parameter. Uuid of CompanyLocationCustomSetting.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f /api/v1/import-types: get: summary: List operationId: list description: 'Shows the list of tags with pagination.' parameters: [] responses: { } tags: - 'Import Type' parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 19 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: animi - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: perferendis - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Categories"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: dicta - in: path name: name description: 'Optional parameter. The name of import type. Example : "Categories"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sed - in: path name: code description: 'Optional parameter. The code of import type. Example : "categories"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/preview': get: summary: Get operationId: get description: 'Display the selected proposal.' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/get-ip-datetime': get: summary: 'Get client IP Address and Date time prior to accepting the proposal' operationId: getClientIPAddressAndDateTimePriorToAcceptingTheProposal description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/support-request': post: summary: 'Store Proposal Inquiry' operationId: storeProposalInquiry description: 'Send inquiry request from users' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: support_type: type: string description: 'The support type.' example: "'General Inquiry'" client_detail: type: object description: '' example: null properties: { } screenshots_url: type: array description: 'The screenshots URL string.' example: - 'https://example.net/image1.jpg' - 'https://example.net/image1.png' items: type: string description: type: string description: 'The support request details.' example: "'I cannot access documents. Please help.'" no_attachments: type: boolean description: 'Check if request has attachments.' example: false required: - support_type - screenshots_url - description - no_attachments parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/{supportRequestUuid}/support-request-upload': post: summary: Upload operationId: upload description: 'Upload photos for Cover Letter or Photo Layout pages' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: screenshot_url: type: string description: 'The url of the attached image.' example: 'https://example.net/test.png' required: - screenshot_url parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer - in: path name: supportRequestUuid description: '' example: 4fbc1e7b-c6f0-3254-94ce-260bb08be7fe required: true schema: type: string '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/accept-sign': post: summary: 'Accept and Sign' operationId: acceptAndSign description: '' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: accepted_confirmation_uuids: type: object description: '' example: null properties: { } signature_photo_url: type: string description: 'The image url.' example: 'http://kling.com/' proposal_pdf_url: type: string description: 'The pdf file url.' example: 'http://emard.com/qui-sequi-quisquam-totam-libero.html' auth_code: type: string description: '' example: aut required: - signature_photo_url - proposal_pdf_url parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/replace-signature': post: summary: 'Replicate Signature' operationId: replicateSignature description: '' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: signature_photo_url: type: string description: 'The image url.' example: 'http://christiansen.info/laborum-laborum-autem-nisi-nulla-odit-blanditiis' proposal_pdf_url: type: string description: 'The pdf file url.' example: 'http://boyle.com/necessitatibus-hic-magni-autem-eum-perferendis-quisquam-ut-facilis' required: - signature_photo_url - proposal_pdf_url parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/update-attachment': post: summary: 'Update Attached Document' operationId: updateAttachedDocument description: 'Patch the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: false content: multipart/form-data: schema: type: object properties: documentFile: type: string format: binary description: 'The updated document file. Example : WDIIR.pdf' documentIndex: type: number description: 'The document index number. Example : 1' example: 10475068.530055 parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/video-clicked': post: summary: 'Log Video Clicked' operationId: logVideoClicked description: '' parameters: [] responses: { } tags: - Proposal requestBody: required: false content: application/json: schema: type: object properties: video_type: type: "'service'" description: "| 'screen_recording'" example: et parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/decline': patch: summary: Decline operationId: decline description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/update-selected-pricing': patch: summary: 'Update Selected Pricing' operationId: updateSelectedPricing description: 'Patch the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: false content: application/json: schema: type: object properties: proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/customer-forms': patch: summary: 'Submit Customer Forms' operationId: submitCustomerForms description: 'Patch the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: formValues: type: object description: '' example: [] properties: { } attachedDocuments: type: object description: '' example: null properties: { } submittedForms: type: object description: '' example: [] properties: { } proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } required: - formValues - submittedForms parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer /api/v1/proposals: get: summary: List operationId: list description: 'Shows the list of proposal with pagination.' parameters: [] responses: { } tags: - Proposal requestBody: required: false content: application/json: schema: type: object properties: include_fields: type: array description: '' example: null items: type: string ignore_cached: type: boolean description: '' example: false date_range_start: type: string description: 'Must be a valid date.' example: '2025-09-08T14:09:08' date_range_end: type: string description: 'Must be a valid date. Must be a date after or equal to date_range_start.' example: '2040-01-15' timezone: type: string description: 'Must be a valid time zone, such as Africa/Accra.' example: Asia/Seoul post: summary: Create operationId: create description: 'Store a newly created proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the proposal. Example : Pest Route Initial Proposal' example: dolores description: type: string description: 'The paragraph describing the proposal.' example: 'Sit error ut sapiente consequatur similique quisquam et.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 85253619-84a4-39f4-95cc-fef45c2faf4f customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 223528bf-0f74-3bb2-beb7-7eb741524e53 customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 36c7f922-82eb-3f23-9192-72fde35bb4f0 status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: ac73a48a-8aa0-3671-abf3-23396b5fe36e service_plan_uuids: type: array description: "The list of ServicePlan's UUID you want to add in the proposal.\n Example : [\"815d3d9c-f371-3781-8456-7e6954b5b0f5\", \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"]" example: - dolorem items: type: string proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } proposal_template_uuid: type: string description: "The UUID of proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 298d62f8-59a3-3640-b19b-0e530ca922ea required: - title - company_location_uuid - customer_uuid - customer_address_uuid - status_uuid - proposal_template_uuid parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 5 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: est - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: repellendus - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: consequuntur - in: path name: search_by description: 'Optional parameter. The specific field to search within. Options: customer_name, title, description. Example : customer_name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: enim - in: path name: company_location_uuid description: "Optional parameter. The UUID of company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 4467975f-903d-318a-b20d-3d4b7551195a - in: path name: company_location_uuids description: "Optional parameter. string[] The UUID of company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: est - in: path name: status_uuid description: 'Optional parameter. string[] The UUID of proposal status. Example : ["815d3d9c-f371-3781-8456-7e6954b5b0f5"]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: dbc7529c-801a-3754-a6de-1ff2c4a2b6e7 - in: path name: customer_uuid description: 'Optional parameter. The UUID of a customer. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 016e8a2f-66a1-3224-82a7-08077af4a0e2 - in: path name: include_fields description: 'Optional parameter. string[] Optionally include related data for the proposal. Example : "company"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ipsum - in: path name: user_uuid description: "Optional parameter. Filter by the user that created proposals.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: fd783183-7df4-301d-9036-cfad05415a3a - in: path name: timezone description: "Optional parameter. Optional timezone for date filtering. Falls back to user's favorite location timezone, then MST.\n Example : \"America/New_York\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: Africa/Luanda - in: path name: date_range_start description: 'Optional parameter. Start date for filtering proposals. Example : "2024-08-01"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nihil - in: path name: date_range_end description: 'Optional parameter. End date for filtering proposals. Example : "2024-08-13"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: esse - in: path name: date_range_type description: 'Optional parameter. Type of date to filter by. Options: created_at, updated_at. Example : "created_at"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: soluta /api/v1/proposals/export-list: get: summary: 'Export List' operationId: exportList description: 'Returns a CSV file of list of filtered proposal list.' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 19 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 6 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sequi - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: maiores - in: path name: company_location_uuid description: "Optional parameter. The UUID of company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 9f65e157-93bf-315f-b5db-04ce1fc8b984 - in: path name: company_location_uuids description: "Optional parameter. string[] The UUID of company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: a - in: path name: status_uuid description: 'Optional parameter. The UUID of proposal status. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 139ada89-6b11-33f8-b1fa-38ac3c7f8985 - in: path name: customer_uuid description: 'Optional parameter. The UUID of a customer. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: d18dead5-4f25-3b7c-ba4b-27bb3aec35b5 - in: path name: include_fields description: 'Optional parameter. string[] Optionally include related data for the proposal. Example : "company"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: repellat - in: path name: user_uuid description: "Optional parameter. Filter by the user that created proposals.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: fa02ca0f-b8b6-3eae-93cf-52121c0771ba /api/v1/proposals/summary: get: summary: Summary operationId: summary description: "Shows the summary of proposal.\nReturns number of items per Proposal status." parameters: [] responses: { } tags: - Proposal '/api/v1/proposals/{proposal_uuid}': get: summary: Get operationId: get description: 'Display the selected proposal.' parameters: [] responses: { } tags: - Proposal put: summary: Update operationId: update description: 'Updates the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the proposal.' example: '"Pest Route Initial Proposal"' description: type: string description: 'The paragraph describing the proposal.' example: '"Lorem, ipsum dolor sit amet consectetur adipisicing elit."' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 2437665e-19c6-3388-bd1f-3d262079d5df customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: f23c40c2-437b-3268-9813-a93f864de779 customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: dc1cbd40-a88e-3702-9c8a-319ebfd57177 status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 98f7cd7b-abe1-30a4-b630-1a601a052c8c service_plan_uuids: type: array description: "The list of ServicePlan's UUID you want to add in the proposal.\n Example : ['815d3d9c-f371-3781-8456-7e6954b5b0f5', '815d3d9c-f371-3781-8456-7e6954b5b0f5']" example: - voluptas items: type: string proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } settings: type: object description: '' example: null properties: { } proposal_template_uuid: type: string description: "The UUID of proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: f84ee724-469d-37d7-adae-4c524b3cc314 include_fields: type: object description: '' example: null properties: { } expire_at: type: string description: 'Must be a valid date.' example: '2025-09-08T14:09:08' required: - title - company_location_uuid - customer_uuid - customer_address_uuid - status_uuid - proposal_template_uuid patch: summary: Patch operationId: patch description: 'Patch the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the proposal. Example : Pest Route Initial Proposal' example: rem description: type: string description: 'The paragraph describing the proposal.' example: 'Qui eos veritatis rerum dolore et nisi.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 6e766031-39e8-39e2-b59b-e4673c54fd21 customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: ae8a0079-ebbe-3eae-a13f-62e8fdf07796 customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: d641da53-676e-3d62-8a5b-fd077becfa7b status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 9e43241b-81a1-39a9-b05f-261cacb1e156 service_plan_uuids: type: array description: "The list of ServicePlan's UUID you want to add in the proposal.\n Example : ['815d3d9c-f371-3781-8456-7e6954b5b0f5', '815d3d9c-f371-3781-8456-7e6954b5b0f5']" example: - error items: type: string proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } settings: type: object description: '' example: null properties: { } proposal_template_uuid: type: string description: "The UUID of proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 55c1aa38-c166-3aea-a781-7e80aebd4445 include_fields: type: object description: '' example: null properties: { } expire_at: type: string description: 'Must be a valid date.' example: '2025-09-08T14:09:08' required: - proposal_template_uuid delete: summary: Delete operationId: delete description: 'Delete a specified proposal.' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/activity-logs': get: summary: 'List of Activity Logs' operationId: listOfActivityLogs description: "Shows the list of proposal's activity logs with pagination." parameters: [] responses: { } tags: - Proposal requestBody: required: false content: application/json: schema: type: object properties: include_fields: type: object description: '' example: null properties: { } post: summary: Create operationId: create description: 'Store a newly created proposal activity entry' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: description: type: string description: 'The description of activity entry.' example: "Be sure to follow-up with the customer.'" remind_at: type: string description: 'The date of reminder through email.' example: 07/23/2024 required: - description - remind_at parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 5 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 10 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: eos - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quisquam - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptatem '/api/v1/proposals/{proposal_uuid}/activity/{activity_uuid}/events': get: summary: 'Get the events associated with a specific proposal activity' operationId: getTheEventsAssociatedWithASpecificProposalActivity description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer - in: path name: activity_uuid description: '' example: 0a4836de-c38d-33c7-b3e4-c04187f076eb required: true schema: type: string '/api/v1/proposals/{proposal_uuid}/tarf-xml-url': get: summary: 'Download TARF XML' operationId: downloadTARFXML description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/cali-wdo-report-url': get: summary: 'Download California WDO XML' operationId: downloadCaliforniaWDOXML description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/activity-logs/{activityEntryUuid}/{action}': post: summary: action operationId: action description: '' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer - in: path name: activityEntryUuid description: '' example: f691106d-26a2-34a9-bb3a-a9aaaad71fbe required: true schema: type: string - in: path name: action description: '' example: ipsum required: true schema: type: string '/api/v1/proposals/{proposal_uuid}/duplicate': post: summary: Duplicate operationId: duplicate description: 'This endpoint lets user to duplicate proposal and set into a draft mode' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: 'Optional parameter. uuid required The uuid of the proposal.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f '/api/v1/proposals/{proposal_uuid}/upload-review-photo': post: summary: 'Upload Review Photo' operationId: uploadReviewPhoto description: '' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: multipart/form-data: schema: type: object properties: photo: type: string format: binary description: 'The image file.' type: type: enum description: "'cover' | 'photos' required The photo type." example: "'cover'." layout: type: enum description: "'Tiled' | 'Stacked' required The photo type." example: "'Tiled'." required: - photo parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/push-to-crm': post: summary: 'Resync document' operationId: resyncDocument description: 'Resync document the specified proposal.' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the proposal. Example : Pest Route Initial Proposal' example: hic description: type: string description: 'The paragraph describing the proposal.' example: 'Amet voluptatum iure ex voluptas nesciunt esse.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: f4cea6ce-a6ee-39cc-8c40-5622ab9f4b5f customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: e29c47e9-11dd-37cd-919a-f9aa5d949893 customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 35a583fd-28e9-39e6-ad6a-1d18cbb04aec status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: fe021047-dcf3-3968-9eea-ecd9c76b84a0 service_plan_uuids: type: array description: "The list of ServicePlan's UUID you want to add in the proposal.\n Example : ['815d3d9c-f371-3781-8456-7e6954b5b0f5', '815d3d9c-f371-3781-8456-7e6954b5b0f5']" example: - qui items: type: string proposal_values: type: object description: "The collected data of the proposal in object format.\n Example : {\"price\":1000.00,\"currency\":\"$\"}" example: [] properties: { } proposal_template_uuid: type: string description: "The UUID of proposal template.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 2c8770b3-cbdf-3e8f-b443-6070647d5453 required: - proposal_template_uuid parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/activity-logs/{activityEntryUuid}': put: summary: Update operationId: update description: 'Update a proposal activity entry' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: description: type: string description: 'The description of activity entry.' example: "Be sure to follow-up with the customer.'" remind_at: type: string description: 'The date of reminder through email.' example: 07/23/2024 required: - description - remind_at delete: summary: Delete operationId: delete description: 'Delete a proposal activity entry' parameters: [] responses: { } tags: - Proposal parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer - in: path name: activityEntryUuid description: '' example: 827f871c-6faa-38e9-893c-df9aa85ab4a4 required: true schema: type: string '/api/v1/proposals/{proposal_uuid}/share': patch: summary: Share operationId: share description: 'Send proposal via email' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: recipients: type: array description: 'The recipients of the proposal.' example: - johnsmith@example.net - anasmith@example.net items: type: string subject: type: string description: 'The subject of the proposal.' example: '"Pest Route Initial Proposal"' body: type: string description: 'The body of the proposal.' example: '"Pest Route Initial Proposal"' required: - recipients - subject - body parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/proposals/{proposal_uuid}/delete-review-photo': delete: summary: 'Delete Review Photo' operationId: deleteReviewPhoto description: '' parameters: [] responses: { } tags: - Proposal requestBody: required: true content: application/json: schema: type: object properties: image_url: type: string description: 'The image url.' example: 'https://shanahan.info/sit-occaecati-dolores-quia-enim-dolore-dolorem-velit.html' type: type: enum description: "'cover' | 'photos' required The photo type." example: "'cover'." required: - image_url parameters: - in: path name: proposal_uuid description: '' example: 15 required: true schema: type: integer '/api/v1/companies/{company_uuid}/service-agreements': get: summary: List operationId: list description: 'Shows the list of company service agreements with pagination.' parameters: [] responses: { } tags: - 'Service Agreement' post: summary: Store operationId: store description: 'Store a service agreement.' parameters: [] responses: { } tags: - 'Service Agreement' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the service agreement. Example : Termites Service Agreement' example: vitae content: type: string description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: sapiente required: - title - content parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 12 - in: path name: sort_by description: 'Optional parameter. The column name. Example : title' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: cum - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sapiente - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: deleniti - in: path name: filter_by_uuids description: 'Optional parameter. string[] To fitler by selected uuids. Example : [uuid, uuid-2]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: aut '/api/v1/companies/{company_uuid}/service-agreements/{serviceAgreement_uuid}': get: summary: Show operationId: show description: 'Show a single service agreement.' parameters: [] responses: { } tags: - 'Service Agreement' put: summary: Update operationId: update description: 'Update a service agreement.' parameters: [] responses: { } tags: - 'Service Agreement' requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the service agreement. Example : Termites Service Agreement' example: veritatis content: type: string description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: quod required: - title - content patch: summary: Patch operationId: patch description: 'Patch a service agreement.' parameters: [] responses: { } tags: - 'Service Agreement' requestBody: required: false content: application/json: schema: type: object properties: title: type: string description: 'optional The title of the service agreement. Example : Termites Service Agreement' example: neque content: type: string description: 'optional The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: cupiditate delete: summary: Delete operationId: delete description: 'Delete a service agreement.' parameters: [] responses: { } tags: - 'Service Agreement' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: serviceAgreement_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/service-agreements/{serviceAgreement_uuid}/setAsActive': patch: summary: 'Patch - Set as Active' operationId: patchSetAsActive description: 'Set as Active a service agreement version.' parameters: [] responses: { } tags: - 'Service Agreement' requestBody: required: false content: application/json: schema: type: object properties: title: type: string description: 'optional The title of the service agreement. Example : Termites Service Agreement' example: omnis content: type: string description: 'optional The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: non parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: serviceAgreement_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/update-limit/{entity}': patch: summary: '' operationId: patchApiV1CompaniesCompany_uuidUpdateLimitEntity description: '' parameters: [] responses: { } tags: - Company parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: entity description: '' example: et required: true schema: type: string '/api/v1/companies/{company_uuid}': get: summary: 'List / Fetch.' operationId: listFetch description: 'Shows the list of company or fetch single record using uuid.' parameters: [] responses: { } tags: - Company put: summary: 'Update Company' operationId: updateCompany description: 'This endpoint lets user to update a company.' parameters: [] responses: { } tags: - Company requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the company.' example: 'Smarter Launch' phone: type: string description: 'The last name of the company.' example: '5554448888' email: type: string description: 'The email of the company.' example: hello@smarterlaunch.com address1: type: string description: 'The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' primary_color: type: string description: 'optional The primary color.' example: '#009CFF' secondary_color: type: string description: 'optional The secondary color.' example: '#FFFFFF' custom_settings: type: object description: '' example: null properties: { } settings: type: object description: '' example: [] properties: available_integration_uuids: type: object description: '' example: null properties: { } image_url: type: string description: '' example: 'http://koepp.info/' company_uuid: type: string description: 'optional The uuid of the company.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 description: type: string description: 'optional The company description.' example: 'We are helping take your business to the next level. Hop in!' required: - name - phone - email - address1 - city - country_state_uuid - country_uuid patch: summary: 'Patch Company' operationId: patchCompany description: 'This endpoint lets user to update a company.' parameters: [] responses: { } tags: - Company requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'optional The name of the company.' example: 'Smarter Launch' phone: type: string description: 'optional The last name of the company.' example: '5554448888' email: type: string description: 'optional The email of the company.' example: hello@smarterlaunch.com address1: type: string description: 'optional The address of the company.' example: "'123 Smarter Launch Way'" address2: type: string description: 'optional The address of the company.' example: "'Suite 101'" city: type: string description: 'optional The company city name.' example: 'Queen Creek' country_state_uuid: type: string description: 'optional The company state uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 country_uuid: type: string description: 'optional The company country uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 postal_code: type: string description: 'optional The postal code of the company.' example: '85410' latitude: type: string description: 'optional The latitude of the company.' example: '23.0396' longitude: type: string description: 'optional The longitude of the company.' example: '72.566' primary_color: type: string description: 'optional The primary color.' example: '#009CFF' secondary_color: type: string description: 'optional The secondary color.' example: '#FFFFFF' custom_settings: type: object description: '' example: null properties: { } settings: type: object description: '' example: [] properties: available_integration_uuids: type: object description: '' example: null properties: { } website_url: type: string description: 'Must be a valid URL.' example: 'http://nitzsche.com/' google_my_business_listing: type: string description: 'Must be a valid URL.' example: 'https://wuckert.biz/et-tempore-delectus-cupiditate-sed-sed-eos-est.html' image_url: type: string description: '' example: 'http://balistreri.com/sapiente-qui-qui-eveniet-enim-recusandae' company_uuid: type: string description: 'optional The uuid of the company.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 description: type: string description: 'optional The company description.' example: 'We are helping take your business to the next level. Hop in!' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: uuid description: 'Optional parameter. optional The company uuid.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f '/api/v1/companies/{company_uuid}/image': post: summary: 'Store company logo.' operationId: storeCompanyLogo description: 'This endpoint lets company to upload or update their logo.' parameters: [] responses: { } tags: - Company requestBody: required: true content: multipart/form-data: schema: type: object properties: image_url: type: string format: binary description: 'The image file.' required: - image_url parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: uuid description: 'The company uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string /api/v1/companies/logo: delete: summary: 'Remove company logo.' operationId: removeCompanyLogo description: 'Only self can remove his logo.' parameters: [] responses: { } tags: - Company '/api/v1/companies/{company_uuid}/billing': get: summary: 'Redirect to Stripe Billing Auth' operationId: redirectToStripeBillingAuth description: 'This endpoint lets user to redirect to Stripe Billing Auth.' parameters: [] responses: { } tags: - Company parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: uuid description: 'The company uuid.' example: ecd24580-2749-11ec-9b86-1102c06e74b4 required: true schema: type: string '/api/v1/companies/{company_uuid}/settings-json': get: summary: 'Get settings JSON file URL' operationId: getSettingsJSONFileURL description: '' parameters: [] responses: { } tags: - Company requestBody: required: true content: application/json: schema: type: object properties: settings_name: type: string description: 'The setting name' example: in required: - settings_name parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: uuid description: 'The company uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: true schema: type: string '/api/v1/companies/{company_uuid}/upload-base64': post: summary: "POST\nUpload Base64 files to S3" operationId: pOSTUploadBase64FilesToS3 description: '' parameters: [] responses: { } tags: - Company requestBody: required: true content: application/json: schema: type: object properties: items: type: array description: 'The array of {base64String, uuid} object.' example: null items: type: string deleteItems: type: array description: 'The array of uuid object.' example: null items: type: string required: - items - deleteItems parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/customers/{customer_uuid}/customer-addresses': put: summary: Update operationId: update description: '' parameters: [] responses: { } tags: - 'Customer Address' requestBody: required: false content: application/json: schema: type: object properties: 'addresses[]': type: array description: 'of addresses.' example: null items: type: string 'delete_addresses[]': type: array description: 'of addresses.uuid to be deleted.' example: null items: type: string parameters: - in: path name: customer_uuid description: 'Optional parameter. uuid required The UUID of the customer that is to be updated.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d634-24fd-11ec-accd-e397aec85c7f '/api/v1/customers/{customer_uuid}/customer-addresses/{customerAddress_uuid}': patch: summary: Patch operationId: patch description: 'Patch Customer Address' parameters: [] responses: { } tags: - 'Customer Address' requestBody: required: false content: application/json: schema: type: object properties: address1: type: string description: 'optional The address 1. Example : Address 1' example: nesciunt address2: type: string description: 'optional The address 2. Example : Address 2' example: sunt city: type: string description: 'optional The city. Example : Queen Creek' example: voluptatem country_state_uuid: type: string description: 'optional The state uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' example: 5b52dfc6-6a0c-3957-b7f0-ad5e83070ab6 country_uuid: type: string description: 'optional The country uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' example: a2efbd52-6fe8-3cf5-8ea5-d9712c24db45 postal_code: type: string description: 'optional The postal code. Example : 12345' example: assumenda latitude: type: string description: 'optional The latitude. Example : 33.2486' example: voluptatibus longitude: type: string description: 'optional The longitude. Example : 111.6377' example: aut is_primary: type: string description: 'optional The is_primary. Example : true' example: est settings: type: string description: 'optional The settings. Example : {}' example: ut county: type: string description: 'optional The county. Example : Pinal County' example: illum parameters: - in: path name: customer_uuid description: '' example: 1 required: true schema: type: integer - in: path name: customerAddress_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/customers/{customer_uuid}/customer-addresses/{customerAddress_uuid}/integration-data': get: summary: 'Integration Data' operationId: integrationData description: 'Get data from a 3rd party API' parameters: [] responses: { } tags: - 'Customer Address' requestBody: required: false content: application/json: schema: type: object properties: 'addresses[]': type: array description: 'of addresses.' example: null items: type: string 'delete_addresses[]': type: array description: 'of addresses.uuid to be deleted.' example: null items: type: string parameters: - in: path name: customer_uuid description: 'Optional parameter. uuid required The UUID of the customer that is to be updated.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d634-24fd-11ec-accd-e397aec85c7f - in: path name: customerAddress_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/service-plans/{servicePlan_uuid}/pricing-groups': get: summary: List operationId: list description: 'Shows the list of Service Plan Pricing Group with pagination.' parameters: [] responses: { } tags: - 'Service Plan Pricing Group' post: summary: Create operationId: create description: 'Store a newly created Service Plan Pricing Group.' parameters: [] responses: { } tags: - 'Service Plan Pricing Group' requestBody: required: true content: application/json: schema: type: object properties: pricing_group: type: object description: '' example: [] properties: { } name: type: string description: 'The name of Service Plan Pricing Group.' example: 'Premium Service Plan Pricing Group' frequency: type: string description: 'The frequency of Service Plan Pricing Group.' example: MONTHLY pricing_type: type: string description: 'The pricing type of Service Plan Pricing Group.' example: DYNAMIC_RANGE_PRICE apply_taxes: type: boolean description: 'The support request details.' example: true description: type: string description: 'The support request details.' example: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit...' pricing_data: type: object description: 'The support request details.' example: type: 'The Price' default: 'The Pricing' max: '1000.00' properties: { } required: - pricing_group - name - frequency put: summary: 'Update (Single/Multiple)' operationId: updateSingleMultiple description: "Modify the specified Service Plan Pricing Group.\nFor Single update, body parameter are all required.\nFor Multiple update, @bodyparameter will be an array of the Single @bodyParameter (if uuid is included then perform update; else, create new)." parameters: [] responses: { } tags: - 'Service Plan Pricing Group' requestBody: required: true content: application/json: schema: type: object properties: pricing_group: type: object description: '' example: [] properties: { } pricing_group_rules: type: object description: '' example: null properties: { } save_service_plan_as: type: string description: '' example: SERVICE_PLAN_DRAFT enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED name: type: string description: 'The name of Service Plan Pricing Group.' example: 'Premium Service Plan Pricing Group' frequency: type: string description: 'The frequency of Service Plan Pricing Group.' example: MONTHLY pricing_type: type: string description: 'The pricing type of Service Plan Pricing Group.' example: DYNAMIC_RANGE_PRICE apply_taxes: type: boolean description: 'The support request details.' example: true description: type: string description: 'The support request details.' example: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit...' pricing_data: type: object description: 'The support request details.' example: type: 'The Price' default: 'The Pricing' max: '1000.00' properties: { } required: - pricing_group - name - frequency - pricing_type - apply_taxes - description - pricing_data parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 10 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 1 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: corrupti - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: et - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sequi '/api/v1/service-plans/{servicePlan_uuid}/pricing-groups/{servicePlanPricingGroup_uuid}': get: summary: Get operationId: get description: 'Display the specified Service Plan Pricing Group.' parameters: [] responses: { } tags: - 'Service Plan Pricing Group' put: summary: 'Update (Single/Multiple)' operationId: updateSingleMultiple description: "Modify the specified Service Plan Pricing Group.\nFor Single update, body parameter are all required.\nFor Multiple update, @bodyparameter will be an array of the Single @bodyParameter (if uuid is included then perform update; else, create new)." parameters: [] responses: { } tags: - 'Service Plan Pricing Group' requestBody: required: true content: application/json: schema: type: object properties: pricing_group: type: object description: '' example: [] properties: { } pricing_group_rules: type: object description: '' example: null properties: { } save_service_plan_as: type: string description: '' example: SERVICE_PLAN_DRAFT enum: - SERVICE_PLAN_DRAFT - SERVICE_PLAN_ACTIVE - SERVICE_PLAN_ARCHIVED name: type: string description: 'The name of Service Plan Pricing Group.' example: 'Premium Service Plan Pricing Group' frequency: type: string description: 'The frequency of Service Plan Pricing Group.' example: MONTHLY pricing_type: type: string description: 'The pricing type of Service Plan Pricing Group.' example: DYNAMIC_RANGE_PRICE apply_taxes: type: boolean description: 'The support request details.' example: true description: type: string description: 'The support request details.' example: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit...' pricing_data: type: object description: 'The support request details.' example: type: 'The Price' default: 'The Pricing' max: '1000.00' properties: { } required: - pricing_group - name - frequency - pricing_type - apply_taxes - description - pricing_data patch: summary: Patch operationId: patch description: 'Perform patches for the specified Service Plan Pricing Group.' parameters: [] responses: { } tags: - 'Service Plan Pricing Group' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of Service Plan Pricing Group.' example: 'Premium Service Plan Pricing Group' frequency: type: string description: 'The frequency of Service Plan Pricing Group.' example: MONTHLY pricing_type: type: string description: 'The pricing type of Service Plan Pricing Group.' example: DYNAMIC_RANGE_PRICE apply_taxes: type: boolean description: 'The support request details.' example: true description: type: string description: 'The support request details.' example: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit...' pricing_data: type: object description: 'The support request details.' example: type: 'The Price' default: 'The Pricing' max: '1000.00' properties: { } delete: summary: Delete operationId: delete description: 'Remove the specified Service Plan Pricing Group.' parameters: [] responses: { } tags: - 'Service Plan Pricing Group' parameters: - in: path name: servicePlan_uuid description: '' example: 2 required: true schema: type: integer - in: path name: servicePlanPricingGroup_uuid description: '' example: cc5840e2-d901-34d0-8e3f-0cd85e565455 required: true schema: type: string /api/v1/reports/types: get: summary: '' operationId: getApiV1ReportsTypes description: '' parameters: [] responses: { } tags: - Report /api/v1/reports: get: summary: List operationId: list description: 'Returns the list of available reports' parameters: [] responses: { } tags: - Report post: summary: Store operationId: store description: 'Store a newly created report.' parameters: [] responses: { } tags: - Report parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 13 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 5 - in: path name: sort_by description: 'Optional parameter. The column name. Example : title' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: deserunt - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: laborum - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: aut - in: path name: filter_by_uuids description: 'Optional parameter. string[] To filter by selected uuids. Example : [uuid, uuid-2]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: iusto - in: path name: groups description: 'Optional parameter. string[] To filter by selected groups. Example : [dashboard, sales]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ipsum - in: path name: report_type description: 'Optional parameter. To filter by selected report type. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: autem - in: path name: template description: 'Optional parameter. To filter by selected template. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ratione - in: path name: uuid description: 'Optional parameter. optional The company uuid.' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3245d630-24fd-11ec-accd-e397aec85c7f '/api/v1/reports/{report_uuid}/duplicate': post: summary: Duplicate operationId: duplicate description: '' parameters: [] responses: { } tags: - Report parameters: - in: path name: report_uuid description: '' example: 1 required: true schema: type: integer /api/v1/reports/admin-overview: get: summary: Show operationId: show description: 'Show admin overview report.' parameters: [] responses: { } tags: - Report '/api/v1/reports/{report_uuid}': get: summary: Show operationId: show description: 'Show a single report.' parameters: [] responses: { } tags: - Report delete: summary: Delete operationId: delete description: '' parameters: [] responses: { } tags: - Report parameters: - in: path name: report_uuid description: '' example: 1 required: true schema: type: integer - in: path name: user_uuid description: 'Optional parameter. optional string The user uuid. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: a72d56b1-f763-34bc-b48a-f92c5b5a35f5 - in: path name: period description: "Optional parameter. optional array The period type. Example : [['period_type' => 'days', 'period_detail' => [1, 7, 30, 365]], ['period_type' => 'months', 'period_detail' => ['2023-01-01', '2023-02-02']]]" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: vero - in: path name: company_location_uuid description: 'Optional parameter. optional string The company location uuid. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 8bee44d3-4495-3aa1-b253-b726533cdb65 '/api/v1/reports/{report_uuid}/export': get: summary: Export operationId: export description: 'Export summary reports' parameters: [] responses: { } tags: - Report parameters: - in: path name: report_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/reports/{report_uuid}/filters': get: summary: Filters operationId: filters description: 'Retrieve filters to be used in frontend processes' parameters: [] responses: { } tags: - Report parameters: - in: path name: report_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/import-defaults': post: summary: 'Apply Import Set to Company' operationId: applyImportSetToCompany description: 'Store a newly created import set.' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: tags: type: array description: 'The array of tags to be associated in an import set. Example : ["Pest Control", "Arizona"]' example: - aut items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: ut override: type: boolean description: 'Determine if the import set will replace the current ones with matchinig names. Example : false' example: false admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: false required: - tags - import_files - override - admin_only parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/import-defaults/upload': post: summary: 'Apply Import Set to Company' operationId: applyImportSetToCompany description: 'Store a newly created import set.' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: tags: type: array description: 'The array of tags to be associated in an import set. Example : ["Pest Control", "Arizona"]' example: - ipsam items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: natus override: type: boolean description: 'Determine if the import set will replace the current ones with matchinig names. Example : false' example: true admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: true required: - tags - import_files - override - admin_only parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer /api/v1/import-sets: get: summary: List operationId: list description: 'Shows the list of import set with pagination.' parameters: [] responses: { } tags: - ImportSet requestBody: required: false content: application/json: schema: type: object properties: type_name: type: string description: '' example: null type_code: type: string description: '' example: null post: summary: Store operationId: store description: 'Store a newly created import set.' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: tags: type: array description: 'The array of tags to be associated in an import set. Example : ["Pest Control", "Arizona"]' example: - sunt items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: incidunt override: type: boolean description: 'Determine if the import set will replace the current ones with matchinig names. Example : false' example: true admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: true required: - tags - import_files - override - admin_only parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 14 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: maiores - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: inventore - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Quality Assurance"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: quam - in: path name: type_name description: 'Optional parameter. Filter by import type name : "Categories"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: qui - in: path name: type_code description: 'Optional parameter. Filter by import type name : "categories"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptas '/api/v1/import-sets/{importSet_uuid}': get: summary: Show operationId: show description: 'Show a single import set.' parameters: [] responses: { } tags: - ImportSet put: summary: Update operationId: update description: 'Update a import set.' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: import_files: type: files description: 'The set of json files containing import settings data.' example: quam admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: true is_selected: type: boolean description: 'Determine if the import set will be automatically selected when popping the dialog. Example : true' example: true required: - import_files - admin_only - is_selected patch: summary: 'Update the specified resource in storage.' operationId: updateTheSpecifiedResourceInStorage description: '' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: true is_selected: type: boolean description: 'Determine if the import set will be automatically selected when popping the dialog. Example : true' example: true required: - admin_only - is_selected delete: summary: Delete operationId: delete description: 'Delete a import set.' parameters: [] responses: { } tags: - ImportSet parameters: - in: path name: importSet_uuid description: '' example: 23 required: true schema: type: integer '/api/v1/import-sets/{importSet_uuid}/download': get: summary: Download operationId: download description: 'Download a single import set.' parameters: [] responses: { } tags: - ImportSet parameters: - in: path name: importSet_uuid description: '' example: 23 required: true schema: type: integer /api/v1/form-import-sets: get: summary: 'List Forms' operationId: listForms description: 'Shows the list of import set with pagination.' parameters: [] responses: { } tags: - ImportSet post: summary: 'Apply Import Set to Company' operationId: applyImportSetToCompany description: 'Store a newly created import set.' parameters: [] responses: { } tags: - ImportSet requestBody: required: true content: application/json: schema: type: object properties: tags: type: array description: 'The array of tags to be associated in an import set. Example : ["Pest Control", "Arizona"]' example: - blanditiis items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: et override: type: boolean description: 'Determine if the import set will replace the current ones with matchinig names. Example : false' example: true admin_only: type: boolean description: 'Determine if the import set is only accessible by admin. Example : true' example: false required: - tags - import_files - override - admin_only parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 12 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 5 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: hic - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: qui - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Quality Assurance"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: expedita '/api/v1/companies/{company_uuid}/forms': get: summary: List operationId: list description: 'Shows the list of form with pagination.' parameters: [] responses: { } tags: - Form post: summary: Store operationId: store description: 'Store a newly created form.' parameters: [] responses: { } tags: - Form requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the form. Example : "My form"' example: aut assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: provident form_fields: type: array description: 'The list of form field data.' example: - assumenda items: type: string required: - name - assignment parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 4 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: placeat - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: velit - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : "Quality Assurance"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: corporis '/api/v1/companies/{company_uuid}/form-types': get: summary: 'Get form types' operationId: getFormTypes description: '' parameters: [] responses: { } tags: - Form parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/forms/{form_uuid}': get: summary: Show operationId: show description: 'Show a single form.' parameters: [] responses: { } tags: - Form put: summary: Update operationId: update description: 'Update a form.' parameters: [] responses: { } tags: - Form requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the form. Example : "My Edited Form"' example: placeat assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: est form_fields: type: array description: 'The list of form field data.' example: - deserunt items: type: string required: - name - assignment post: summary: Update operationId: update description: 'Update a form.' parameters: [] responses: { } tags: - Form requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the form. Example : "My Edited Form"' example: dolorum assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: natus form_fields: type: array description: 'The list of form field data.' example: - velit items: type: string required: - name - assignment patch: summary: Patch operationId: patch description: 'Patch a company form.' parameters: [] responses: { } tags: - Form requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the form. Example : "My Patched Form"' example: error assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: at form_fields: type: array description: 'The list of form field data.' example: - voluptate items: type: string delete: summary: Delete operationId: delete description: 'Delete a form.' parameters: [] responses: { } tags: - Form parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: form_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/companies/{company_uuid}/forms/{form_uuid}/duplicate': post: summary: Duplicate operationId: duplicate description: 'Duplicate form' parameters: [] responses: { } tags: - Form parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: form_uuid description: '' example: 2 required: true schema: type: integer '/api/v1/companies/{company_uuid}/description-sets': get: summary: List operationId: list description: 'Shows the list of description set with pagination.' parameters: [] responses: { } tags: - 'Description Set' post: summary: Store operationId: store description: 'Store a newly created description set.' parameters: [] responses: { } tags: - 'Description Set' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the description set. Example : "Termite"' example: consequatur options: type: array description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]' example: - quasi items: type: string required: - name - options parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 6 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: commodi - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: accusantium - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: amet - in: path name: exclude description: "Optional parameter. array An array of UUID to exclude from the results. Example : ['3245d630-24fd-11ec-accd-e397aec85c7f']" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: ratione '/api/v1/companies/{company_uuid}/description-sets/{descriptionSet_uuid}': get: summary: Show operationId: show description: 'Show a single description set.' parameters: [] responses: { } tags: - 'Description Set' put: summary: Update operationId: update description: 'Update a description set.' parameters: [] responses: { } tags: - 'Description Set' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the description set. Example : "Termite"' example: voluptatem options: type: array description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]' example: - doloribus items: type: string required: - name - options patch: summary: Patch operationId: patch description: 'Patch a company description set.' parameters: [] responses: { } tags: - 'Description Set' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the description set. Example : "Termite"' example: molestiae options: type: array description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]' example: - assumenda items: type: string delete: summary: Delete operationId: delete description: 'Delete a description set.' parameters: [] responses: { } tags: - 'Description Set' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: descriptionSet_uuid description: '' example: 1 required: true schema: type: integer /api/v1: get: summary: Index operationId: index description: '' parameters: [] responses: { } tags: - Home '/api/v1/companies/{company_uuid}/referral-sources': get: summary: List operationId: list description: 'Shows the list of referral sources.' parameters: [] responses: { } tags: - 'Referral Source' post: summary: Store operationId: store description: 'Store a newly created referral source.' parameters: [] responses: { } tags: - 'Referral Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the referral source. Example : Referral Source 1' example: perspiciatis description: type: string description: 'The attributes of the referral source.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' integration_source_id: type: string description: 'optional The image source id of the referral source.' example: '1234263' required: - name - description parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 2 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 8 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: reprehenderit - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: voluptate - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: mollitia '/api/v1/companies/{company_uuid}/referral-sources/{referralSource_uuid}': get: summary: Show operationId: show description: 'Show a single referral source.' parameters: [] responses: { } tags: - 'Referral Source' put: summary: Update operationId: update description: 'Update a referral source.' parameters: [] responses: { } tags: - 'Referral Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the referral source. Example : Referral Source 1' example: explicabo description: type: string description: 'The attributes of the referral source.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' integration_source_id: type: string description: 'optional The image source id of the referral source.' example: '1234263' required: - name - description patch: summary: Patch operationId: patch description: 'Patch a company referral source.' parameters: [] responses: { } tags: - 'Referral Source' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the referral source. Example : Referral Source 1' example: qui description: type: string description: 'The attributes of the referral source.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' integration_source_id: type: string description: 'optional The image source id of the referral source.' example: '1234263' required: - name - description delete: summary: Delete operationId: delete description: 'Delete a referral source.' parameters: [] responses: { } tags: - 'Referral Source' parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: referralSource_uuid description: '' example: 1 required: true schema: type: integer /api/v1/solutions: get: summary: List operationId: list description: 'Shows the list of solutions.' parameters: [] responses: { } tags: - Solution post: summary: Store operationId: store description: 'Store a new solution.' parameters: [] responses: { } tags: - Solution requestBody: required: true content: application/json: schema: type: object properties: solution_category_uuid: type: uuid description: 'The solution category of the solution. Example : "3c787d66-2a4f-3f1d-9591-c330be0abe82"' example: 87135365-a27b-3c7a-95af-e6b3d16759b0 name: type: string description: 'The name of the solution. Example : Solution 1' example: repellendus slug: type: string description: 'The slug of the solution category.' example: solution-1 description: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' video_url: type: string description: 'The video url of the solution.' example: '"https::somevideo.com/thevideoforpestroutes"' required: - solution_category_uuid - name parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 17 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: optio - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sit - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nesciunt - in: path name: filter_by_solution_category_uuids description: 'Optional parameter. array To filter the list of solutions by solution category. Example : ["3c787d66-2a4f-3f1d-9591-c330be0abe82"]' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: eveniet - in: path name: filter_by_status_uuid description: 'Optional parameter. To filter the list the status. Example : "3c787d66-2a4f-3f1d-9591-c330be0abe82"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 49781905-d97a-31e6-8e23-44f7813f6c02 '/api/v1/solutions/{solution_uuid}': get: summary: Show operationId: show description: 'Show a single solution.' parameters: [] responses: { } tags: - Solution put: summary: Update operationId: update description: 'Update a solution.' parameters: [] responses: { } tags: - Solution requestBody: required: true content: application/json: schema: type: object properties: solution_category_uuid: type: uuid description: 'The solution category of the solution. Example : "3c787d66-2a4f-3f1d-9591-c330be0abe82"' example: 5d262da8-8476-3b63-b78e-3e199eb1026d name: type: string description: 'The name of the solution. Example : Solution 1' example: ut slug: type: string description: 'The slug of the solution category.' example: solution-1 description: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' video_url: type: string description: 'The video url of the solution.' example: '"https::somevideo.com/thevideoforpestroutes"' status_uuid: type: string description: 'The video url of the solution.' example: '"3c787d66-2a4f-3f1d-9591-c330be0abe82"' required: - solution_category_uuid - name patch: summary: Patch operationId: patch description: 'Patch a solution.' parameters: [] responses: { } tags: - Solution requestBody: required: false content: application/json: schema: type: object properties: solution_category_uuid: type: uuid description: 'The solution category of the solution. Example : "3c787d66-2a4f-3f1d-9591-c330be0abe82"' example: dc2a99ed-7285-3ab2-8a02-38d70899338f name: type: string description: 'The name of the solution. Example : Solution 1' example: magnam slug: type: string description: 'The slug of the solution category.' example: solution-1 description: type: string description: 'The attributes of the solution.' example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."' video_url: type: string description: 'The video url of the solution.' example: '"https::somevideo.com/thevideoforpestroutes"' status_uuid: type: string description: 'The video url of the solution.' example: '"3c787d66-2a4f-3f1d-9591-c330be0abe82"' delete: summary: Delete operationId: delete description: 'Delete a solution.' parameters: [] responses: { } tags: - Solution parameters: - in: path name: solution_uuid description: '' example: 1 required: true schema: type: integer /api/v1/solutions/upload: post: summary: 'Store Image' operationId: storeImage description: 'Upload an image to solution' parameters: [] responses: { } tags: - Solution requestBody: required: true content: multipart/form-data: schema: type: object properties: fileUpload: type: string format: binary description: 'The file to be uploaded.' required: - fileUpload '/api/v1/solutions/{solution_uuid}/reset': put: summary: Reset operationId: reset description: "Reset a solution's user progress." parameters: [] responses: { } tags: - Solution parameters: - in: path name: solution_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/solutions/{solution_uuid}/user-progress': put: summary: 'Update user progress' operationId: updateUserProgress description: 'Update user progress.' parameters: [] responses: { } tags: - Solution requestBody: required: false content: application/json: schema: type: object properties: is_completed: type: boolean description: 'The solution category of the solution. Example : false' example: false step: type: object description: 'The current step the use is on. Example : 2' example: [] properties: { } parameters: - in: path name: solution_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/solutions/{solutionCategory_uuid}/sort': patch: summary: 'Patch Index' operationId: patchIndex description: 'Performs specific updates for solutions' parameters: [] responses: { } tags: - Solution parameters: - in: path name: solutionCategory_uuid description: '' example: 1 required: true schema: type: integer - in: path name: solutions_ranking_list description: 'Optional parameter. string[] A dictionary of uuids with uuid as key and rank as the value. Example : {"69e56cdf-cea8-4356-b35d-58d610aba886" : 1, "9c578b77-916a-4620-a246-fa951f422912" : 2}' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: aut /api/v1/customers: get: summary: List operationId: list description: 'Shows the list of company customers that the user has access to view.' parameters: - in: query name: page description: 'optional The page number.' example: 1 required: false schema: type: integer description: 'optional The page number.' example: 1 responses: { } tags: - Customer requestBody: required: false content: application/json: schema: type: object properties: page_size: type: integer description: 'optional The number of records you want per page.' example: 15 sort_by: type: string description: 'optional The column name.' example: display_name sort_order: type: string description: 'optional The order in which you want your records.' example: asc search: type: string description: 'optional The general search, it will find matching string.' example: John filter_by_company_location_uuid: type: string description: 'uuid optional Filter results by company location uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f filter_by_statuses_uuid: type: string description: 'uuid optional Filter results by company location uuid.' example: 3245d630-24fd-11ec-accd-e397aec85c7f is_with_trashed: type: boolean description: 'Whether or not to include trashed customer, addresses and contacts.' example: true post: summary: Store operationId: store description: 'Create a new customer along with their primary contact and address' parameters: [] responses: { } tags: - Customer requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: uuid description: 'The company location UUID.' example: 3245d630-24fd-11ec-accd-e397aec85c7f account_name: type: string description: 'The account name.' example: 'Smarter Launch LLC' customer_contact: type: array description: 'The customer contacts' example: - commodi items: type: string customer_address: type: array description: 'The contact addresses' example: - quidem items: type: string required: - company_location_uuid - account_name - customer_contact - customer_address '/api/v1/customers/{customer_uuid}': get: summary: Show operationId: show description: 'This endpoint returns detail of a certain customer.' parameters: [] responses: { } tags: - Customer put: summary: Update operationId: update description: 'Update individual customer account name and the location they are associated with.' parameters: [] responses: { } tags: - Customer requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: uuid description: 'The UUID of the company location to associate the customer with.' example: 3245d634-24fd-11ec-accd-e397aec85c7f account_name: type: string description: 'The account name.' example: 'Smarter Launch LLC' referral_source_uuid: type: string description: '' example: null include_fields: type: string description: '' example: null required: - company_location_uuid - account_name patch: summary: Patch operationId: patch description: 'Patch individual customer account name and the location they are associated with.' parameters: [] responses: { } tags: - Customer requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: uuid description: 'The UUID of the company location to associate the customer with.' example: 3245d634-24fd-11ec-accd-e397aec85c7f account_name: type: string description: 'The account name.' example: 'Smarter Launch LLC' required: - company_location_uuid - account_name delete: summary: Delete operationId: delete description: 'This end point allows user the delete the customer.' parameters: [] responses: { } tags: - Customer requestBody: required: true content: application/json: schema: type: object properties: uuid: type: string description: 'The uuid of the customer.' example: 3245d630-24fd-11ec-accd-e397aec85c7f required: - uuid parameters: - in: path name: customer_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/customers/{customer_uuid}/with-contact-address': put: summary: 'Update with contact and address' operationId: updateWithContactAndAddress description: 'This is to update those partial customer data' parameters: [] responses: { } tags: - Customer requestBody: required: true content: application/json: schema: type: object properties: company_location_uuid: type: uuid description: 'The company location UUID.' example: 3245d630-24fd-11ec-accd-e397aec85c7f account_name: type: string description: 'The account name.' example: 'Smarter Launch LLC' customer_contact: type: array description: 'The customer contacts' example: - maxime items: type: string customer_address: type: array description: 'The contact addresses' example: - laboriosam items: type: string required: - company_location_uuid - account_name - customer_contact - customer_address parameters: - in: path name: customer_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/customers/{customer_uuid}/sync': patch: summary: Sync operationId: sync description: 'This endpoint allows user to perform manual sync to a customer' parameters: [] responses: { } tags: - Customer parameters: - in: path name: customer_uuid description: '' example: 1 required: true schema: type: integer /api/v1/industries: get: summary: 'Fetch all available industry' operationId: fetchAllAvailableIndustry description: '' parameters: [] responses: { } tags: - Customer /api/v1/categories: get: summary: List operationId: list description: 'Shows the list of Categories with pagination.' parameters: [] responses: { } tags: - Category post: summary: Create operationId: create description: 'Store a newly created Category.' parameters: [] responses: { } tags: - Category requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the category.' example: 'Small Pests' description: type: string description: 'The description of the category.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' category_group: type: string description: "The category_group of the category. ['SERVICE_PLAN']." example: SERVICE_PLAN required: - name - category_group parameters: - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 5 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 7 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: incidunt - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: accusamus - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: nostrum - in: path name: category_group description: 'Optional parameter. The category group to filter by. Example : SERVICE_PLAN' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: sint '/api/v1/categories/{category_uuid}': get: summary: Get operationId: get description: 'Display the specified Category.' parameters: [] responses: { } tags: - Category put: summary: Update operationId: update description: 'Modify the specified Category.' parameters: [] responses: { } tags: - Category requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the category.' example: 'Small Pests' description: type: string description: 'The description of the category.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' category_group: type: string description: '' example: SERVICE_PLAN enum: - SERVICE_PLAN - DRAWING_SYMBOL required: - name patch: summary: Patch operationId: patch description: 'Perform patches for the specified Category.' parameters: [] responses: { } tags: - Category requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the category.' example: 'Small Pests' description: type: string description: 'The description of the category.' example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit' category_group: type: string description: '' example: DRAWING_SYMBOL enum: - SERVICE_PLAN - DRAWING_SYMBOL delete: summary: Delete operationId: delete description: 'Remove the specified Category.' parameters: [] responses: { } tags: - Category parameters: - in: path name: category_uuid description: '' example: 1 required: true schema: type: integer '/api/v1/companies/{company_uuid}/schedules': get: summary: List operationId: list description: 'Shows the list of schedule with pagination.' parameters: [] responses: { } tags: - Schedule post: summary: Store operationId: store description: 'Store a newly created schedule.' parameters: [] responses: { } tags: - Schedule requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the schedule. Example : "My Schedule"' example: non description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Nihil ut recusandae fuga nihil repellendus voluptatem.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: est units: type: integer description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5' example: 14 term: type: string description: 'The terms of the schedule (week/month/year). Example : week' example: et enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - vitae items: type: string visits: type: integer description: 'The number of visits of the schedule. Example : 52' example: 13 required: - name - type - units - term - enabled_service_months parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: page description: 'Optional parameter. The page number. Example : 1' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 3 - in: path name: page_size description: 'Optional parameter. The number of record you want per page. Example : 5' required: true schema: type: integer examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: 1 - in: path name: sort_by description: 'Optional parameter. The column name. Example : name' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: fugit - in: path name: sort_order description: 'Optional parameter. The order in which you want your records. Example : asc' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: labore - in: path name: search description: 'Optional parameter. The general search, it will find matching string. Example : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: unde - in: path name: type description: "Optional parameter. in:'service','billing' The filter by type. Example : service" required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: totam '/api/v1/companies/{company_uuid}/schedules/{schedule_uuid}': get: summary: Show operationId: show description: 'Show a single schedule.' parameters: [] responses: { } tags: - Schedule put: summary: Update operationId: update description: 'Update a schedule.' parameters: [] responses: { } tags: - Schedule requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the schedule. Example : "My Schedule"' example: dolorem description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Ipsum minus dolor et.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: eos units: type: integer description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5' example: 4 term: type: string description: 'The terms of the schedule (week/month/year). Example : week' example: aut enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - blanditiis items: type: string visits: type: integer description: 'The number of visits of the schedule. Example : 52' example: 14 required: - name - type - units - term - enabled_service_months patch: summary: Patch operationId: patch description: 'Patch a company schedule.' parameters: [] responses: { } tags: - Schedule requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the schedule. Example : "My Schedule"' example: dolore description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Et molestiae aut officiis et dolore amet aut.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: provident units: type: integer description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5' example: 6 term: type: string description: 'The terms of the schedule (week/month/year). Example : week' example: at enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - quod items: type: string visits: type: integer description: 'The number of visits of the schedule. Example : 52' example: 8 required: - name - type - units - term - enabled_service_months delete: summary: Delete operationId: delete description: 'Delete a schedule.' parameters: [] responses: { } tags: - Schedule parameters: - in: path name: company_uuid description: '' example: 1 required: true schema: type: integer - in: path name: schedule_uuid description: '' example: 2 required: true schema: type: integer tags: - name: 'Service Plan' description: "\nAPI for Service Plans" - name: 'Decline Reason' description: "\nAPI for Decline Reason" - name: Automation description: "\nAPI for Automation" - name: Heartbeat description: "\nAPI for Heartbeat" - name: Role description: "\nAPI for role details" - name: Review description: "\nAPI for Review" - name: 'Form Field' description: "\nAPI for Form field" - name: 'App Data' description: "\nAPI for app data such as: countries, states, roles, statuses, etc." - name: 'Customer Contacts' description: "\nAPI for customer contacts" - name: 'Service Plan Custom Field' description: "\nAPI for Service Plan Custom Field" - name: 'Media Tag' description: "\nAPI for Media Tag" - name: 'Property Locations' description: "\nAPI for Property Locations" - name: State description: "\nAPI for state details" - name: 'Company Tax' description: "\nAPI for Company Tax" - name: 'Company Location' description: "\nAPI for company locations" - name: 'User Authentication' description: "\nAPI for user authentication" - name: 'Company Integration' description: "\nAPI for Company Integration" - name: 'Company Symbol' description: "\nAPI for company symbol details" - name: 'Support Request' description: "\nAPI for Support Request" - name: 'Pest Treated' description: '' - name: 'Media Source' description: "\nAPI for Media Source" - name: 'Proposal Templates' description: '' - name: 'Media Item' description: "\nAPI for Media Item" - name: 'Company Product' description: "\nAPI for company product details" - name: Tag description: "\nAPI for Tag" - name: Permission description: "\nAPI for permission details" - name: 'Company File' description: "\nAPI for Company File" - name: Country description: "\nAPI for country details" - name: 'Solution Category' description: "\nAPI for Solution Category" - name: 'Solution Feedback' description: "\nAPI for Solution Feedback" - name: 'Company Users' description: "\nAPI for company details" - name: 'Company Field Group' description: "\nAPI for Company field group details" - name: 'Other Endpoints' description: '' - name: User description: "\nAPI for user details" - name: 'Company Location Custom Settings' description: "\nAPI for company location custom settings" - name: 'Import Type' description: "\nAPI for Import Type" - name: Proposal description: "\nAPI for Proposal" - name: 'Service Agreement' description: "\nAPI for service agreement details" - name: Company description: "\nAPI for company details" - name: 'Customer Address' description: "\nAPI for customer address" - name: 'Service Plan Pricing Group' description: "\nAPI for Service Plan Pricing Group" - name: Report description: "\nAPI for report related data" - name: ImportSet description: "\nAPI for ImportSet" - name: Form description: "\nAPI for Form" - name: 'Description Set' description: "\nAPI for Description Set" - name: Home description: '' - name: 'Referral Source' description: "\nAPI for Referral Source" - name: Solution description: "\nAPI for Solution" - name: Customer description: "\nAPI for customers" - name: Category description: "\nAPI for Category" - name: Schedule description: "\nAPI for Schedule" components: securitySchemes: default: type: http scheme: bearer description: 'Our API is currently not available for external access outside of the Smarter Launch application.' security: - default: []