openapi: 3.0.3 info: title: 'Smarter Launch' description: 'API documentation for developers' version: 1.0.0 servers: - url: 'https://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: iusto 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: 43150524.247638 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: 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: 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: impedit - 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: laboriosam - 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: ullam - 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: 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 default_contract_term: type: string description: '' example: null default_contract_term_units: type: number description: '' example: 9393582.1909837 save_as: type: string description: '' example: SERVICE_PLAN_DRAFT 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: repudiandae 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: 1457120.2343 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: earum 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: 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: 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: 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: rem - 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: blanditiis '/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: et 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: ut 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: - cumque 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: - iure 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: - molestiae 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: 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: sint - 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: aut - 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: praesentium '/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: - odio 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: - eum 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: - velit 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: - qui 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: - aliquid 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: - consequatur 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: unde message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: sint rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: consequatur 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://wiza.com/possimus-aut-blanditiis-non-ea-molestiae' position: type: integer description: 'The the position of the review. Example : 2' example: 16 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: 1e1d3835-dddb-3e44-933a-2e15dd7d1f01 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: 8 - 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: 19 - 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: beatae - 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: qui - 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: dicta '/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: dolor message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: aliquam rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: ullam 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: 'https://www.smith.com/fugiat-aut-aperiam-quam-non-consequatur-enim' position: type: integer description: 'The the position of the review. Example : 2' example: 15 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: df93059b-7246-31d3-9e95-2c9d4acb2b4a 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: facilis message: type: string description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: delectus rate: type: string description: 'The rate of the review ranging from 0-5. Example : 5' example: omnis external_photo_url: type: string description: 'An external url of an image as review/photo.' example: 'http://www.waelchi.net/nisi-fuga-ea-neque-est-eum-itaque.html' position: type: integer description: 'The the position of the review. Example : 2' example: 7 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: a05a7311-6246-35ad-9cd6-f30aec4ee8ba 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: fuga input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: rem default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: fugiat 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: natus help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: omnis position: type: integer description: 'The position of the form field. Example : 1' example: 2 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: 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: 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: minus - 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 : "Quality Assurance"' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: a '/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: delectus default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: consequatur 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: false 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: ea help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: voluptatibus position: type: integer description: 'The position of the form field. Example : 1' example: 7 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: laboriosam input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: et default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: ut 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: facilis help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: minus position: type: integer description: 'The position of the form field. Example : 1' example: 7 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: quis input_type: type: string description: 'The label of the form field. Example : "MULTI_SELECT"' example: provident default_value: type: string description: 'The label of the form field. Example : "[1,2,3,4,5]"' example: repudiandae 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: aliquam help_guide: type: string description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."' example: nulla position: type: integer description: 'The position of the form field. Example : 1' example: 10 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: f8f66d38-a572-3320-a0be-a645eb2c502c 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: plnlsrgpkzbbnnualwtek items: type: string save_service_plan_as: type: string description: '' example: SERVICE_PLAN_ACTIVE 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: 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: 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: facere - 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: veritatis - 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 '/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: euywcuvxmuwzcm items: type: string save_service_plan_as: type: string description: '' example: SERVICE_PLAN_ARCHIVED 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: bd38f004-e0f7-3e21-8b92-e15ef27a5764 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: non 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: 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: accusamus - 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: sunt '/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: tenetur 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: dolores 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: et 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: 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: necessitatibus - 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 : home' required: true schema: type: string examples: omitted: summary: 'When the value is omitted' value: '' present: summary: 'When the value is present' value: odio '/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: itaque 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: veritatis 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: 97c6f8e1-ee6b-339d-b31d-e68bb98af929 required: true schema: type: string - in: path name: countryStateUuid description: '' example: c3dd87b1-b411-35c9-9f18-e977c51e386c 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: 39bd139a-5331-3bd5-8815-a6f8a81fd14d country_state_uuids: type: array description: 'An array of country state UUID. Example : ["815d3d9c-f371-3781-8456-7e6954b5b0f5", "815d3d9c-f371-3781-8456-7e6954b5b0f2"]' example: - ducimus items: type: string name: type: string description: 'The name of the tax. Example : Pest Route Initial Proposal' example: qui 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: 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: autem - 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: dolor - 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: quis - 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: 8d3a6347-06b8-3825-9cb2-8541e9fad9f8 - 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: 3 - 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: odit '/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: c630a285-ffa0-39d1-b724-c29f596b9004 country_state_uuids: type: array description: 'The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: - odit items: type: string name: type: string description: 'The name of the tax. Example : Pest Route Initial Proposal' example: maxime 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: cc9ffe00-6adf-3409-97b3-4be53f2901a0 country_state_uuids: type: array description: 'optional The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"' example: - voluptatum items: type: string name: type: string description: 'optional The name of the tax. Example : Pest Route Initial Proposal' example: rerum 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: bef337ae-8ef0-38d4-9c8b-dd839c6edacd 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: 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: 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: ex - 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: mollitia - 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: fugit - 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: aut '/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: 95bc95d5-7a77-313a-ad80-6300caa78835 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: 80ba3ce6-92f0-355b-a60a-75c9b345b130 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: est 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: af2d5a75-9fd4-32e9-b0d7-6926d94d64b6 required: true schema: type: string - in: path name: action description: '' example: officia 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: accusantium 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: - impedit items: type: string status_uuid: type: uuid description: 'The status UUID for company integration' example: b4741bee-41dd-30cb-81a7-24fc73e45093 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: - illo items: type: string status_uuid: type: uuid description: 'The status uuid for company integration' example: 8fd427cb-a67d-3ec5-b032-17fd74a76a20 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: a6dbebea-4122-3999-8dfb-2a14df0157d0 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: aliquam source: type: string description: 'The source of the symbol. Example : text' example: assumenda description: type: string description: 'optional The description of the symbol. Example : text' example: 'Quae in nisi est cumque esse fugit 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.' company_product_uuids: type: array description: 'of string optional The products of the symbol.' example: - et 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: 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: 20 - 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: nisi - 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: qui - 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: animi - 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: consequuntur '/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: temporibus source: type: string description: 'The source of the symbol. Example : text' example: ipsa description: type: string description: 'optional The description of the symbol. Example : text' example: 'Ex et aliquid iure consectetur sit dolore rem.' 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: - officiis 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: esse source: type: string description: 'The source of the symbol. Example : text' example: quaerat description: type: string description: 'optional The description of the symbol. Example : text' example: 'Pariatur ad natus repellendus.' 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: - est 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: minus source: type: string description: 'The source of the symbol. Example : text' example: beatae description: type: string description: 'optional The description of the symbol. Example : text' example: 'Magni dolor illo explicabo fugit.' 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: 025a623c-5100-39a3-b8dc-7f1dff8905f9 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: 2f041632-ba4b-3e04-bed5-a18a480b9cd0 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: perspiciatis 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: 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: 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: delectus - 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: quo - 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: magni '/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: ratione 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: maiores 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: adipisci 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: 1ab61b77-0e9e-38c4-b584-fc0cbf932af7 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: facere description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'Corrupti qui voluptates officiis recusandae unde nulla.' 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: 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: 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: 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: doloribus - 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 /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: illo 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: 'Aut delectus vero rem eius unde totam.' 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: rerum 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: 'Quae officia non molestiae magnam voluptatem officia ea.' 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: omnis 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: 'Consequatur illum sed eligendi eveniet aliquid autem molestias.' 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: dolorem 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: 'Ex qui quos ducimus officiis aliquid ut totam nostrum.' 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: assumenda 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: 'Quis rem ut aut quo illum dignissimos.' 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: 069ae6bd-4624-3b06-b4b0-1fe46040433e title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: et description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Omnis nesciunt aperiam laborum possimus recusandae fugit.' 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: 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: dolorem - 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: animi - 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: occaecati - 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: 3e720e58-893f-3e66-be38-60b94c308632 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: 3869f89c-98a9-37ea-80e8-b94c8d6775b5 title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: esse description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Hic earum vitae deserunt alias ab.' 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: 199cf914-a748-316d-9254-db109bff51f6 title: type: string description: 'The name of the proposal template. Example : Proposal Template 1' example: qui description: type: string description: 'The name of the proposal template. Example : This is a sample description' example: 'Fuga quibusdam laborum voluptates consequatur.' 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: 07b89aaa-897e-3079-8eb7-990a27525e83 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: d4f3a483-04fa-3da8-886b-85a43218be3e companies_uuid: type: object description: '' example: null properties: { } company_location_uuid: type: string description: 'Must be a valid UUID.' example: 4a435a8e-3dc4-3439-84ae-f4c746707802 company_locations_uuid: type: object description: '' example: null properties: { } media_source_uuid: type: string description: 'Must be a valid UUID.' example: 7faa4095-2d02-3a1a-a1cd-fbaf09a644b0 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: atque description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'Tempore fugiat nobis neque consequuntur facilis voluptatum.' 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: 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: 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: aliquid - 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: minus - 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: sunt '/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: voluptatem 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: 'Neque aut sapiente sit et facilis fugiat aliquid.' 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: voluptatibus 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: 'Optio vel qui beatae quae.' 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: nisi 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: 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: 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: illo - 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: beatae '/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: aliquid 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: maiores 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: 5eb82217-1a3b-38bc-bba0-003675d93678 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: 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: 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: dignissimos - 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: blanditiis - 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: voluptas /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: dolore description: type: string description: 'The description of the file. Example : This is a sample description for uploaded file' example: 'Qui tempora libero nihil asperiores.' 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://www.armstrong.info/quisquam-itaque-consequatur-libero-nam-aliquam' 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: 3f00c643-e2af-368a-9ec4-4b3f6b80cf7d 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: 167c7935-3f0c-3eb0-af50-48230415c1c8 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: - solutions 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: maiores 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: 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: 20 - 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: asperiores - 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: rerum - 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: dolorum - 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: unde '/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: nostrum 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: ut 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: sit '/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: 6 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: 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: 20 - 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: possimus - 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: occaecati - 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: qui '/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: 6 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: 20 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: 010be21d-b388-3d49-adf9-faeb20d1b653 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: false 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: 67415a16-8586-397e-be28-803ec04e566b 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: sit assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: non 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: - autem 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: 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: 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: ea - 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: animi - 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 - 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: aut - 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: aperiam '/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: adipisci assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: cum 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: - in 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 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: enim assignment: type: enum description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER' example: corrupti 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: - quo 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: - qui 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: bfc379a9-a173-3c44-8cd9-f6ce559eb429 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://kreiger.com/quas-praesentium-vel-odit-tenetur-sit-est' 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: nam description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Aliquam commodi molestiae veniam rerum ut dolor.' 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: 8 - 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: quidem - 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: blanditiis - 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: reiciendis '/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: voluptas description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Et in itaque voluptas voluptas repellendus omnis quis.' line_item_values: type: string description: 'The data of the line item. Example : {"price": [100, 100]}' example: dolorem 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: eos description: type: string description: 'The description of the line item. Example : "Termite Pesticide"' example: 'Sint et et rerum soluta sint aliquid saepe.' line_item_values: type: string description: 'The data of the line item. Example : {"price": [100, 100]}' example: aperiam 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: beatae 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: praesentium 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: 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: 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: dolor - 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: sed - 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 '/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: sit 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: commodi 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: 16 - 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 : title' 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: provident - 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: eum - 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: non - 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: perspiciatis - 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: 79959947-5fcd-3a34-9c5e-3ed25c1b019a 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: 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: 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: dolorem - 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: est - 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: ab '/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: d121ebda-237d-30ac-8f3a-bc43a9a4db49 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: - nisi 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: 4769f11b-f469-3317-a95e-c01709277871 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: 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: 20 - 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: ut - 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: dolor - 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: et - 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: ad - 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: itaque '/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: 14d95ea7-9951-3c7a-8335-24cf4274aa3f 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: 'https://www.larson.com/recusandae-deserunt-sequi-sit-nihil-ut-error-iusto' proposal_pdf_url: type: string description: 'The pdf file url.' example: 'https://schamberger.biz/incidunt-voluptates-sunt-assumenda-eos-esse-consequatur-aut-laudantium.html' auth_code: type: string description: '' example: perspiciatis 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://greenholt.info/necessitatibus-quos-accusantium-sit' proposal_pdf_url: type: string description: 'The pdf file url.' example: 'http://www.terry.com/' 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: 8.4082 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: quia 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-08-22T05:21:23' date_range_end: type: string description: 'Must be a valid date. Must be a date after or equal to date_range_start.' example: '2074-11-02' timezone: type: string description: 'Must be a valid time zone, such as Africa/Accra.' example: Pacific/Midway 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: quas description: type: string description: 'The paragraph describing the proposal.' example: 'Magni corporis asperiores iste expedita dolor voluptas.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 89b6d3c2-516b-3870-bb06-ede00d4e805b customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 6319fd5f-9cd7-305b-8b22-15cf03b2f38d customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 84f21a2b-556a-3144-8c9b-3d1fb5b3099f status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: e5373569-19fd-3602-81dc-edb9223be674 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: - accusamus 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: ac989a20-77c9-3148-98d9-9084cc2a3c96 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: 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: 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: 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: sed - 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: 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: hic - 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: e62a7dfa-f77a-3739-ba1a-6e7c16c11b39 - 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: ex - 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: 8f367f90-a4f5-380d-8c08-21ccb8040efe - 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: 379dfec6-b3fe-325c-9239-79fb321200b4 - 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: sint - 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: 062ab6f1-0f43-3f7b-a25c-e3a02fe65c72 - 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: Asia/Famagusta - 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: culpa - 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: natus - 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: sequi /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: 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: 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: 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: incidunt - 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: a00ec17a-2c12-320b-8165-d97356411c42 - 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: natus - 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: caa697ee-1524-3334-a5d8-ee9e5b5f3f6a - 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: fdd87db8-dc53-30c6-b7f3-8150d5441548 - 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: ipsam - 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: 938bffec-9a72-37b8-8512-7379b7780605 /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: 0000e98c-2cce-3241-9b87-a31beafcfa60 customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: aa8057e3-ab04-3399-8bc5-7dd7cc691e1e customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 97e1e18a-18ee-3432-9158-8d24fd4048d6 status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 06ac70a1-1821-3d61-9610-fe2a5f0beb99 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: - ea 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: e6ffc934-dd4f-3c8b-b6e2-e6c28d7cb747 include_fields: type: object description: '' example: null properties: { } expire_at: type: string description: 'Must be a valid date.' example: '2025-08-22T05:21:23' 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: voluptas description: type: string description: 'The paragraph describing the proposal.' example: 'Est dignissimos ut similique ut totam vitae.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 38a6c5a3-7b77-3aaf-a29d-1fdfd2e13e3a customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 146d86bc-6fb2-31f6-b2ed-6d5610b29fcb customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 88a987ca-0c23-36f7-ad69-c0958b380690 status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 47fc4406-c7ad-343a-b219-20d02dff9514 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: - explicabo 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: 6dca0c8b-0320-39b0-b6e1-4aa42befcf28 include_fields: type: object description: '' example: null properties: { } expire_at: type: string description: 'Must be a valid date.' example: '2025-08-22T05:21:23' 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: 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: 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: in - 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: occaecati - 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/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: 93aa0dea-35c7-3e46-bb48-1704d9859d14 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: 012a9911-c0a3-301a-a54c-abbbf9bb9d5f required: true schema: type: string - in: path name: action description: '' example: molestias 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: cupiditate description: type: string description: 'The paragraph describing the proposal.' example: 'Iste voluptates voluptas asperiores neque.' company_location_uuid: type: string description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: dce7ba32-8094-3bbd-a2ae-e36953770dde customer_uuid: type: string description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 2f649e40-4e61-3790-a59a-e49a9bb76cb8 customer_address_uuid: type: string description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 14b16ec2-b639-3b23-b1b8-ab14cb5e19e4 status_uuid: type: string description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\"" example: 033a0687-f0da-3f10-8d38-edd732950704 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: - nam 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: f2937ed6-9204-38bf-9445-4c040ad21a10 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: 923d214a-b7bc-3955-9fe3-b13c46e55da3 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: 'http://crooks.com/' 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: at content: type: string description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: sunt 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: 2 - 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: ad - 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: suscipit - 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: molestias - 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: soluta '/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: quia content: type: string description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor' example: enim 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: enim 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: in 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: in 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: qui 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: veritatis 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: 'https://auer.com/ut-quod-qui-minus-enim-incidunt.html' 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://www.heathcote.com/' google_my_business_listing: type: string description: 'Must be a valid URL.' example: 'http://www.hauck.com/' image_url: type: string description: '' example: 'http://kris.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!' 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: est 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: iure address2: type: string description: 'optional The address 2. Example : Address 2' example: quisquam city: type: string description: 'optional The city. Example : Queen Creek' example: est country_state_uuid: type: string description: 'optional The state uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' example: ba39f1ef-ee1c-3cd7-8257-fc5664560c76 country_uuid: type: string description: 'optional The country uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f' example: c3c00c8d-7029-3022-aafd-860b6d5a0186 postal_code: type: string description: 'optional The postal code. Example : 12345' example: nesciunt latitude: type: string description: 'optional The latitude. Example : 33.2486' example: aliquam longitude: type: string description: 'optional The longitude. Example : 111.6377' example: itaque is_primary: type: string description: 'optional The is_primary. Example : true' example: laudantium settings: type: string description: 'optional The settings. Example : {}' example: eos county: type: string description: 'optional The county. Example : Pinal County' example: tempora 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: 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: 20 - 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: ipsam - 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 : 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/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_ACTIVE 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: 89574fe7-9a97-34d7-a3f9-140b5a71187d 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: 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: 14 - 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: eveniet - 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: suscipit - 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: 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: placeat - 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: libero - 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: exercitationem - 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: qui - 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: 90bcedd3-af32-35e8-bdd9-ce131d69b834 - 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: veritatis - 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: 18331362-a192-3204-848f-323c32d9e2af '/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: - rerum items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: ex 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: 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: - rerum 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: 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: - voluptas items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: inventore 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: 9 - 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: dolores - 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: animi - 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: et - 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: dolores - 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: omnis '/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: rerum 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: false 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: false 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: - deserunt items: type: string import_files: type: files description: 'The set of json files containing import settings data.' example: voluptatum 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: 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: 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: inventore - 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: nam '/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: et assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: tempore form_fields: type: array description: 'The list of form field data.' example: - cum 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: 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: 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: ipsa - 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: earum - 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: neque '/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: id assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: voluptate form_fields: type: array description: 'The list of form field data.' example: - quia 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: voluptates 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: - et 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: omnis assignment: type: string description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"' example: ut form_fields: type: array description: 'The list of form field data.' example: - provident 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: soluta options: type: array description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]' example: - qui 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: 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: 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: maxime - 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: iste - 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: dignissimos '/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: dolores options: type: array description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]' example: - nobis 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: - ex 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: vero 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: 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: 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: odit - 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: id - 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: blanditiis '/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: est 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: velit 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: af5a9625-fde9-3191-baea-20c70cf8e382 name: type: string description: 'The name of the solution. Example : Solution 1' example: aliquam 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: 8 - 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: facere - 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: veritatis - 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: non - 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: b81bce14-2ee2-3a91-8e68-6ed0136cb53e '/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: a5d375fb-7797-3244-9039-90e00676c8fd name: type: string description: 'The name of the solution. Example : Solution 1' example: eos 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: 84b5f5e2-e788-36c0-9662-e954fe57e1a7 name: type: string description: 'The name of the solution. Example : Solution 1' example: nulla 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: occaecati /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: - et items: type: string customer_address: type: array description: 'The contact addresses' example: - blanditiis 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: - quaerat items: type: string customer_address: type: array description: 'The contact addresses' example: - ullam 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: 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: 19 - 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: aspernatur - 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: distinctio - 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: rerum '/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: DRAWING_SYMBOL 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: incidunt description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Dolorem quibusdam veritatis ut et tempore enim doloribus.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: exercitationem units: type: integer description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5' example: 16 term: type: string description: 'The terms of the schedule (week/month/year). Example : week' example: sed enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - a 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: 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: 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: 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: impedit - 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: necessitatibus - 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: quis '/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: asperiores description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Perferendis sit voluptas cum a quia et.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: voluptatem units: type: integer description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5' example: 7 term: type: string description: 'The terms of the schedule (week/month/year). Example : week' example: dolores enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - vel 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 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: sit description: type: string description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."' example: 'Fuga qui nihil ut quia magnam fuga.' type: type: string description: 'The type of the schedule (service, billing). Example : "service"' example: nihil 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: placeat enabled_service_months: type: array description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]' example: - soluta 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: []