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/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/companies/{company_uuid}/automations':
get:
summary: List
operationId: list
description: 'Shows the list of Automations with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 1
required: false
schema:
type: integer
description: 'optional The page number.'
example: 1
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 16
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 16
-
in: query
name: sort_by
description: 'optional The column name.'
example: iste
required: false
schema:
type: string
description: 'optional The column name.'
example: iste
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quo
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quo
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: dignissimos
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: dignissimos
responses: { }
tags:
- Automations
post:
summary: Create
operationId: create
description: 'Store a newly created Automation.'
parameters: []
responses: { }
tags:
- Automations
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:
- necessitatibus
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:
- adipisci
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:
- aut
items:
type: string
required:
- name
- type
parameters:
-
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: provident
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/automations/{automation_uuid}':
get:
summary: Get
operationId: get
description: 'Display the specified Automation.'
parameters: []
responses: { }
tags:
- Automations
put:
summary: Update
operationId: update
description: 'Modify the specified Automation.'
parameters: []
responses: { }
tags:
- Automations
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:
- iure
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:
- adipisci
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:
- enim
items:
type: string
required:
- name
- type
patch:
summary: Patch
operationId: patch
description: 'Perform patches for the specified Automation.'
parameters: []
responses: { }
tags:
- Automations
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:
- eaque
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:
- ut
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:
- officiis
items:
type: string
delete:
summary: Delete
operationId: delete
description: 'Remove the specified Automation.'
parameters: []
responses: { }
tags:
- Automations
parameters:
-
in: path
name: automation_uuid
description: 'Optional parameter. The UUID of the automation.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/categories:
get:
summary: List
operationId: list
description: 'Shows the list of Categories with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 8
required: false
schema:
type: integer
description: 'optional The page number.'
example: 8
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 18
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 18
-
in: query
name: sort_by
description: 'optional The column name.'
example: sit
required: false
schema:
type: string
description: 'optional The column name.'
example: sit
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: sequi
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sequi
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: corrupti
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: corrupti
-
in: query
name: category_group
description: 'optional The category group to filter by.'
example: SERVICE_PLAN
required: false
schema:
type: string
description: 'optional The category group to filter by.'
example: SERVICE_PLAN
responses: { }
tags:
- Categories
post:
summary: Create
operationId: create
description: 'Store a newly created Category.'
parameters: []
responses: { }
tags:
- Categories
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
'/api/v1/categories/{category_uuid}':
get:
summary: Get
operationId: get
description: 'Display the specified Category.'
parameters: []
responses: { }
tags:
- Categories
put:
summary: Update
operationId: update
description: 'Modify the specified Category.'
parameters: []
responses: { }
tags:
- Categories
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the category.'
example: 'Small Pests'
description:
type: string
description: 'The description of the category.'
example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit'
category_group:
type: string
description: ''
example: SERVICE_PLAN
enum:
- SERVICE_PLAN
- DRAWING_SYMBOL
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Perform patches for the specified Category.'
parameters: []
responses: { }
tags:
- Categories
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: SERVICE_PLAN
enum:
- SERVICE_PLAN
- DRAWING_SYMBOL
delete:
summary: Delete
operationId: delete
description: 'Remove the specified Category.'
parameters: []
responses: { }
tags:
- Categories
parameters:
-
in: path
name: category_uuid
description: 'Optional parameter. The UUID of the category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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://schultz.com/a-fuga-aliquam-eos-laudantium.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://mraz.com/voluptatem-sit-et-enim-quod'
google_my_business_listing:
type: string
description: 'Must be a valid URL.'
example: 'http://stanton.info/cupiditate-in-repellendus-debitis-id'
image_url:
type: string
description: ''
example: 'http://www.champlin.org/dolore-velit-numquam-quis-ut-ut-voluptate-ut.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!'
parameters:
-
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
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: uuid
description: 'The company uuid.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
required: true
schema:
type: string
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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: uuid
description: 'The company uuid.'
example: ecd24580-2749-11ec-9b86-1102c06e74b4
required: true
schema:
type: string
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: sint
required:
- settings_name
parameters:
-
in: path
name: uuid
description: 'The company uuid.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
required: true
schema:
type: string
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/update-limit/{entity}':
patch:
summary: ''
operationId: patchApiV1CompaniesCompany_uuidUpdateLimitEntity
description: ''
parameters: []
responses: { }
tags:
- Company
'/api/v1/companies/{company_uuid}/users':
get:
summary: List
operationId: list
description: 'Shows the list of company users that the user has access to view.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 1
required: false
schema:
type: integer
description: 'optional The page number.'
example: 1
responses: { }
tags:
- 'Company Users'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
include_fields:
type: array
description: ''
example: null
items:
type: string
ignore_cached:
type: boolean
description: ''
example: true
should_reset_cache:
type: boolean
description: 'optional Resets the cache'
example: false
page_size:
type: integer
description: 'optional The number of records you want per page.'
example: 15
sort_by:
type: string
description: 'optional The column name.'
example: display_name
sort_order:
type: string
description: 'optional The order in which you want your records.'
example: asc
search:
type: string
description: 'optional The general search, it will find matching string.'
example: John
filter_by_status_code:
type: string/array
description: 'optional Filter results by user status.'
example: 'STATUS_ACTIVE / ["STATUS_ACTIVE"."STATUS_DISABLED"]'
filter_by_role_code:
type: string
description: 'optional Filter results by user role.'
example: ROLE_COMPANY_MANAGER
filter_by_company_location_uuid:
type: string
description: 'uuid optional Filter results by company location uuid.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
post:
summary: 'Send invitation to user.'
operationId: sendInvitationToUser
description: 'This endpoint lets company owner to send invite to its sub-user.'
parameters: []
responses: { }
tags:
- 'Company Users'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
first_name:
type: string
description: 'The first name of the user.'
example: John
email:
type: string
description: 'The email of the user.'
example: hello@smarterlaunch.com
role_uuid:
type: string
description: 'uuid required The role uuid of the user.'
example: 45955590-4152-11ec-9c77-2181a8ee04db
company_locations:
type: object
description: ''
example: []
properties: { }
position:
type: string
description: 'Must not be greater than 250 characters.'
example: thwvyrgbit
phone:
type: string
description: 'Must be at least 10 characters. Must not be greater than 20 characters.'
example: tqzhovzvbsihflgkbn
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: companyUuid
description: 'The company uuid.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
required: true
schema:
type: string
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 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: 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 last name of the user.'
example: Smith
email:
type: string
description: 'optional 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
patch:
summary: Patch
operationId: patch
description: 'This endpoint lets the user patch company user.'
parameters: []
responses: { }
tags:
- 'Company Users'
requestBody:
required: false
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
role_uuid:
type: string
description: 'uuid optional The role uuid of the user.'
example: 45955590-4152-11ec-9c77-2181a8ee04db
company_locations:
type: array
description: 'array of uuid optional The company location.'
example:
- 3245d630-24fd-11ec-accd-e397aec85c7f
items:
type: object
status_uuid:
type: string
description: 'Must be a valid UUID.'
example: f2020af9-4b46-3c1a-ac79-e10d7bb6e0eb
email:
type: string
description: 'optional The email of the user.'
example: hello@smarterlaunch.com
delete:
summary: Delete
operationId: delete
description: 'This endpoint allows owner to delete a user.'
parameters: []
responses: { }
tags:
- 'Company Users'
/api/v1/countries:
get:
summary: 'List / Fetch'
operationId: listFetch
description: 'Shows the list of country or fetch single record using uuid.'
parameters: []
responses: { }
tags:
- Countries
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:
- Countries
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}/states':
get:
summary: 'Get country states using country uuid.'
operationId: getCountryStatesUsingCountryUuid
description: 'Shows the list of states using country uuid.'
parameters: []
responses: { }
tags:
- Countries
security: []
parameters:
-
in: path
name: country_uuid
description: 'The country uuid.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
required: true
schema:
type: string
'/api/v1/customers/{customer_uuid}/customer-addresses':
put:
summary: Update
operationId: update
description: ''
parameters: []
responses: { }
tags:
- 'Customer Addresses'
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. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/customers/{customer_uuid}/customer-addresses/{customerAddress_uuid}':
patch:
summary: Patch
operationId: patch
description: 'Patch Customer Address'
parameters: []
responses: { }
tags:
- 'Customer Addresses'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
address1:
type: string
description: 'optional The address 1. Example : Address 1'
example: est
address2:
type: string
description: 'optional The address 2. Example : Address 2'
example: assumenda
city:
type: string
description: 'optional The city. Example : Queen Creek'
example: pariatur
country_state_uuid:
type: string
description: 'optional The state uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f'
example: 7c38fce5-f667-3acc-9876-f0134c7a1587
country_uuid:
type: string
description: 'optional The country uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f'
example: 7eedfd3a-afbe-35e9-aa2d-8c0e83564100
postal_code:
type: string
description: 'optional The postal code. Example : 12345'
example: eum
latitude:
type: string
description: 'optional The latitude. Example : 33.2486'
example: eaque
longitude:
type: string
description: 'optional The longitude. Example : 111.6377'
example: quis
is_primary:
type: string
description: 'optional The is_primary. Example : true'
example: cumque
settings:
type: string
description: 'optional The settings. Example : {}'
example: ad
county:
type: string
description: 'optional The county. Example : Pinal County'
example: praesentium
integration_meta:
type: object
description: ''
example: null
properties: { }
parameters:
-
in: path
name: customer_uuid
description: 'Optional parameter. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: customerAddress_uuid
description: 'Optional parameter. The UUID of the customer_address.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Addresses'
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. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: customerAddress_uuid
description: 'Optional parameter. The UUID of the customer_address.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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:
- Customers
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:
- Customers
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:
- voluptatem
items:
type: string
customer_address:
type: array
description: 'The contact addresses'
example:
- et
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:
- Customers
put:
summary: Update
operationId: update
description: 'Update individual customer account name and the location they are associated with.'
parameters: []
responses: { }
tags:
- Customers
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:
- Customers
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:
- Customers
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: 'Optional parameter. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Customers
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:
- dolor
items:
type: string
customer_address:
type: array
description: 'The contact addresses'
example:
- ipsam
items:
type: string
required:
- company_location_uuid
- account_name
- customer_contact
- customer_address
parameters:
-
in: path
name: customer_uuid
description: 'Optional parameter. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Customers
parameters:
-
in: path
name: customer_uuid
description: 'Optional parameter. The UUID of the customer.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/decline-reasons':
get:
summary: List
operationId: list
description: 'Shows the list of decline reasons with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 6
required: false
schema:
type: integer
description: 'optional The page number.'
example: 6
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 5
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 5
-
in: query
name: sort_by
description: 'optional The column name.'
example: et
required: false
schema:
type: string
description: 'optional The column name.'
example: et
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: vitae
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: vitae
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: omnis
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: omnis
responses: { }
tags:
- 'Decline Reasons'
post:
summary: Store
operationId: store
description: 'Store a newly created decline reasons.'
parameters: []
responses: { }
tags:
- 'Decline Reasons'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
title:
type: string
description: 'The title of the decline reasons. Example : So Expensive'
example: doloribus
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/decline-reasons/{declineReason_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single decline reason.'
parameters: []
responses: { }
tags:
- 'Decline Reasons'
put:
summary: Update
operationId: update
description: 'Update a decline reason.'
parameters: []
responses: { }
tags:
- 'Decline Reasons'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
title:
type: string
description: 'The title of the decline reasons. Example : "So Expensive"'
example: aut
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 Reasons'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
title:
type: string
description: 'The title of the decline reasons. Example : So Expensive'
example: at
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 Reasons'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: declineReason_uuid
description: 'Optional parameter. The UUID of the decline_reason.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/description-sets':
get:
summary: List
operationId: list
description: 'Shows the list of description set with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 15
required: false
schema:
type: integer
description: 'optional The page number.'
example: 15
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 16
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 16
-
in: query
name: sort_by
description: 'optional The column name.'
example: illum
required: false
schema:
type: string
description: 'optional The column name.'
example: illum
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: culpa
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: culpa
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: voluptatibus
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: voluptatibus
responses: { }
tags:
- 'Description Sets'
post:
summary: Store
operationId: store
description: 'Store a newly created description set.'
parameters: []
responses: { }
tags:
- 'Description Sets'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the description set. Example : "Termite"'
example: reprehenderit
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- architecto
items:
type: string
required:
- name
- options
parameters:
-
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: at
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/description-sets/{descriptionSet_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single description set.'
parameters: []
responses: { }
tags:
- 'Description Sets'
put:
summary: Update
operationId: update
description: 'Update a description set.'
parameters: []
responses: { }
tags:
- 'Description Sets'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the description set. Example : "Termite"'
example: itaque
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- quisquam
items:
type: string
required:
- name
- options
patch:
summary: Patch
operationId: patch
description: 'Patch a company description set.'
parameters: []
responses: { }
tags:
- 'Description Sets'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the description set. Example : "Termite"'
example: eos
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- dolor
items:
type: string
delete:
summary: Delete
operationId: delete
description: 'Delete a description set.'
parameters: []
responses: { }
tags:
- 'Description Sets'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: descriptionSet_uuid
description: 'Optional parameter. The UUID of the description_set.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
-
in: query
name: page
description: 'optional The page number.'
example: 15
required: false
schema:
type: integer
description: 'optional The page number.'
example: 15
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 19
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 19
-
in: query
name: sort_by
description: 'optional The column name.'
example: doloribus
required: false
schema:
type: string
description: 'optional The column name.'
example: doloribus
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quo
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quo
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: adipisci
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: adipisci
responses: { }
tags:
- 'Field Groups'
post:
summary: Store
operationId: store
description: 'Store a newly created company custom field group.'
parameters: []
responses: { }
tags:
- 'Field Groups'
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: aut
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: et
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
required:
- name
parameters:
-
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: dignissimos
-
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: et
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'Field Groups'
put:
summary: Update
operationId: update
description: 'Update a company custom field group.'
parameters: []
responses: { }
tags:
- 'Field Groups'
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: excepturi
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: qui
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:
- quasi
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:
- distinctio
items:
type: string
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Patch a company custom field group.'
parameters: []
responses: { }
tags:
- 'Field Groups'
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: sapiente
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: qui
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:
- eveniet
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:
- cupiditate
items:
type: string
required:
- name
delete:
summary: Delete
operationId: delete
description: 'Delete a company custom field group.'
parameters: []
responses: { }
tags:
- 'Field Groups'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyCustomFieldGroup_uuid
description: 'Optional parameter. The UUID of the company_custom_field_group.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'File Upload'
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
'/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:
- 'File Upload'
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/file-upload-presigned-url:
post:
summary: "POST\nGet S3 Pre-signed Url"
operationId: pOSTGetS3PreSignedUrl
description: ''
parameters: []
responses: { }
tags:
- 'File Upload'
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/upload-from-url:
post:
summary: ''
operationId: postApiV1UploadFromUrl
description: ''
parameters: []
responses: { }
tags:
- 'File Upload'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
url:
type: string
description: 'Must be a valid URL.'
example: 'http://www.dare.com/ut-suscipit-saepe-est'
required:
- url
'/api/v1/companies/{company_uuid}/files':
post:
summary: Store
operationId: store
description: 'Upload a file into a company'
parameters: []
responses: { }
tags:
- Files
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the file. Example : MyFile.txt'
example: praesentium
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Officiis id molestiae adipisci sunt ut consequatur non.'
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:
- Files
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.oreilly.com/cum-occaecati-ut-laborum-dolorum-voluptatem'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/forms/{form_uuid}/fields':
get:
summary: List
operationId: list
description: 'Shows the list of form fields with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 3
required: false
schema:
type: integer
description: 'optional The page number.'
example: 3
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 4
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 4
-
in: query
name: sort_by
description: 'optional The column name.'
example: culpa
required: false
schema:
type: string
description: 'optional The column name.'
example: culpa
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: doloribus
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: doloribus
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: ut
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: ut
responses: { }
tags:
- 'Form Fields'
post:
summary: Store
operationId: store
description: 'Store a newly created formField.'
parameters: []
responses: { }
tags:
- 'Form Fields'
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: tempora
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: ut
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: a
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: asperiores
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: architecto
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 14
required:
- label
- input_type
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: form_uuid
description: 'Optional parameter. The UUID of the form.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Fields'
put:
summary: Update
operationId: update
description: 'Update a formfield.'
parameters: []
responses: { }
tags:
- 'Form Fields'
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: quae
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: aut
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: aspernatur
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: animi
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: et
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 15
required:
- label
- input_type
post:
summary: Update
operationId: update
description: 'Update a formfield.'
parameters: []
responses: { }
tags:
- 'Form Fields'
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: laborum
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: sit
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: sunt
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: molestias
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: magnam
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 10
required:
- label
- input_type
patch:
summary: Patch
operationId: patch
description: 'Patch a company form field.'
parameters: []
responses: { }
tags:
- 'Form Fields'
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: voluptatem
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: facere
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: architecto
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: true
conditional_value:
type: text
description: 'The label of the form field. Example : {"condition1":"condition"}'
example: eaque
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: id
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 12
delete:
summary: Delete
operationId: delete
description: 'Delete a form field.'
parameters: []
responses: { }
tags:
- 'Form Fields'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: form_uuid
description: 'Optional parameter. The UUID of the form.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: formField_uuid
description: 'Optional parameter. The UUID of the form_field.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/forms':
get:
summary: List
operationId: list
description: 'Shows the list of form with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 17
required: false
schema:
type: integer
description: 'optional The page number.'
example: 17
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 10
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 10
-
in: query
name: sort_by
description: 'optional The column name.'
example: voluptatem
required: false
schema:
type: string
description: 'optional The column name.'
example: voluptatem
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: iusto
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: iusto
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: eveniet
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: eveniet
responses: { }
tags:
- Forms
post:
summary: Store
operationId: store
description: 'Store a newly created form.'
parameters: []
responses: { }
tags:
- Forms
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: quaerat
form_fields:
type: array
description: 'The list of form field data.'
example:
- rem
items:
type: string
required:
- name
- assignment
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/form-types':
get:
summary: 'Get form types'
operationId: getFormTypes
description: ''
parameters: []
responses: { }
tags:
- Forms
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/forms/{form_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single form.'
parameters: []
responses: { }
tags:
- Forms
put:
summary: Update
operationId: update
description: 'Update a form.'
parameters: []
responses: { }
tags:
- Forms
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the form. Example : "My Edited Form"'
example: culpa
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: totam
form_fields:
type: array
description: 'The list of form field data.'
example:
- dolores
items:
type: string
required:
- name
- assignment
post:
summary: Update
operationId: update
description: 'Update a form.'
parameters: []
responses: { }
tags:
- Forms
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the form. Example : "My Edited Form"'
example: in
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: voluptas
form_fields:
type: array
description: 'The list of form field data.'
example:
- qui
items:
type: string
required:
- name
- assignment
patch:
summary: Patch
operationId: patch
description: 'Patch a company form.'
parameters: []
responses: { }
tags:
- Forms
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the form. Example : "My Patched Form"'
example: aut
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: ad
form_fields:
type: array
description: 'The list of form field data.'
example:
- odio
items:
type: string
delete:
summary: Delete
operationId: delete
description: 'Delete a form.'
parameters: []
responses: { }
tags:
- Forms
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: form_uuid
description: 'Optional parameter. The UUID of the form.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/forms/{form_uuid}/duplicate':
post:
summary: Duplicate
operationId: duplicate
description: 'Duplicate form'
parameters: []
responses: { }
tags:
- Forms
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: form_uuid
description: 'Optional parameter. The UUID of the form.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'Import Sets'
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:
- est
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: laudantium
override:
type: boolean
description: 'Determine if the import set will replace the current ones with matchinig names. Example : false'
example: true
admin_only:
type: boolean
description: 'Determine if the import set is only accessible by admin. Example : true'
example: true
required:
- tags
- import_files
- override
- admin_only
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'Import Sets'
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:
- in
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: sit
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/import-sets:
get:
summary: List
operationId: list
description: 'Shows the list of import set with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 11
required: false
schema:
type: integer
description: 'optional The page number.'
example: 11
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 2
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 2
-
in: query
name: sort_by
description: 'optional The column name.'
example: rerum
required: false
schema:
type: string
description: 'optional The column name.'
example: rerum
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: in
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: in
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: et
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: et
responses: { }
tags:
- 'Import Sets'
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:
- 'Import Sets'
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:
- quibusdam
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: dolore
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: 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: explicabo
-
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: officiis
'/api/v1/import-sets/{importSet_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single import set.'
parameters: []
responses: { }
tags:
- 'Import Sets'
put:
summary: Update
operationId: update
description: 'Update a import set.'
parameters: []
responses: { }
tags:
- 'Import Sets'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: qui
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: false
required:
- import_files
- admin_only
- is_selected
patch:
summary: 'Update the specified resource in storage.'
operationId: updateTheSpecifiedResourceInStorage
description: ''
parameters: []
responses: { }
tags:
- 'Import Sets'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
admin_only:
type: boolean
description: 'Determine if the import set is only accessible by admin. Example : true'
example: true
is_selected:
type: boolean
description: 'Determine if the import set will be automatically selected when popping the dialog. Example : true'
example: true
required:
- admin_only
- is_selected
delete:
summary: Delete
operationId: delete
description: 'Delete a import set.'
parameters: []
responses: { }
tags:
- 'Import Sets'
parameters:
-
in: path
name: importSet_uuid
description: 'Optional parameter. The UUID of the import_set.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/import-sets/{importSet_uuid}/download':
get:
summary: Download
operationId: download
description: 'Download a single import set.'
parameters: []
responses: { }
tags:
- 'Import Sets'
parameters:
-
in: path
name: importSet_uuid
description: 'Optional parameter. The UUID of the import_set.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/form-import-sets:
get:
summary: 'List Forms'
operationId: listForms
description: 'Shows the list of import set with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 9
required: false
schema:
type: integer
description: 'optional The page number.'
example: 9
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 20
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 20
-
in: query
name: sort_by
description: 'optional The column name.'
example: quia
required: false
schema:
type: string
description: 'optional The column name.'
example: quia
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: libero
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: libero
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: adipisci
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: adipisci
responses: { }
tags:
- 'Import Sets'
post:
summary: 'Apply Import Set to Company'
operationId: applyImportSetToCompany
description: 'Store a newly created import set.'
parameters: []
responses: { }
tags:
- 'Import Sets'
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:
- nam
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: eos
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
/api/v1/import-types:
get:
summary: List
operationId: list
description: 'Shows the list of tags with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 9
required: false
schema:
type: integer
description: 'optional The page number.'
example: 9
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 15
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 15
-
in: query
name: sort_by
description: 'optional The column name.'
example: aut
required: false
schema:
type: string
description: 'optional The column name.'
example: aut
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: dolores
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: dolores
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: iure
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: iure
responses: { }
tags:
- 'Import Types'
parameters:
-
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: excepturi
-
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: molestias
/api/v1/industries:
get:
summary: 'Fetch all available industry'
operationId: fetchAllAvailableIndustry
description: ''
parameters: []
responses: { }
tags:
- Industries
'/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:
- 'Integration Types'
parameters:
-
in: path
name: companyIntegration_uuid
description: 'Optional parameter. The UUID of the integration.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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:
- 'Integration Types'
'/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:
- Integrations
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyIntegration_uuid
description: 'Optional parameter. The UUID of the company_integration.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/integrations':
get:
summary: List
operationId: list
description: "Shows the list of integrations for a company\n\nNote: Integration logs are NOT included in list responses for performance reasons.\nUse the GET /logs endpoint to retrieve logs for a specific integration."
parameters: []
responses: { }
tags:
- Integrations
post:
summary: Store
operationId: store
description: 'Create a company integration with empty credential values'
parameters: []
responses: { }
tags:
- Integrations
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Integrations
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:
- Integrations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
credentials:
type: array
description: 'The credentials for the company integration'
example:
- voluptate
items:
type: string
status_uuid:
type: uuid
description: 'The status UUID for company integration'
example: 51580abe-e820-33a5-95ac-f455cefb9601
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:
- Integrations
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
credentials:
type: array
description: 'The credentials for the company integration'
example:
- accusantium
items:
type: string
status_uuid:
type: uuid
description: 'The status uuid for company integration'
example: 8f3b6e34-15ae-3fd9-8654-490c4d5a5e47
required:
- credentials
- status_uuid
delete:
summary: Delete
operationId: delete
description: 'This endpoint allows user to delete a Company Integration.'
parameters: []
responses: { }
tags:
- Integrations
parameters:
-
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
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyIntegration_uuid
description: 'Optional parameter. The UUID of the company_integration.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/line-items':
get:
summary: List
operationId: list
description: 'Shows the list of line items with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 6
required: false
schema:
type: integer
description: 'optional The page number.'
example: 6
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 16
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 16
-
in: query
name: sort_by
description: 'optional The column name.'
example: aperiam
required: false
schema:
type: string
description: 'optional The column name.'
example: aperiam
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: odio
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: odio
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: consequatur
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: consequatur
responses: { }
tags:
- 'Line Items'
post:
summary: Store
operationId: store
description: 'Store a new line item.'
parameters: []
responses: { }
tags:
- 'Line Items'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the line item. Example : "Termite Pesticide"'
example: corrupti
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Eos et et porro dolore magni molestiae.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: debitis
required:
- name
- description
- line_item_values
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/line-items/{lineItem_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single line item.'
parameters: []
responses: { }
tags:
- 'Line Items'
put:
summary: Update
operationId: update
description: 'Update a line item.'
parameters: []
responses: { }
tags:
- 'Line Items'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the line item. Example : "Termite Pesticide"'
example: deserunt
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Autem in maiores magni voluptas non.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: exercitationem
required:
- name
- line_item_values
patch:
summary: Patch
operationId: patch
description: 'Update a line item.'
parameters: []
responses: { }
tags:
- 'Line Items'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the line item. Example : "Termite Pesticide"'
example: odit
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Sunt reprehenderit impedit aut pariatur.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: consequatur
required:
- name
- line_item_values
delete:
summary: Delete
operationId: delete
description: 'Delete a line item.'
parameters: []
responses: { }
tags:
- 'Line Items'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: lineItem_uuid
description: 'Optional parameter. The UUID of the line item.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'Line Items'
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: quo
override:
type: boolean
description: 'Determine if the import set will replace the current ones with matching names.'
example: false
required:
- import_files
- override
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- '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:
- '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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- 'Location Custom Settings'
put:
summary: Update
operationId: update
description: 'Update a company location custom setting'
parameters: []
responses: { }
tags:
- '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:
- 'Location Custom Settings'
parameters:
-
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
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyLocationCustomSetting_uuid
description: 'Optional parameter. The UUID of the company_location_custom_setting.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/locations':
get:
summary: List
operationId: list
description: 'Shows the list of locations with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 7
required: false
schema:
type: integer
description: 'optional The page number.'
example: 7
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 4
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 4
-
in: query
name: sort_by
description: 'optional The column name.'
example: consequatur
required: false
schema:
type: string
description: 'optional The column name.'
example: consequatur
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: perspiciatis
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: perspiciatis
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: nulla
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: nulla
responses: { }
tags:
- Locations
post:
summary: Create
operationId: create
description: 'This endpoint lets user to create single record using uuid.'
parameters: []
responses: { }
tags:
- Locations
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: 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: neque
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Locations
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:
- Locations
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:
- Locations
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:
- Locations
parameters:
-
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
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyLocation_uuid
description: 'Optional parameter. The UUID of the company_location.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Locations
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: companyUuid
description: 'The uuid id of the company.'
example: 3245d630-24fd-11ec-accd-e397aec85c7f
required: true
schema:
type: string
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Locations
parameters:
-
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'
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyLocation_uuid
description: 'Optional parameter. The UUID of the company_location.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/media-items:
get:
summary: List
operationId: list
description: 'Shows the list of media items with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 5
required: false
schema:
type: integer
description: 'optional The page number.'
example: 5
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 14
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 14
-
in: query
name: sort_by
description: 'optional The column name.'
example: pariatur
required: false
schema:
type: string
description: 'optional The column name.'
example: pariatur
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: incidunt
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: incidunt
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: veritatis
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: veritatis
responses: { }
tags:
- 'Media Items'
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: e7fde065-9401-3d88-90d1-ad7a649fc4c4
companies_uuid:
type: object
description: ''
example: null
properties: { }
company_location_uuid:
type: string
description: 'Must be a valid UUID.'
example: 3da663ef-aa52-3764-aaf8-78ff064e361d
company_locations_uuid:
type: object
description: ''
example: null
properties: { }
media_source_uuid:
type: string
description: 'Must be a valid UUID.'
example: dab0f266-2363-3f77-ac24-921a25298399
include_global_files:
type: boolean
description: ''
example: true
post:
summary: Store
operationId: store
description: 'Upload a media item'
parameters: []
responses: { }
tags:
- 'Media Items'
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the file. Example : MyFile.txt'
example: expedita
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Qui dicta commodi facilis.'
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
'/api/v1/media-items/{mediaItem_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single media item'
parameters: []
responses: { }
tags:
- 'Media Items'
put:
summary: Update
operationId: update
description: 'Update a media item.'
parameters: []
responses: { }
tags:
- 'Media Items'
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: incidunt
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: 'Dolor aperiam magnam quo nulla placeat sed.'
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Patch a media item.'
parameters: []
responses: { }
tags:
- 'Media Items'
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: corrupti
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: 'Qui delectus animi corrupti et maiores pariatur facere.'
required:
- name
delete:
summary: Delete
operationId: delete
description: 'Delete a media item.'
parameters: []
responses: { }
tags:
- 'Media Items'
parameters:
-
in: path
name: mediaItem_uuid
description: 'Optional parameter. The UUID of the media_item.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/media-sources:
get:
summary: List
operationId: list
description: 'Shows the list of media source with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 10
required: false
schema:
type: integer
description: 'optional The page number.'
example: 10
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 18
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 18
-
in: query
name: sort_by
description: 'optional The column name.'
example: aut
required: false
schema:
type: string
description: 'optional The column name.'
example: aut
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: corrupti
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: corrupti
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: nesciunt
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: nesciunt
responses: { }
tags:
- 'Media Sources'
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 Sources'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the file. Example : MyFile.txt'
example: ipsam
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Et molestiae accusantium excepturi tempora harum minus harum maiores.'
/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 Sources'
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: minima
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: 'Vel enim a ea.'
required:
- name
'/api/v1/media-sources/{mediaSource_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single media source'
parameters: []
responses: { }
tags:
- 'Media Sources'
put:
summary: Update
operationId: update
description: 'Update a media source.'
parameters: []
responses: { }
tags:
- 'Media Sources'
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: nam
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: 'Ut quo et quidem architecto quas aut.'
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Patch a media source.'
parameters: []
responses: { }
tags:
- 'Media Sources'
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: tempora
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: 'Nesciunt magni quis et dolores quidem.'
required:
- name
delete:
summary: Delete
operationId: delete
description: 'Delete a media source.'
parameters: []
responses: { }
tags:
- 'Media Sources'
parameters:
-
in: path
name: mediaSource_uuid
description: 'Optional parameter. The UUID of the media_source.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Sources'
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: cumque
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: 'Distinctio laborum qui enim qui quidem nesciunt et.'
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 Sources'
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: maiores
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: 'Facere ut mollitia dolorem incidunt.'
required:
- name
parameters:
-
in: path
name: mediaSource_uuid
description: 'Optional parameter. The UUID of the media_source.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Sources'
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: 'Optional parameter. The UUID of the media_source.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/media-tags:
get:
summary: List
operationId: list
description: 'Shows the list of media tag with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 4
required: false
schema:
type: integer
description: 'optional The page number.'
example: 4
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 16
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 16
-
in: query
name: sort_by
description: 'optional The column name.'
example: quia
required: false
schema:
type: string
description: 'optional The column name.'
example: quia
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: autem
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: autem
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: est
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: est
responses: { }
tags:
- 'Media Tags'
post:
summary: Store
operationId: store
description: 'Upload a media tag'
parameters: []
responses: { }
tags:
- 'Media Tags'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the file. Example : Tag 1'
example: consequatur
'/api/v1/media-tags/{mediaTag_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single media tag'
parameters: []
responses: { }
tags:
- 'Media Tags'
put:
summary: Update
operationId: update
description: 'Update a media tag.'
parameters: []
responses: { }
tags:
- 'Media Tags'
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: vel
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Patch a media tag.'
parameters: []
responses: { }
tags:
- 'Media Tags'
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: distinctio
required:
- name
delete:
summary: Delete
operationId: delete
description: 'Delete a media tag.'
parameters: []
responses: { }
tags:
- 'Media Tags'
parameters:
-
in: path
name: mediaTag_uuid
description: 'Optional parameter. The UUID of the media_tag.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/permissions:
get:
summary: 'List / Fetch'
operationId: listFetch
description: 'Shows the list of permission or fetch single record using uuid.'
parameters: []
responses: { }
tags:
- Permissions
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:
- Permissions
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:
- Permissions
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:
- Permissions
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:
- Permissions
'/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: vero
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: 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: 4
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: tenetur
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: quia
-
in: path
name: search
description: 'Optional parameter. The general search, it will find matching string. Example : home'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: porro
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: nisi
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: dolores
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: maiores
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: pestTreated_uuid
description: 'Optional parameter. The UUID of the pest_treated.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/products':
get:
summary: List
operationId: list
description: 'Shows the list of company products with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 8
required: false
schema:
type: integer
description: 'optional The page number.'
example: 8
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 18
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 18
-
in: query
name: sort_by
description: 'optional The column name.'
example: cupiditate
required: false
schema:
type: string
description: 'optional The column name.'
example: cupiditate
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: vitae
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: vitae
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: aliquid
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: aliquid
responses: { }
tags:
- Products
post:
summary: Store
operationId: store
description: 'Store a newly created company product.'
parameters: []
responses: { }
tags:
- Products
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the product. Example : Product 1'
example: ut
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/products/{companyProduct_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single company product.'
parameters: []
responses: { }
tags:
- Products
put:
summary: Update
operationId: update
description: 'Update a company product.'
parameters: []
responses: { }
tags:
- Products
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the product. Example : Product 1'
example: omnis
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:
- Products
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'optional The name of the product. Example : Product 1'
example: ab
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:
- Products
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyProduct_uuid
description: 'Optional parameter. The UUID of the company_product.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/property-locations':
get:
summary: List
operationId: list
description: 'Shows the list of property locations with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 14
required: false
schema:
type: integer
description: 'optional The page number.'
example: 14
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 7
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 7
-
in: query
name: sort_by
description: 'optional The column name.'
example: est
required: false
schema:
type: string
description: 'optional The column name.'
example: est
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: officia
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: officia
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: blanditiis
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: blanditiis
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: debitis
required:
- name
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: doloribus
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: enim
delete:
summary: Delete
operationId: delete
description: 'Delete a property location.'
parameters: []
responses: { }
tags:
- 'Property Locations'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: propertyLocation_uuid
description: 'Optional parameter. The UUID of the property_location.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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: f6626bfb-a3bf-3580-8d2d-80b9b1995907
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: 'Quia cumque officia soluta non ratione.'
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: 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: 4
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: non
-
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: iure
-
in: path
name: search
description: 'Optional parameter. The general search, it will find matching string. Example : home'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: et
-
in: path
name: string
description: 'Optional parameter. The filter for proposal templates with company location in company_locations_uuid.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: '["725d1dcd-54ad-3a8b-a28e-830c43d8ed6c", "b033658c-4532-3dd7-9be7-64433580eda6"]'
'/api/v1/proposals/templates/{proposalTemplate_uuid}/duplicate':
post:
summary: Duplicate
operationId: duplicate
description: 'Duplicate a proposal template'
parameters: []
responses: { }
tags:
- 'Proposal Templates'
parameters:
-
in: path
name: proposalTemplate_uuid
description: 'Optional parameter. The UUID of the proposal_template.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 04d56a36-c673-3503-9397-baebc1582ab4
title:
type: string
description: 'The name of the proposal template. Example : Proposal Template 1'
example: saepe
description:
type: string
description: 'The name of the proposal template. Example : This is a sample description'
example: 'Omnis incidunt molestiae aut aut qui quia.'
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: 614fd3d8-9014-3749-b47b-bee17a1b26cc
title:
type: string
description: 'The name of the proposal template. Example : Proposal Template 1'
example: ipsum
description:
type: string
description: 'The name of the proposal template. Example : This is a sample description'
example: 'Voluptatem quaerat nam iure.'
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: 'Optional parameter. The UUID of the proposal_template.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/preview':
get:
summary: Get
operationId: get
description: 'Display the selected proposal.'
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
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
'/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/accept-sign':
post:
summary: 'Accept and Sign'
operationId: acceptAndSign
description: ''
parameters: []
responses: { }
tags:
- Proposals
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
accepted_confirmation_uuids:
type: object
description: ''
example: null
properties: { }
signature_photo_url:
type: string
description: 'The image url.'
example: 'http://monahan.com/impedit-iure-sint-quibusdam-nostrum'
proposal_pdf_url:
type: string
description: 'The pdf file url.'
example: 'http://kunze.info/non-ratione-hic-id-aliquam-aut-asperiores-sequi-soluta.html'
auth_code:
type: string
description: ''
example: qui
required:
- signature_photo_url
- proposal_pdf_url
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/replace-signature':
post:
summary: 'Replicate Signature'
operationId: replicateSignature
description: ''
parameters: []
responses: { }
tags:
- Proposals
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
signature_photo_url:
type: string
description: 'The image url.'
example: 'http://metz.com/et-atque-voluptatibus-et-esse-est'
proposal_pdf_url:
type: string
description: 'The pdf file url.'
example: 'http://www.tromp.net/'
required:
- signature_photo_url
- proposal_pdf_url
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
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: 1645.0
keyName:
type: string
description: ''
example: attached_documents_addendum
enum:
- attached_documents
- attached_documents_addendum
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/video-clicked':
post:
summary: 'Log Video Clicked'
operationId: logVideoClicked
description: ''
parameters: []
responses: { }
tags:
- Proposals
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
video_type:
type: "'service'"
description: "| 'screen_recording'"
example: aut
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/proposals/{proposal_uuid}/decline':
patch:
summary: Decline
operationId: decline
description: ''
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/proposals:
get:
summary: List
operationId: list
description: 'Shows the list of proposal with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 2
required: false
schema:
type: integer
description: 'optional The page number.'
example: 2
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 20
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 20
-
in: query
name: sort_by
description: 'optional The column name.'
example: in
required: false
schema:
type: string
description: 'optional The column name.'
example: in
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quasi
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quasi
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: sit
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: sit
responses: { }
tags:
- Proposals
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: '2026-01-14T05:03:58'
date_range_end:
type: string
description: 'Must be a valid date. Must be a date after or equal to date_range_start.'
example: '2032-10-09'
timezone:
type: string
description: 'Must be a valid time zone, such as Africa/Accra.'
example: Asia/Irkutsk
company_location_uuid:
type: string
description: 'Must be a valid UUID.'
example: 8972b522-1654-37a5-b388-744a01fa5bad
team_uuid:
type: string
description: 'Must be a valid UUID.'
example: 174cdf60-1c51-3128-b60b-f7ee8f6e01b3
user_uuid:
type: string
description: 'Must be a valid UUID.'
example: 57c14517-f4e9-3633-8c08-ec9fbbd39db6
template_uuid:
type: string
description: 'Must be a valid UUID.'
example: 5780ce5e-f8b1-3051-a1c5-5fdaa6309e78
status_uuid:
type: array
description: 'Must be a valid UUID.'
example:
- e139d3f8-f9a0-3e4e-8128-35d9350c6b85
items:
type: string
post:
summary: Create
operationId: create
description: 'Store a newly created proposal.'
parameters: []
responses: { }
tags:
- Proposals
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: eum
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Deserunt soluta eos modi.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: fb67650e-145c-32e5-a469-3e34c0b74d41
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: c0bb6192-ad1b-300c-a1a1-d710b99c2adf
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: e54687a5-11fe-38ff-9f05-abf34c3155f4
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: ad151042-a613-350c-9b94-e575957bffe9
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:
- numquam
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: b037bd6c-6b52-3c3a-8c44-23b1a2cda182
metadata:
type: object
description: "Optional metadata for tracking and custom data.\n Limitations: Maximum 20 keys at root level, keys max 100 characters, values max 1000 characters, max 3 levels of nesting.\n Example : {\"campaign_id\":\"summer2024\",\"source\":\"google_ads\",\"lead_score\":85}"
example: []
properties: { }
required:
- title
- company_location_uuid
- customer_uuid
- customer_address_uuid
- status_uuid
- proposal_template_uuid
parameters:
-
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: sit
-
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: 82731cca-2533-3ebc-bfcf-ec4269486aa6
-
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: beatae
-
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: e0af6f99-10b4-3704-8906-9e75b2f7ec39
-
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: 6f01a8a9-3ad8-3a85-9040-4ba29ffb5944
-
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: voluptatem
-
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: d9cf9b07-f76a-3cc9-bd06-2ff608c7e5ac
-
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/Kuching
-
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: praesentium
-
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: impedit
-
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: quidem
-
in: path
name: tag_uuids
description: 'Optional parameter. string[] Filter proposals by tag UUIDs. 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: eum
/api/v1/proposals/export-list:
get:
summary: 'Export List'
operationId: exportList
description: 'Returns a CSV file of list of filtered proposal list.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 1
required: false
schema:
type: integer
description: 'optional The page number.'
example: 1
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 11
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 11
-
in: query
name: sort_by
description: 'optional The column name.'
example: quasi
required: false
schema:
type: string
description: 'optional The column name.'
example: quasi
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: dolor
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: dolor
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: architecto
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: architecto
responses: { }
tags:
- Proposals
parameters:
-
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: 752ee952-92dc-3801-982c-f73e465b0aa3
-
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: rerum
-
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: 47bd516e-e1a3-3e80-8058-51b54ff97b90
-
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: d9c37b8f-3b85-3dd4-b11d-680b6042f023
-
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: et
-
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: 085fac11-1a56-371c-85de-ecb82b1470b4
/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:
- Proposals
'/api/v1/proposals/{proposal_uuid}':
get:
summary: Get
operationId: get
description: 'Display the selected proposal.'
parameters: []
responses: { }
tags:
- Proposals
put:
summary: Update
operationId: update
description: 'Updates the specified proposal.'
parameters: []
responses: { }
tags:
- Proposals
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: 0d6b47f5-544f-3699-91a6-fbf841a95adc
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: e8ce9485-d92f-3d42-ba6c-7f316d475be9
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 93dc1361-2772-3f05-b95a-90b6ffe059bd
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 10cc1b53-72e2-38dd-a070-c1748347b34f
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:
- eligendi
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: 20387da7-740b-3aaa-a8b7-3668499a3589
include_fields:
type: object
description: ''
example: null
properties: { }
expire_at:
type: string
description: 'Must be a valid date.'
example: '2026-01-14T05:03:58'
tag_uuids:
type: array
description: 'Must be a valid UUID.'
example:
- f2ee394a-bbea-31d5-a79a-f14827e84581
items:
type: string
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:
- Proposals
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: et
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Voluptas officia aut harum sit doloremque.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 2c57beac-32d0-33df-a5e7-63980eafdbcc
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: c81d3c0e-5e78-3078-b209-5b627243479d
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 1b158ccc-9df0-3814-94dd-8ec1f1e92546
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 569ad827-210a-381f-b367-8b63b1f6ee9a
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:
- et
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: 78387b23-32de-33e3-bb7a-68b78bb285b0
include_fields:
type: object
description: ''
example: null
properties: { }
expire_at:
type: string
description: 'Must be a valid date.'
example: '2026-01-14T05:03:58'
tag_uuids:
type: array
description: 'Must be a valid UUID.'
example:
- 438b3bf6-57b7-330a-a442-6fd8aaee9cc9
items:
type: string
metadata:
type: object
description: "Optional metadata for tracking and custom data. When updating, new keys are added and existing keys are updated while preserving other keys.\n Limitations: Maximum 20 keys at root level, keys max 100 characters, values max 1000 characters, max 3 levels of nesting.\n Example : {\"campaign_id\":\"fall2024\",\"new_field\":\"value\"}"
example: []
properties: { }
required:
- proposal_template_uuid
delete:
summary: Delete
operationId: delete
description: 'Delete a specified proposal.'
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
-
in: query
name: page
description: 'optional The page number.'
example: 5
required: false
schema:
type: integer
description: 'optional The page number.'
example: 5
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 12
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 12
-
in: query
name: sort_by
description: 'optional The column name.'
example: nulla
required: false
schema:
type: string
description: 'optional The column name.'
example: nulla
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: vel
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: vel
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: nihil
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: nihil
responses: { }
tags:
- Proposals
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:
- Proposals
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: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/tarf-xml-url':
get:
summary: 'Download TARF XML'
operationId: downloadTARFXML
description: ''
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/cali-wdo-report-url':
get:
summary: 'Download California WDO XML'
operationId: downloadCaliforniaWDOXML
description: ''
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/activity-logs/{activityEntryUuid}/{action}':
post:
summary: action
operationId: action
description: ''
parameters: []
responses: { }
tags:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/upload-review-photo':
post:
summary: 'Upload Review Photo'
operationId: uploadReviewPhoto
description: ''
parameters: []
responses: { }
tags:
- Proposals
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: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/push-to-crm':
post:
summary: 'Resync document'
operationId: resyncDocument
description: 'Resync document the specified proposal.'
parameters: []
responses: { }
tags:
- Proposals
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: asperiores
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Fuga quo saepe dolor illum temporibus veniam dolores.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 833c658e-2cad-32d2-8041-bf4d1f7ef5b5
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 76281f39-780c-3660-aee6-36ba7b1a6515
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 39cab458-2e03-3070-904d-8ec74d99e71a
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 149e48c5-75b9-36b3-ad43-dbd5b7b7a598
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:
- maxime
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: 5a7e258e-6884-3498-b059-ad1c071532c5
required:
- proposal_template_uuid
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/activity-logs/{activityEntryUuid}':
put:
summary: Update
operationId: update
description: 'Update a proposal activity entry'
parameters: []
responses: { }
tags:
- Proposals
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:
- Proposals
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/share':
patch:
summary: Share
operationId: share
description: 'Send proposal via email'
parameters: []
responses: { }
tags:
- Proposals
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: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/proposals/{proposal_uuid}/delete-review-photo':
delete:
summary: 'Delete Review Photo'
operationId: deleteReviewPhoto
description: ''
parameters: []
responses: { }
tags:
- Proposals
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
image_url:
type: string
description: 'The image url.'
example: 'https://www.prohaska.info/rerum-fugiat-harum-voluptatibus-sequi-aut-sint-rerum-qui'
type:
type: enum
description: "'cover' | 'photos' required The photo type."
example: "'cover'."
required:
- image_url
parameters:
-
in: path
name: proposal_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: quia
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: 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: 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: 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: possimus
-
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: praesentium
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: sequi
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: ut
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: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: referralSource_uuid
description: 'Optional parameter. The UUID of the referral_source.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/reports/templates:
get:
summary: List
operationId: list
description: 'Returns the list of available reports'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 14
required: false
schema:
type: integer
description: 'optional The page number.'
example: 14
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 8
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 8
-
in: query
name: sort_by
description: 'optional The column name.'
example: repellat
required: false
schema:
type: string
description: 'optional The column name.'
example: repellat
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: iusto
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: iusto
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: laboriosam
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: laboriosam
responses: { }
tags:
- 'Report Templates'
parameters:
-
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: impedit
-
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: officiis
-
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:
- 'Report Templates'
delete:
summary: Delete
operationId: delete
description: 'Delete a report template.'
parameters: []
responses: { }
tags:
- 'Report Templates'
parameters:
-
in: path
name: reportTemplate_uuid
description: 'Optional parameter. The UUID of the report template.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/reports:
get:
summary: List
operationId: list
description: 'Returns the list of available reports'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 12
required: false
schema:
type: integer
description: 'optional The page number.'
example: 12
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 9
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 9
-
in: query
name: sort_by
description: 'optional The column name.'
example: atque
required: false
schema:
type: string
description: 'optional The column name.'
example: atque
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: maiores
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: maiores
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: quia
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: quia
responses: { }
tags:
- Reports
post:
summary: Store
operationId: store
description: 'Store a newly created report.'
parameters: []
responses: { }
tags:
- Reports
parameters:
-
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: quisquam
-
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: sint
-
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: numquam
-
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
-
in: path
name: report_uuid
description: 'Optional parameter. The UUID of the report.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/reports/{report_uuid}/duplicate':
post:
summary: Duplicate
operationId: duplicate
description: ''
parameters: []
responses: { }
tags:
- Reports
parameters:
-
in: path
name: report_uuid
description: 'Optional parameter. The UUID of the report.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/reports/types:
get:
summary: ''
operationId: getApiV1ReportsTypes
description: ''
parameters: []
responses: { }
tags:
- Reports
/api/v1/reports/admin-overview:
get:
summary: Show
operationId: show
description: 'Show admin overview report.'
parameters: []
responses: { }
tags:
- Reports
'/api/v1/reports/{report_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single report.'
parameters: []
responses: { }
tags:
- Reports
delete:
summary: Delete
operationId: delete
description: ''
parameters: []
responses: { }
tags:
- Reports
parameters:
-
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: 861f26f4-3fe7-33d0-8f58-75b5e3ed8115
-
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: sapiente
-
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: 5adfe675-9376-3698-a472-9795d0d8bccb
-
in: path
name: report_uuid
description: 'Optional parameter. The UUID of the report.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/reports/{report_uuid}/export':
get:
summary: Export
operationId: export
description: 'Export summary reports'
parameters: []
responses: { }
tags:
- Reports
parameters:
-
in: path
name: report_uuid
description: 'Optional parameter. The UUID of the report.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/reports/{report_uuid}/filters':
get:
summary: Filters
operationId: filters
description: 'Retrieve filters to be used in frontend processes'
parameters: []
responses: { }
tags:
- Reports
parameters:
-
in: path
name: report_uuid
description: 'Optional parameter. The UUID of the report.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/reviews':
get:
summary: List
operationId: list
description: 'Shows the list of review with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 18
required: false
schema:
type: integer
description: 'optional The page number.'
example: 18
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 5
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 5
-
in: query
name: sort_by
description: 'optional The column name.'
example: dolores
required: false
schema:
type: string
description: 'optional The column name.'
example: dolores
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: sint
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sint
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: autem
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: autem
responses: { }
tags:
- Reviews
post:
summary: Store
operationId: store
description: 'Store a newly created review.'
parameters: []
responses: { }
tags:
- Reviews
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: eos
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: maiores
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://gaylord.com/ea-eum-error-nesciunt-vitae-optio.html'
position:
type: integer
description: 'The the position of the review. Example : 2'
example: 6
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: f12b26ee-a081-32e7-8e17-b850d9a659bd
required:
- name
- rate
patch:
summary: 'Patch Index'
operationId: patchIndex
description: 'Performs specific updates for review ranking'
parameters: []
responses: { }
tags:
- Reviews
parameters:
-
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: dolor
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/reviews/{review_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single review.'
parameters: []
responses: { }
tags:
- Reviews
post:
summary: Update
operationId: update
description: 'Update a review.'
parameters: []
responses: { }
tags:
- Reviews
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: quod
message:
type: string
description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: error
rate:
type: string
description: 'The rate of the review ranging from 0-5. Example : 5'
example: harum
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://mann.com/amet-libero-est-ut-dolores-optio-eveniet'
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: aa1cd3a3-2869-3d7c-ac47-d9a45d111b21
required:
- name
- rate
patch:
summary: Patch
operationId: patch
description: 'Patch a company review.'
parameters: []
responses: { }
tags:
- Reviews
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the customer/reviewer. Example : "My Review"'
example: consectetur
message:
type: string
description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: beatae
rate:
type: string
description: 'The rate of the review ranging from 0-5. Example : 5'
example: debitis
external_photo_url:
type: string
description: 'An external url of an image as review/photo.'
example: 'http://murazik.com/in-aut-sed-aut-quia-quia-rem-incidunt'
position:
type: integer
description: 'The the position of the review. Example : 2'
example: 3
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: 3f1d42b2-0298-30e7-9774-52d93f68e972
delete:
summary: Delete
operationId: delete
description: 'Delete a review.'
parameters: []
responses: { }
tags:
- Reviews
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: review_uuid
description: 'Optional parameter. The UUID of the review.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/roles:
get:
summary: 'List / Fetch'
operationId: listFetch
description: 'Shows the list of role or fetch single record using uuid.'
parameters: []
responses: { }
tags:
- Roles
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:
- Roles
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:
- Roles
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:
- Roles
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:
- Roles
'/api/v1/companies/{company_uuid}/schedules':
get:
summary: List
operationId: list
description: 'Shows the list of schedule with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 20
required: false
schema:
type: integer
description: 'optional The page number.'
example: 20
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 16
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 16
-
in: query
name: sort_by
description: 'optional The column name.'
example: sed
required: false
schema:
type: string
description: 'optional The column name.'
example: sed
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: autem
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: autem
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: quia
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: quia
responses: { }
tags:
- Schedules
post:
summary: Store
operationId: store
description: 'Store a newly created schedule.'
parameters: []
responses: { }
tags:
- Schedules
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the schedule. Example : "My Schedule"'
example: beatae
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Occaecati soluta mollitia hic ipsum porro harum est.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: accusantium
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 4
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: maiores
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- optio
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 2
required:
- name
- type
- units
- term
- enabled_service_months
parameters:
-
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: perspiciatis
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/schedules/{schedule_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single schedule.'
parameters: []
responses: { }
tags:
- Schedules
put:
summary: Update
operationId: update
description: 'Update a schedule.'
parameters: []
responses: { }
tags:
- Schedules
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the schedule. Example : "My Schedule"'
example: et
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Et fugiat libero id repudiandae deserunt numquam nisi omnis.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: perferendis
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 10
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: in
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- exercitationem
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 14
required:
- name
- type
- units
- term
- enabled_service_months
patch:
summary: Patch
operationId: patch
description: 'Patch a company schedule.'
parameters: []
responses: { }
tags:
- Schedules
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the schedule. Example : "My Schedule"'
example: eum
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Quia beatae minima fuga quia dignissimos.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: quia
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 8
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: exercitationem
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- iste
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 10
required:
- name
- type
- units
- term
- enabled_service_months
delete:
summary: Delete
operationId: delete
description: 'Delete a schedule.'
parameters: []
responses: { }
tags:
- Schedules
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: schedule_uuid
description: 'Optional parameter. The UUID of the schedule.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/service-agreements':
get:
summary: List
operationId: list
description: 'Shows the list of company service agreements with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 12
required: false
schema:
type: integer
description: 'optional The page number.'
example: 12
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 15
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 15
-
in: query
name: sort_by
description: 'optional The column name.'
example: ut
required: false
schema:
type: string
description: 'optional The column name.'
example: ut
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: magni
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: magni
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: provident
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: provident
responses: { }
tags:
- 'Service Agreements'
post:
summary: Store
operationId: store
description: 'Store a service agreement.'
parameters: []
responses: { }
tags:
- 'Service Agreements'
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: itaque
content:
type: string
description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor'
example: alias
required:
- title
- content
parameters:
-
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: sed
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/service-agreements/{serviceAgreement_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single service agreement.'
parameters: []
responses: { }
tags:
- 'Service Agreements'
put:
summary: Update
operationId: update
description: 'Update a service agreement.'
parameters: []
responses: { }
tags:
- 'Service Agreements'
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: eveniet
content:
type: string
description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor'
example: eum
required:
- title
- content
patch:
summary: Patch
operationId: patch
description: 'Patch a service agreement.'
parameters: []
responses: { }
tags:
- 'Service Agreements'
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: sed
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: ipsam
delete:
summary: Delete
operationId: delete
description: 'Delete a service agreement.'
parameters: []
responses: { }
tags:
- 'Service Agreements'
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: serviceAgreement_uuid
description: 'Optional parameter. The UUID of the service_agreement.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Agreements'
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: ab
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: atque
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: serviceAgreement_uuid
description: 'Optional parameter. The UUID of the service_agreement.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
-
in: query
name: page
description: 'optional The page number.'
example: 4
required: false
schema:
type: integer
description: 'optional The page number.'
example: 4
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 8
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 8
-
in: query
name: sort_by
description: 'optional The column name.'
example: deserunt
required: false
schema:
type: string
description: 'optional The column name.'
example: deserunt
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: nihil
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: nihil
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: aut
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: aut
responses: { }
tags:
- 'Service Plan Custom Fields'
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 Fields'
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 Fields'
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: u
items:
type: string
save_service_plan_as:
type: string
description: ''
example: SERVICE_PLAN_DRAFT
enum:
- SERVICE_PLAN_DRAFT
- SERVICE_PLAN_ACTIVE
- SERVICE_PLAN_ARCHIVED
label:
type: string
description: 'The label Service Plan Custom Field.'
example: 'First Name'
input_type:
type: string
description: 'The field type of the custom field.'
example: TEXT
default_value:
type: string
description: 'optional The default value of the custom field.'
example: '""'
combine_input_value_collection:
type: boolean
description: 'optional The option to combine custom fields by label.'
example: true
required:
- label
- input_type
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Fields'
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 Fields'
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: aqrwqvclbobt
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 Fields'
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 Fields'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: servicePlanCustomField_uuid
description: 'Optional parameter. The UUID of the service_plan_custom_field.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
-
in: query
name: page
description: 'optional The page number.'
example: 18
required: false
schema:
type: integer
description: 'optional The page number.'
example: 18
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 10
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 10
-
in: query
name: sort_by
description: 'optional The column name.'
example: sit
required: false
schema:
type: string
description: 'optional The column name.'
example: sit
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: ullam
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: ullam
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: dolorum
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: dolorum
responses: { }
tags:
- 'Service Plan Pricing Groups'
post:
summary: Create
operationId: create
description: 'Store a newly created Service Plan Pricing Group.'
parameters: []
responses: { }
tags:
- 'Service Plan Pricing Groups'
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 Groups'
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_ARCHIVED
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: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Groups'
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 Groups'
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_ARCHIVED
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 Groups'
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 Groups'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: servicePlanPricingGroup_uuid
description: 'Optional parameter. The UUID of the service_plan_pricing_group.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/service-plans:
get:
summary: List
operationId: list
description: 'Shows the list of Service Plans with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 12
required: false
schema:
type: integer
description: 'optional The page number.'
example: 12
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 19
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 19
-
in: query
name: sort_by
description: 'optional The column name.'
example: et
required: false
schema:
type: string
description: 'optional The column name.'
example: et
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: id
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: id
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: aliquid
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: aliquid
responses: { }
tags:
- 'Service Plans'
post:
summary: Create
operationId: create
description: 'Store a newly created Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
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: animi
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: 4969058.10339
required:
- name
parameters:
-
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 Plans'
put:
summary: Update
operationId: update
description: 'Perform a full field update for the specified Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
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: eos
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: 7558218.913
save_as:
type: string
description: ''
example: SERVICE_PLAN_ACTIVE
enum:
- SERVICE_PLAN_DRAFT
- SERVICE_PLAN_ACTIVE
- SERVICE_PLAN_ARCHIVED
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Perform a patch for the specified Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
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: quia
description:
type: string
description: 'The description of Service Plan.'
example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit'
company_locations_uuid:
type: array
description: 'List of company_location_uuid.'
example:
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
items:
type: string
categories_uuid:
type: array
description: 'List of category_uuid. Example:'
example:
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
items:
type: string
settings:
type: object
description: ''
example: null
properties: { }
default_contract_term:
type: string
description: ''
example: null
default_contract_term_units:
type: number
description: ''
example: 271074.11823593
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 Plans'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Plans'
parameters:
-
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
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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 Plans'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/service-plans/{servicePlan_uuid}/publish':
patch:
summary: Publish
operationId: publish
description: 'Publish the specified Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/service-plans/{servicePlan_uuid}/archive':
patch:
summary: Archived
operationId: archived
description: 'Archived the specified Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/service-plans/{servicePlan_uuid}/unarchive':
patch:
summary: Unarchived
operationId: unarchived
description: 'Unarchived the specified Service Plan.'
parameters: []
responses: { }
tags:
- 'Service Plans'
parameters:
-
in: path
name: servicePlan_uuid
description: 'Optional parameter. 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: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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: a6d1962b-4dd7-3e3e-8a58-0719be7f6258
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: aut
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: 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: 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: corporis
-
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: recusandae
-
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: accusamus
-
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: sit
-
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: fad2e0a8-1429-3a55-a912-a739631401c3
'/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: e71480a9-8214-347b-8266-791085223160
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: magni
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: 65f34d6a-3db3-386b-8cf9-d4a7170e4aad
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: omnis
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: 'Optional parameter. The UUID of the solution.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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: 'Optional parameter. The UUID of the solution.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the solution.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 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: hic
-
in: path
name: solutionCategory_uuid
description: 'Optional parameter. The UUID of the solution_category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/solution-categories:
get:
summary: List
operationId: list
description: 'Shows the list of solution categories.'
parameters: []
responses: { }
tags:
- 'Solution Category'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
include_fields:
type: array
description: ''
example:
- user_progress
items:
type: string
ignore_cached:
type: boolean
description: ''
example: true
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: porro
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: 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: 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: 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: omnis
-
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: quia
'/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: et
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: nihil
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: 'Optional parameter. The UUID of the solution_category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the solution_category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the solution_category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 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: non
-
in: path
name: solutionCategory_uuid
description: 'Optional parameter. The UUID of the solution_category.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 1
feedback:
type: string
description: 'The attributes of the solution.'
example: '"Lorem ipsum dolor sit amet consectetur adipisicing elit."'
required:
- rate
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: 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: iure
-
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: ad
-
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: solution_uuid
description: 'Optional parameter. The UUID of the solution.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 15
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: 13
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: 'Optional parameter. The UUID of the solution.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: solutionFeedback_uuid
description: 'Optional parameter. The UUID of the solution_feedback.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- States
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: []
/api/v1/support-request:
post:
summary: Store
operationId: store
description: 'Send support request from users'
parameters: []
responses: { }
tags:
- 'Support Requests'
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 Requests'
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: 'Optional parameter. The UUID of the support_request.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/symbols':
get:
summary: List
operationId: list
description: 'Shows the list of company symbols with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 4
required: false
schema:
type: integer
description: 'optional The page number.'
example: 4
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 14
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 14
-
in: query
name: sort_by
description: 'optional The column name.'
example: itaque
required: false
schema:
type: string
description: 'optional The column name.'
example: itaque
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quia
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quia
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: ut
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: ut
responses: { }
tags:
- Symbols
post:
summary: Store
operationId: store
description: 'Store a newly created company symbol.'
parameters: []
responses: { }
tags:
- Symbols
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the symbol. Example : Dig'
example: est
source:
type: string
description: 'The source of the symbol. Example : text'
example: voluptas
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Provident dolor soluta error laborum nobis aliquid.'
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:
- in
items:
type: string
required:
- name
- source
parameters:
-
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: eos
-
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: qui
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/symbols/{companySymbol_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single company symbol.'
parameters: []
responses: { }
tags:
- Symbols
put:
summary: Update
operationId: update
description: 'Update a company symbol.'
parameters: []
responses: { }
tags:
- Symbols
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the symbol. Example : Dig'
example: impedit
source:
type: string
description: 'The source of the symbol. Example : text'
example: quo
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Sed nobis perferendis dolorum non quisquam odio.'
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:
- rem
items:
type: string
required:
- name
- source
post:
summary: Update
operationId: update
description: 'Update a company symbol.'
parameters: []
responses: { }
tags:
- Symbols
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the symbol. Example : Dig'
example: architecto
source:
type: string
description: 'The source of the symbol. Example : text'
example: fugit
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Doloremque sed nulla voluptas incidunt itaque minima.'
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:
- sunt
items:
type: string
required:
- name
- source
patch:
summary: Patch
operationId: patch
description: 'Patch a company symbol.'
parameters: []
responses: { }
tags:
- Symbols
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
name:
type: string
description: 'The name of the symbol. Example : Dig'
example: ut
source:
type: string
description: 'The source of the symbol. Example : text'
example: ea
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Sed vero autem esse maiores velit maiores asperiores.'
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:
- Symbols
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companySymbol_uuid
description: 'Optional parameter. The UUID of the company_symbol.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/tags':
get:
summary: List
operationId: list
description: 'Shows the list of tags with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 20
required: false
schema:
type: integer
description: 'optional The page number.'
example: 20
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 3
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 3
-
in: query
name: sort_by
description: 'optional The column name.'
example: fugiat
required: false
schema:
type: string
description: 'optional The column name.'
example: fugiat
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: cumque
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: cumque
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: dolore
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: dolore
responses: { }
tags:
- Tags
post:
summary: Create
operationId: create
description: 'Store a newly created Tag.'
parameters: []
responses: { }
tags:
- Tags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the tag.'
example: 'Needs Review'
description:
type: string
description: 'The description of the tag.'
example: 'Proposals that need review'
category_group:
type: string
description: 'The category group.'
example: PROPOSAL
required:
- name
- category_group
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: category_group
description: 'Optional parameter. Filter by category group. Example : PROPOSAL'
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: uuids
description: 'Optional parameter. string[] Filter by specific tag UUIDs. Example : ["550e8400-e29b-41d4-a716-446655440001"]'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: fugit
'/api/v1/companies/{company_uuid}/tags/{tag_uuid}':
get:
summary: Show
operationId: show
description: 'Display the specified Tag.'
parameters: []
responses: { }
tags:
- Tags
put:
summary: Update
operationId: update
description: 'Update the specified Tag.'
parameters: []
responses: { }
tags:
- Tags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the tag.'
example: 'Needs Review'
description:
type: string
description: 'The description of the tag.'
example: 'Proposals that need review'
category_group:
type: string
description: 'The category group.'
example: PROPOSAL
required:
- name
- category_group
delete:
summary: Delete
operationId: delete
description: 'Remove the specified Tag.'
parameters: []
responses: { }
tags:
- Tags
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: tag_uuid
description: 'Optional parameter. The UUID of the tag.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/api/v1/tags:
get:
summary: 'List Global Tags'
operationId: listGlobalTags
description: "Shows the list of global tags (not company-scoped) with pagination.\nAdmins see all global tags, non-admins see only their company's global tags."
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 20
required: false
schema:
type: integer
description: 'optional The page number.'
example: 20
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 4
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 4
-
in: query
name: sort_by
description: 'optional The column name.'
example: aspernatur
required: false
schema:
type: string
description: 'optional The column name.'
example: aspernatur
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: voluptatem
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: voluptatem
-
in: query
name: search
description: 'optional The general search.'
example: voluptatem
required: false
schema:
type: string
description: 'optional The general search.'
example: voluptatem
responses: { }
tags:
- Tags
post:
summary: 'Create Global Tag'
operationId: createGlobalTag
description: 'Store a newly created global Tag (admin/super admin only).'
parameters: []
responses: { }
tags:
- Tags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the tag.'
example: 'Default Import Tag'
description:
type: string
description: 'The description of the tag.'
example: 'Default import set tag'
category_group:
type: string
description: 'The category group.'
example: IMPORT_SET
required:
- name
- category_group
parameters:
-
in: path
name: category_group
description: 'Optional parameter. Filter by category group. Example : IMPORT_SET'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: ut
'/api/v1/tags/{tag_uuid}':
get:
summary: 'Show Global Tag'
operationId: showGlobalTag
description: 'Display the specified global Tag.'
parameters: []
responses: { }
tags:
- Tags
put:
summary: 'Update Global Tag'
operationId: updateGlobalTag
description: 'Update the specified global Tag (admin/super admin only).'
parameters: []
responses: { }
tags:
- Tags
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the tag.'
example: 'Default Import Tag'
description:
type: string
description: 'The description of the tag.'
example: 'Updated description'
category_group:
type: string
description: 'The category group.'
example: IMPORT_SET
required:
- name
- category_group
delete:
summary: 'Delete Global Tag'
operationId: deleteGlobalTag
description: 'Remove the specified global Tag (admin/super admin only).'
parameters: []
responses: { }
tags:
- Tags
parameters:
-
in: path
name: tag_uuid
description: 'Optional parameter. The UUID of the tag.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/taxes':
get:
summary: List
operationId: list
description: 'Shows the list of taxes with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 14
required: false
schema:
type: integer
description: 'optional The page number.'
example: 14
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 14
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 14
-
in: query
name: sort_by
description: 'optional The column name.'
example: quis
required: false
schema:
type: string
description: 'optional The column name.'
example: quis
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: ullam
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: ullam
-
in: query
name: search
description: 'optional The general search, it will find matching string (name, postal_code, cities).'
example: recusandae
required: false
schema:
type: string
description: 'optional The general search, it will find matching string (name, postal_code, cities).'
example: recusandae
responses: { }
tags:
- Taxes
patch:
summary: 'Patch Index'
operationId: patchIndex
description: 'Performs specific updates for tax settings'
parameters: []
responses: { }
tags:
- Taxes
post:
summary: Store
operationId: store
description: 'Store a newly created tax.'
parameters: []
responses: { }
tags:
- Taxes
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: 705faa3f-a8ab-3738-830f-5d100661e74b
country_state_uuids:
type: array
description: 'An array of country state UUID. Example : ["815d3d9c-f371-3781-8456-7e6954b5b0f5", "815d3d9c-f371-3781-8456-7e6954b5b0f2"]'
example:
- est
items:
type: string
name:
type: string
description: 'The name of the tax. Example : Pest Route Initial Proposal'
example: quia
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: 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: 66c65a6e-9d26-3f3b-ad4e-358f15de3525
-
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: 17
-
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: officia
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/taxes/{companyTax_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single tax.'
parameters: []
responses: { }
tags:
- Taxes
put:
summary: Update
operationId: update
description: 'Update a tax.'
parameters: []
responses: { }
tags:
- Taxes
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: 277f69f0-9511-3c8e-94fe-aead0a0a397a
country_state_uuids:
type: array
description: 'The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"'
example:
- nihil
items:
type: string
name:
type: string
description: 'The name of the tax. Example : Pest Route Initial Proposal'
example: quas
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:
- Taxes
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: 420e9305-8db6-3016-8c69-01384a263a38
country_state_uuids:
type: array
description: 'optional The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"'
example:
- earum
items:
type: string
name:
type: string
description: 'optional The name of the tax. Example : Pest Route Initial Proposal'
example: saepe
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:
- Taxes
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: companyTax_uuid
description: 'Optional parameter. The UUID of the company_tax.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/teams':
get:
summary: List
operationId: list
description: 'Shows the list of teams with pagination.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 19
required: false
schema:
type: integer
description: 'optional The page number.'
example: 19
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 6
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 6
-
in: query
name: sort_by
description: 'optional The column name.'
example: eos
required: false
schema:
type: string
description: 'optional The column name.'
example: eos
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: esse
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: esse
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: eius
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: eius
responses: { }
tags:
- Teams
post:
summary: Store
operationId: store
description: 'Store a newly created team.'
parameters: []
responses: { }
tags:
- Teams
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the team. Example : "Engineering"'
example: consequatur
required:
- name
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/api/v1/companies/{company_uuid}/teams/{team_uuid}':
get:
summary: Show
operationId: show
description: 'Show a single team.'
parameters: []
responses: { }
tags:
- Teams
put:
summary: Update
operationId: update
description: 'Update a team.'
parameters: []
responses: { }
tags:
- Teams
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the team. Example : "Accounting"'
example: recusandae
required:
- name
patch:
summary: Patch
operationId: patch
description: 'Patch a company team.'
parameters: []
responses: { }
tags:
- Teams
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the team. Example : "Accounting"'
example: voluptatibus
delete:
summary: Delete
operationId: delete
description: 'Delete a team.'
parameters: []
responses: { }
tags:
- Teams
parameters:
-
in: path
name: company_uuid
description: 'Optional parameter. The UUID of the company.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
-
in: path
name: team_uuid
description: 'Optional parameter. The UUID of the team.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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
parameters:
-
in: path
name: user_uuid
description: 'Optional parameter. The UUID of the user.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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:
- odit
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: 'Optional parameter. The UUID of the user.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the user.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
'/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: 'Optional parameter. The UUID of the user.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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
parameters:
-
in: path
name: user_uuid
description: 'Optional parameter. The UUID of the user.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
/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: soluta
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/auth/webhooks/subscribe-test:
post:
summary: Test
operationId: test
description: 'Save new webhook subscription'
parameters: []
responses: { }
tags:
- Webhooks
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/webhooks/subscribe:
get:
summary: List
operationId: list
description: 'Shows the list of webhooks.'
parameters:
-
in: query
name: page
description: 'optional The page number.'
example: 7
required: false
schema:
type: integer
description: 'optional The page number.'
example: 7
-
in: query
name: page_size
description: 'optional The number of record you want per page.'
example: 12
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 12
-
in: query
name: sort_by
description: 'optional The column name.'
example: error
required: false
schema:
type: string
description: 'optional The column name.'
example: error
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quia
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quia
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: et
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: et
responses: { }
tags:
- Webhooks
post:
summary: Store
operationId: store
description: 'Save new webhook subscription'
parameters: []
responses: { }
tags:
- Webhooks
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/webhooks/subscribe/{webhook_uuid}':
delete:
summary: Delete
operationId: delete
description: 'Delete a webhook.'
parameters: []
responses: { }
tags:
- Webhooks
parameters:
-
in: path
name: webhook_uuid
description: 'Optional parameter. The UUID of the webhook.'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 3fa85f64-5717-4562-b3fc-2c963f66afa6
tags:
-
name: 'App Data'
description: "\nRetrieve system reference data including countries, states, user roles, record statuses, industries, property locations, and other enumerated values needed for application functionality."
-
name: Automations
description: "\nCreate workflow automations with triggers, filters, and actions to automate business processes. Automations can be enabled/disabled and configured to run during specific business hours."
-
name: Categories
description: "\nOrganize service plans and drawing symbols into categories (e.g., Rodent Control, Termite Treatment). Categories help structure service offerings and diagram symbols for better organization."
-
name: Company
description: "\nManage your company profile including business name, logo, contact information, branding settings, billing configuration, and company-wide preferences."
-
name: 'Company Users'
description: "\nInvite and manage company users with location assignments. Handle user invitations, activation, role assignment, team membership, and company-specific user settings."
-
name: Countries
description: "\nRetrieve available countries and states/provinces for address forms and geographic data. Used in customer and company location configuration."
-
name: 'Customer Addresses'
description: "\nManage service addresses for customers. A single customer may have multiple properties requiring pest control services at different locations."
-
name: 'Customer Contacts'
description: "\nManage additional contact persons for customer accounts. Store phone numbers, emails, and contact preferences for multiple decision-makers at a property."
-
name: Customers
description: "\nManage customer records including contact information, service addresses (multiple addresses per customer), billing details, referral source tracking, status, custom field data, and CRM integration metadata."
-
name: 'Decline Reasons'
description: "\nTrack reasons why customers decline proposals (price too high, went with competitor, not interested, etc.). Analyze decline data to improve sales processes and understand common objections."
-
name: 'Description Sets'
description: "\nCreate reusable description templates for services, proposals, and documents. Maintain consistent professional messaging across your sales and service materials."
-
name: 'Field Groups'
description: "\nCreate groups of custom fields to collect additional business-specific information on customers, proposals, or other records. Organize custom data collection into logical field sets."
-
name: 'File Upload'
description: "\nGenerate pre-signed URLs for secure direct-to-S3 file uploads. Upload photos, documents, PDFs, and media without passing files through the API server."
-
name: Files
description: "\nUpload and manage company files and attachments. Store documents that can be referenced in proposals, emails, and customer communications."
-
name: 'Form Fields'
description: "\nDefine individual fields (text, dropdown, checkbox, date, etc.) that make up custom forms. Configure field validation rules, options, and display settings."
-
name: Forms
description: "\nBuild custom data collection forms with form fields and assignments. Forms can be attached to proposals for customer completion or used during service delivery to collect business-specific information."
-
name: 'Import Sets'
description: "\nManage bulk data import jobs for migrating customers, service plans, line items, and other records from external systems or CSV files."
-
name: 'Import Types'
description: "\nView available import types and data formats supported for bulk data migration (customers, service plans, line items, categories, etc.)."
-
name: Industries
description: "\nRetrieve industry classifications for commercial customers (restaurants, warehouses, offices, etc.). Used to categorize commercial accounts by business type for reporting and segmentation."
-
name: 'Integration Types'
description: "\nView available integration types (CRM systems, accounting software, etc.) that can be connected to Smarter Launch. Integration availability may be restricted by company settings and user role."
-
name: Integrations
description: "\nConnect and manage integrations with external CRM systems, accounting software, and other business tools. Configure integration settings, sync data, and view integration logs."
-
name: 'Line Items'
description: "\nManage additional services and products that can be added to proposals. Line items include pricing information, billing schedules, service schedules, and can be imported in bulk."
-
name: 'Location Custom Settings'
description: "\nConfigure location-specific operational settings and preferences that override company-level defaults for individual branches."
-
name: Locations
description: "\nManage company branch locations and service territories. Configure location-specific settings, assign service plans, manage user access by location, and set up integration settings for each branch."
-
name: 'Media Items'
description: "\nManage photos, videos, and documents used in proposals and service documentation. Organize media with tags and sources for easy retrieval and reuse across projects."
-
name: 'Media Sources'
description: "\nDefine and manage sources for media files (uploaded, camera, external URL, imports) to track where images and documents originated."
-
name: 'Media Tags'
description: "\nCreate tags to categorize and organize media files (photos, videos, documents) for easy retrieval and reuse across proposals and service documentation."
-
name: Permissions
description: "\nView available system permissions that can be assigned to roles for granular access control. Permissions control access to features and data throughout the application."
-
name: 'Pest Treated'
description: ''
-
name: Products
description: "\nManage pest control products and chemicals used in treatments. Track product information for service documentation, inventory tracking, and compliance reporting."
-
name: 'Property Locations'
description: "\nDefine standardized property location types (interior, exterior, basement, attic, garage, etc.) used in service diagrams and treatment records."
-
name: 'Proposal Templates'
description: ''
-
name: Proposals
description: "\nCreate and manage pest control service proposals. Handle proposal creation, customer acceptance/decline with digital signatures, pricing selection, custom form submissions, activity tracking, file attachments, and CRM synchronization."
-
name: 'Referral Source'
description: "\nAPI for Referral Source"
-
name: 'Report Templates'
description: "\nCreate custom report templates with specific data fields, filters, and layouts for recurring business intelligence needs and analytics."
-
name: Reports
description: "\nGenerate and export business intelligence reports including sales dashboards, performance metrics, and analytics. Filter reports by user, team, date range, and report type."
-
name: Reviews
description: "\nCollect and manage customer reviews and testimonials. Request reviews from satisfied customers to build your online reputation and gather feedback."
-
name: Roles
description: "\nDefine user roles with associated permissions for access control. Uses Spatie Permission package to manage role-based authorization throughout the application."
-
name: Schedules
description: "\nDefine service and billing frequency schedules (monthly, quarterly, annual, etc.) used in service plans and line items for recurring pest control services."
-
name: 'Service Agreements'
description: "\nManage legal service agreement templates that outline terms and conditions. Attach service agreements to proposals for customer acceptance and mark agreements as active."
-
name: 'Service Plan Custom Fields'
description: "\nAdd custom data fields to service plans to capture business-specific information such as treatment methods, coverage areas, or special terms."
-
name: 'Service Plan Pricing Groups'
description: "\nCreate pricing tiers for service plans based on property size, square footage, treatment frequency, or other factors. Offer multiple pricing options within proposals."
-
name: 'Service Plans'
description: "\nDefine and manage service plan offerings including pricing groups, treatment categories, location availability, service schedules, and contract terms. Service plans can be duplicated and included in proposals."
-
name: Solution
description: "\nAPI for Solution"
-
name: 'Solution Category'
description: "\nAPI for Solution Category"
-
name: 'Solution Feedback'
description: "\nAPI for Solution Feedback"
-
name: States
description: "\nRetrieve states/provinces for a given country. Used in address forms and tax rate configuration by geographic region."
-
name: 'Support Requests'
description: "\nSubmit support tickets to Smarter Launch customer service. Attach screenshots and describe issues for technical assistance."
-
name: Symbols
description: "\nDefine diagram symbols and icons used in property maps and treatment diagrams (e.g., bait station icons, treatment area markers). Upload custom symbol images."
-
name: Tags
description: "\nCreate custom tags to label and organize customers, proposals, and other records for filtering, searching, and reporting purposes."
-
name: Taxes
description: "\nConfigure sales tax rates for different states, counties, and municipalities. Automatically apply correct tax rates to proposals and invoices based on service address location."
-
name: Teams
description: "\nOrganize users into named teams for filtering and reporting. Team supervisors can view data filtered to their assigned team."
-
name: User
description: "\nAPI for user details"
-
name: 'User Authentication'
description: "\nAPI for user authentication"
-
name: Webhooks
description: "\nConfigure webhook subscriptions to receive real-time HTTP notifications when events occur in Smarter Launch (proposals accepted, documents created, customers added, etc.)."
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: []