openapi: 3.0.3
info:
title: 'Smarter Launch'
description: 'API documentation for developers'
version: 1.0.0
servers:
-
url: 'https://staging.api.smarterlaunch.com'
paths:
/api/v1/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: 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: 1
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 1
-
in: query
name: sort_by
description: 'optional The column name.'
example: qui
required: false
schema:
type: string
description: 'optional The column name.'
example: qui
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: omnis
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: omnis
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: neque
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: neque
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:
- beatae
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:
- est
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:
- et
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: 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}/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:
- omnis
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:
- maxime
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:
- vero
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:
- voluptatem
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:
- unde
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:
- quia
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: 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: 17
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 17
-
in: query
name: sort_by
description: 'optional The column name.'
example: voluptates
required: false
schema:
type: string
description: 'optional The column name.'
example: voluptates
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: mollitia
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: mollitia
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: eum
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: eum
-
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: DRAWING_SYMBOL
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: 'http://emard.com/'
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: 'https://hagenes.com/sint-expedita-voluptas-fuga-beatae-at.html'
google_my_business_listing:
type: string
description: 'Must be a valid URL.'
example: 'http://bartell.com/nulla-id-et-nisi'
image_url:
type: string
description: ''
example: 'http://www.weimann.com/'
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: repellendus
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: false
should_reset_cache:
type: boolean
description: 'optional Resets the cache'
example: true
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: l
phone:
type: string
description: 'Must be at least 10 characters. Must not be greater than 20 characters.'
example: ybstkcqcbwawj
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: 2d4e8dbc-71a5-3f4c-81e3-1db2aaf7997c
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: reiciendis
address2:
type: string
description: 'optional The address 2. Example : Address 2'
example: ea
city:
type: string
description: 'optional The city. Example : Queen Creek'
example: qui
country_state_uuid:
type: string
description: 'optional The state uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f'
example: 6c8f24b1-3aae-3816-af80-5ca543447492
country_uuid:
type: string
description: 'optional The country uuid. Example : 3245d630-24fd-11ec-accd-e397aec85c7f'
example: bc3ac834-2742-31db-badc-bd5f2622a927
postal_code:
type: string
description: 'optional The postal code. Example : 12345'
example: repudiandae
latitude:
type: string
description: 'optional The latitude. Example : 33.2486'
example: porro
longitude:
type: string
description: 'optional The longitude. Example : 111.6377'
example: unde
is_primary:
type: string
description: 'optional The is_primary. Example : true'
example: ipsam
settings:
type: string
description: 'optional The settings. Example : {}'
example: commodi
county:
type: string
description: 'optional The county. Example : Pinal County'
example: suscipit
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:
- tempora
items:
type: string
customer_address:
type: array
description: 'The contact addresses'
example:
- voluptatem
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:
- natus
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
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: 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: 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: quibusdam
required: false
schema:
type: string
description: 'optional The column name.'
example: quibusdam
-
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: iusto
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: iusto
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: voluptatem
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: alias
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: assumenda
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: 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: 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: 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: molestiae
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: molestiae
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: qui
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: qui
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: fugiat
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- fuga
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: accusantium
-
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: reprehenderit
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- quia
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: molestiae
options:
type: array
description: 'The options of the description set. Example : [{"title":"Termite","description":["description 1","description 2"]}]'
example:
- quasi
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: 16
required: false
schema:
type: integer
description: 'optional The page number.'
example: 16
-
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: repellendus
required: false
schema:
type: string
description: 'optional The column name.'
example: repellendus
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: ad
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: ad
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: molestiae
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: molestiae
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: qui
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: iure
company_custom_fields:
type: array
description: "of object required The company_custom_fields of the custom field group. Example : [{label: 'Address 3', input_type: 'TEXT}]"
example:
- consequatur
items:
type: string
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: perferendis
-
in: path
name: assignment
description: 'Optional parameter. To filter data by assignment. Example : CUSTOMER_ADDRESS'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: provident
-
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: a
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: quaerat
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:
- architecto
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:
- libero
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: et
assignment:
type: enum
description: 'CUSTOMER|CUSTOMER_ADDRESS|MY_ACCOUNT|COMPANY|COMPANY_LOCATION required The assignment of the custom field group. Example : CUSTOMER'
example: doloribus
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:
- tempora
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:
- deleniti
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.wyman.com/excepturi-ducimus-tempore-dicta-aliquid-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: magni
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Fugiat saepe omnis ratione et.'
directory:
type: string
description: 'The directory where the file will be located.'
example: proposal-template
type:
type: string
description: 'The type of the file (in: image, document).'
example: document
fileUpload:
type: string
format: binary
description: 'The file to be uploaded.'
required:
- directory
- type
- fileUpload
delete:
summary: Delete
operationId: delete
description: 'Delete a file from a company'
parameters: []
responses: { }
tags:
- 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.bartell.com/tempore-voluptatem-quasi-quia-perspiciatis-illum-harum.html'
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: 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: 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: 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: sit
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sit
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: praesentium
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: praesentium
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: hic
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: quis
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: similique
is_required:
type: boolean
description: 'The label of the form field. Example : true'
example: true
is_conditional:
type: boolean
description: 'The label of the form field. Example : true'
example: true
has_help_guide:
type: boolean
description: 'The label of the form field. Example : true'
example: false
conditional_value:
type: text
description: 'The label of the form field. Example : {"condition1":"condition"}'
example: ut
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: est
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 17
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: voluptatibus
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: adipisci
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: aut
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: sit
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: eos
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 12
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: eum
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: ea
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: est
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: ex
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: 13
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: nobis
input_type:
type: string
description: 'The label of the form field. Example : "MULTI_SELECT"'
example: est
default_value:
type: string
description: 'The label of the form field. Example : "[1,2,3,4,5]"'
example: modi
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: enim
help_guide:
type: string
description: 'text The label of the form field. Example : "This a help guide for communication from our technicians."'
example: reiciendis
position:
type: integer
description: 'The position of the form field. Example : 1'
example: 15
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: 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: 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: 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: 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: ab
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: ab
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: libero
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: deserunt
form_fields:
type: array
description: 'The list of form field data.'
example:
- ut
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: adipisci
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: cupiditate
form_fields:
type: array
description: 'The list of form field data.'
example:
- soluta
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: autem
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: est
form_fields:
type: array
description: 'The list of form field data.'
example:
- hic
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: quos
assignment:
type: string
description: 'The terms of the form ("QUALITY_ASSURANCE", "SERVICE_PLANS", "PROPOSAL_TEMPLATES"). Example : "QUALITY_ASSURANCE"'
example: recusandae
form_fields:
type: array
description: 'The list of form field data.'
example:
- voluptas
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:
- eaque
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: dicta
override:
type: boolean
description: 'Determine if the import set will replace the current ones with matchinig names. Example : false'
example: false
admin_only:
type: boolean
description: 'Determine if the import set is only accessible by admin. Example : true'
example: false
required:
- tags
- import_files
- override
- admin_only
parameters:
-
in: path
name: company_uuid
description: '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:
- aut
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: vitae
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/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: 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: 17
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 17
-
in: query
name: sort_by
description: 'optional The column name.'
example: alias
required: false
schema:
type: string
description: 'optional The column name.'
example: alias
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: pariatur
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: pariatur
-
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:
- '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:
- esse
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: voluptas
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: 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: tempora
-
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: voluptatem
'/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: at
admin_only:
type: boolean
description: 'Determine if the import set is only accessible by admin. Example : true'
example: false
is_selected:
type: boolean
description: 'Determine if the import set will be automatically selected when popping the dialog. Example : true'
example: true
required:
- 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: false
is_selected:
type: boolean
description: 'Determine if the import set will be automatically selected when popping the dialog. Example : true'
example: false
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: 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: 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: nesciunt
required: false
schema:
type: string
description: 'optional The column name.'
example: nesciunt
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: qui
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: qui
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: minima
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: minima
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:
- possimus
items:
type: string
import_files:
type: files
description: 'The set of json files containing import settings data.'
example: accusantium
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: 13
required: false
schema:
type: integer
description: 'optional The page number.'
example: 13
-
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: repudiandae
required: false
schema:
type: string
description: 'optional The column name.'
example: repudiandae
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: doloremque
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: doloremque
-
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:
- '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: est
-
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: deserunt
/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:
- illum
items:
type: string
status_uuid:
type: uuid
description: 'The status UUID for company integration'
example: 6d585bee-31fb-3b86-8f38-37ccebb01b30
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:
- voluptate
items:
type: string
status_uuid:
type: uuid
description: 'The status uuid for company integration'
example: d451bd0a-136d-3718-880a-590bbe6067a1
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: 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: 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: 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: qui
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: qui
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: reiciendis
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: reiciendis
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: maxime
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Id sed eos excepturi exercitationem non quos nihil.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: nemo
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: deleniti
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Ut et et dolorum ipsum.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: blanditiis
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: cupiditate
description:
type: string
description: 'The description of the line item. Example : "Termite Pesticide"'
example: 'Odio quia molestiae qui et nesciunt dignissimos quo.'
line_item_values:
type: string
description: 'The data of the line item. Example : {"price": [100, 100]}'
example: ut
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: ipsam
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: 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: placeat
required: false
schema:
type: string
description: 'optional The column name.'
example: placeat
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: sit
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sit
-
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:
- 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: nihil
-
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: 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: 17
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 17
-
in: query
name: sort_by
description: 'optional The column name.'
example: architecto
required: false
schema:
type: string
description: 'optional The column name.'
example: architecto
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: repellat
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: repellat
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: numquam
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: numquam
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: ea0e1af0-9810-3e39-85fd-220378c11615
companies_uuid:
type: object
description: ''
example: null
properties: { }
company_location_uuid:
type: string
description: 'Must be a valid UUID.'
example: 102e8fef-51f7-39e8-8091-94f28cc24962
company_locations_uuid:
type: object
description: ''
example: null
properties: { }
media_source_uuid:
type: string
description: 'Must be a valid UUID.'
example: 791de5c6-aeb8-3cec-9a81-4bba3e9c7786
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: explicabo
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Cum modi aliquam est dolorum velit.'
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: sit
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: 'Et a non adipisci delectus vero.'
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: omnis
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: 'Omnis eos eum minima itaque.'
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: 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: 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: sit
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sit
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: maxime
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: maxime
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: maiores
description:
type: string
description: 'The description of the file. Example : This is a sample description for uploaded file'
example: 'Fuga fuga atque sit et.'
/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: sit
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: 'Maxime aut mollitia aliquam illo sit.'
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: mollitia
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 aspernatur nihil et sunt earum ipsam.'
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: ut
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: 'Placeat non eos eius omnis aut magni fuga.'
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: et
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: 'Quod maiores iure ipsam.'
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: aliquid
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: 'Qui sit officiis reiciendis fugiat molestiae mollitia.'
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: 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: 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: recusandae
required: false
schema:
type: string
description: 'optional The column name.'
example: recusandae
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: quaerat
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: quaerat
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: distinctio
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: distinctio
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: non
'/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: officiis
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: quia
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: sequi
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: 13
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 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: sed
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: sapiente
-
in: path
name: search
description: 'Optional parameter. The general search, it will find matching string. Example : home'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 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}/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: voluptatem
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: aut
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: illo
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: 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: 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: enim
required: false
schema:
type: string
description: 'optional The column name.'
example: enim
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: eum
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: eum
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: magnam
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: magnam
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: placeat
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: ea
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: eveniet
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: 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: 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: optio
required: false
schema:
type: string
description: 'optional The column name.'
example: optio
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: suscipit
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: suscipit
-
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:
- '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: dicta
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: qui
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: voluptatibus
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: 71da6128-f400-3a3e-a5d1-77dc096e1ae8
title:
type: string
description: 'The name of the proposal template. Example : Proposal Template 1'
example: omnis
description:
type: string
description: 'The name of the proposal template. Example : This is a sample description'
example: 'Aspernatur quos laudantium sit rerum tempore aut.'
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: 9
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 13
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: minus
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: et
-
in: path
name: search
description: 'Optional parameter. The general search, it will find matching string. Example : home'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: consequuntur
-
in: path
name: 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: d37d849d-a34e-36ec-a5b4-0a14d95b48ef
title:
type: string
description: 'The name of the proposal template. Example : Proposal Template 1'
example: aut
description:
type: string
description: 'The name of the proposal template. Example : This is a sample description'
example: 'Reiciendis placeat earum quia est non provident in natus.'
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: 51414968-5bc1-3005-ad24-f94b3e5a1420
title:
type: string
description: 'The name of the proposal template. Example : Proposal Template 1'
example: repellendus
description:
type: string
description: 'The name of the proposal template. Example : This is a sample description'
example: 'Et et iste ducimus repudiandae.'
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://www.altenwerth.org/similique-iste-et-iste-qui-voluptatem-labore'
proposal_pdf_url:
type: string
description: 'The pdf file url.'
example: 'https://swaniawski.biz/quibusdam-sit-distinctio-est-ex-fugiat-ipsa-recusandae.html'
auth_code:
type: string
description: ''
example: magni
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://bergstrom.com/ratione-aut-est-nemo-minus-laboriosam-similique.html'
proposal_pdf_url:
type: string
description: 'The pdf file url.'
example: 'http://www.klocko.org/mollitia-recusandae-accusantium-similique-soluta-quis-deserunt-consequatur'
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: 2799390.8577753
keyName:
type: string
description: ''
example: attached_documents
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: id
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: 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: 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: reprehenderit
required: false
schema:
type: string
description: 'optional The column name.'
example: reprehenderit
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: laudantium
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: laudantium
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: qui
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: qui
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: '2025-12-08T19:12:42'
date_range_end:
type: string
description: 'Must be a valid date. Must be a date after or equal to date_range_start.'
example: '2026-06-04'
timezone:
type: string
description: 'Must be a valid time zone, such as Africa/Accra.'
example: America/Argentina/Jujuy
company_location_uuid:
type: string
description: 'Must be a valid UUID.'
example: a34fb0a0-3a86-3a9a-a393-59aea8688844
team_uuid:
type: string
description: 'Must be a valid UUID.'
example: 62f46e97-a483-3bd3-8635-69bc5b305541
user_uuid:
type: string
description: 'Must be a valid UUID.'
example: 19116d6d-b417-30d6-9937-90ac511afa9c
template_uuid:
type: string
description: 'Must be a valid UUID.'
example: 8a8401dd-1306-3232-bb56-817702126fe5
status_uuid:
type: array
description: 'Must be a valid UUID.'
example:
- 45c17efa-475e-38f9-a783-6d677a1a08fe
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: doloremque
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Pariatur qui et provident est excepturi deleniti soluta.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: febec167-7ce0-31f4-8104-6f0045eb30fb
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 3ba139fb-11fa-3202-8a99-eeff8ca6c664
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: f33852dd-3f48-3318-926f-d8927565df30
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 6013e118-694d-3246-bbd5-f8579d471168
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:
- autem
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: 09692398-b6ec-3447-a596-14912bab5112
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: accusantium
-
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: c0bbfd27-97d6-3578-9472-06677644ad25
-
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: et
-
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: 903825e2-08a8-3934-9c25-1e54c40eda44
-
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: f2e148a5-4972-3367-8aae-7daad23d1fdd
-
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: f1effcec-23f7-3572-9199-a77396d57165
-
in: path
name: timezone
description: "Optional parameter. Optional timezone for date filtering. Falls back to user's favorite location timezone, then MST.\n Example : \"America/New_York\""
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: Africa/Lusaka
-
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: aut
-
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: blanditiis
-
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: dolor
-
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: facilis
/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: 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: 13
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 13
-
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: 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: est
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: est
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: 58a9450b-b5d7-3a6e-a4ff-db984ae0fd3f
-
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: enim
-
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: f7e03c96-8322-3483-ad90-2fc330cf7f70
-
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: 8bb16a38-67a5-361b-9d4b-ed89d07b46e5
-
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: dolorem
-
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: e235f25b-3141-301e-99ce-e7251b578a1b
/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: 804369f0-754f-3ac0-9893-8791b44b212a
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 7766c640-0f78-30bf-b2c9-0e99c7eb2590
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: a091ba18-1887-38c1-879d-f8f0ca2c17a5
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: f38ef51e-9806-394d-8d91-3b6b7ff60a8c
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:
- tempore
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: 3e1437f5-fc22-34b9-88c4-3e3c584b185e
include_fields:
type: object
description: ''
example: null
properties: { }
expire_at:
type: string
description: 'Must be a valid date.'
example: '2025-12-08T19:12:42'
tag_uuids:
type: array
description: 'Must be a valid UUID.'
example:
- d11af7f6-5def-3a23-89fc-48d389dfa8f3
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: dolor
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Aliquid repellat fuga aut error excepturi veniam accusantium.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: be69e6ca-937c-337e-bb45-f444e1ca6cbd
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 37586815-cf49-380f-a334-3317b81b8cb1
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: cc00bef4-4c35-321d-b074-b1b4477a76b9
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 18338f50-e1b0-385e-a75a-66549153a495
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:
- molestiae
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: 72ee672c-6edb-367e-8c5d-f6b46a8aab42
include_fields:
type: object
description: ''
example: null
properties: { }
expire_at:
type: string
description: 'Must be a valid date.'
example: '2025-12-08T19:12:42'
tag_uuids:
type: array
description: 'Must be a valid UUID.'
example:
- 35102012-4b35-3fd5-9cab-72f85ed87985
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: 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: 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: consequuntur
required: false
schema:
type: string
description: 'optional The column name.'
example: consequuntur
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: ut
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: ut
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: nisi
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: nisi
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: voluptate
description:
type: string
description: 'The paragraph describing the proposal.'
example: 'Eius rerum et quae est aspernatur nulla in.'
company_location_uuid:
type: string
description: "The UUID of user's company location.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: c581514b-207c-3c7d-bae4-e5165bfd46ef
customer_uuid:
type: string
description: "The UUID of customer you wish to send the proposal.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: bbaeea84-7d49-3f98-b832-3655cb3d6d92
customer_address_uuid:
type: string
description: "The UUID of customer's address.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: 366bf105-de63-3e8d-8a17-f0cc2d942c01
status_uuid:
type: string
description: "The UUID of proposal status.\n Example : \"815d3d9c-f371-3781-8456-7e6954b5b0f5\""
example: b1e808d4-cb51-3305-a94a-ef0978c35c8a
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:
- voluptatem
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: e9f93f6f-92ee-39ed-821a-809e565609c1
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: 'http://armstrong.com/consequatur-voluptatem-adipisci-et-labore-unde.html'
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: nostrum
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: 9
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 14
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: aut
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: consequatur
-
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: id
-
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: maxime
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: a
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: 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: 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: 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: repudiandae
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: repudiandae
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: facilis
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: facilis
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: dolores
-
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: provident
-
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: 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: eum
required: false
schema:
type: string
description: 'optional The column name.'
example: eum
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: sed
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: sed
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: nam
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: nam
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: corporis
-
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: excepturi
-
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: ut
-
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: aliquam
-
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: ddf5416c-c542-35cd-92ce-6dbc68efbfdd
-
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: illo
-
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: 89da4a9c-7850-38cf-96c4-955d30ff7bea
-
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: 16
required: false
schema:
type: integer
description: 'optional The page number.'
example: 16
-
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: saepe
required: false
schema:
type: string
description: 'optional The column name.'
example: saepe
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: tempore
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: tempore
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: repellendus
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: repellendus
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: aut
message:
type: string
description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: omnis
rate:
type: string
description: 'The rate of the review ranging from 0-5. Example : 5'
example: nostrum
photo:
type: string
format: binary
description: 'The file photo of the review..jpg, .jpeg, .png'
external_photo_url:
type: string
description: 'An external url of an image as review/photo.'
example: 'http://www.mertz.com/consequatur-quibusdam-dicta-similique-ipsam-est-quia.html'
position:
type: integer
description: 'The the position of the review. Example : 2'
example: 17
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: 534b529e-99c1-35f2-b1a8-d4fc266be5b1
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: aut
-
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: architecto
message:
type: string
description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: nihil
rate:
type: string
description: 'The rate of the review ranging from 0-5. Example : 5'
example: dolores
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://kirlin.info/voluptatum-iste-quae-ratione-quia-incidunt-soluta.html'
position:
type: integer
description: 'The the position of the review. Example : 2'
example: 1
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: 02b59474-2a69-36b6-a959-1d7343953b02
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: repellendus
message:
type: string
description: 'The message of the review. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: quisquam
rate:
type: string
description: 'The rate of the review ranging from 0-5. Example : 5'
example: laboriosam
external_photo_url:
type: string
description: 'An external url of an image as review/photo.'
example: 'http://skiles.biz/ut-enim-eligendi-asperiores-ipsum-dolor'
position:
type: integer
description: 'The the position of the review. Example : 2'
example: 4
company_location_uuid:
type: uuid
description: 'The company location to be associated to the review. Leaving empty/blank means visible to all company locations.'
example: 6750b054-427a-3663-8d7f-1aaa7cb35709
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: 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: 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: voluptate
required: false
schema:
type: string
description: 'optional The column name.'
example: voluptate
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: et
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: et
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: laborum
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: laborum
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: esse
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Rerum eum est aspernatur odio voluptatibus aut occaecati.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: perspiciatis
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 14
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: temporibus
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- eos
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 1
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: 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}/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: cum
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Non fuga officiis reprehenderit quae ut.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: inventore
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 3
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: qui
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- error
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 17
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: sint
description:
type: string
description: 'The description of the schedule. Example : "Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequatur dolores iste quae soluta."'
example: 'Error quam ut mollitia sit quis atque.'
type:
type: string
description: 'The type of the schedule (service, billing). Example : "service"'
example: neque
units:
type: integer
description: 'The number of week(s)/month(s)/year(s) of a schedule. Example : 5'
example: 2
term:
type: string
description: 'The terms of the schedule (week/month/year). Example : week'
example: facilis
enabled_service_months:
type: array
description: 'The list of integer which represents a month. Example : [1, 2, 12] means ["January", "February", "December"]'
example:
- aliquam
items:
type: string
visits:
type: integer
description: 'The number of visits of the schedule. Example : 52'
example: 18
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: 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: 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: eveniet
required: false
schema:
type: string
description: 'optional The column name.'
example: eveniet
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: qui
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: qui
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: deleniti
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: deleniti
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: est
content:
type: string
description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor'
example: delectus
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: quis
-
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: dolorum
content:
type: string
description: 'The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor'
example: deleniti
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: eos
content:
type: string
description: 'optional The content of the service agreement. Example : Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor'
example: qui
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: numquam
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: voluptas
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: 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: 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: earum
required: false
schema:
type: string
description: 'optional The column name.'
example: earum
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: enim
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: enim
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: qui
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: qui
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: s
items:
type: string
save_service_plan_as:
type: string
description: ''
example: SERVICE_PLAN_ACTIVE
enum:
- SERVICE_PLAN_DRAFT
- SERVICE_PLAN_ACTIVE
- SERVICE_PLAN_ARCHIVED
label:
type: string
description: 'The label Service Plan Custom Field.'
example: 'First Name'
input_type:
type: string
description: 'The field type of the custom field.'
example: TEXT
default_value:
type: string
description: 'optional The default value of the custom field.'
example: '""'
combine_input_value_collection:
type: boolean
description: 'optional The option to combine custom fields by label.'
example: true
required:
- label
- input_type
parameters:
-
in: path
name: servicePlan_uuid
description: '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: xfvjwentttathbbalncnoxoa
items:
type: string
save_service_plan_as:
type: string
description: ''
example: SERVICE_PLAN_ACTIVE
enum:
- SERVICE_PLAN_DRAFT
- SERVICE_PLAN_ACTIVE
- SERVICE_PLAN_ARCHIVED
label:
type: string
description: 'The label Service Plan Custom Field.'
example: 'First Name'
input_type:
type: string
description: 'The field type of the custom field.'
example: TEXT
default_value:
type: string
description: 'optional The default value of the custom field.'
example: '""'
combine_input_value_collection:
type: boolean
description: 'optional The option to combine custom fields by label.'
example: true
required:
- label
- input_type
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: 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: 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: ea
required: false
schema:
type: string
description: 'optional The column name.'
example: ea
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: qui
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: qui
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: eligendi
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: eligendi
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_DRAFT
enum:
- SERVICE_PLAN_DRAFT
- SERVICE_PLAN_ACTIVE
- SERVICE_PLAN_ARCHIVED
name:
type: string
description: 'The name of Service Plan Pricing Group.'
example: 'Premium Service Plan Pricing Group'
frequency:
type: string
description: 'The frequency of Service Plan Pricing Group.'
example: MONTHLY
pricing_type:
type: string
description: 'The pricing type of Service Plan Pricing Group.'
example: DYNAMIC_RANGE_PRICE
apply_taxes:
type: boolean
description: 'The support request details.'
example: true
description:
type: string
description: 'The support request details.'
example: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit...'
pricing_data:
type: object
description: 'The support request details.'
example:
type: 'The Price'
default: 'The Pricing'
max: '1000.00'
properties: { }
required:
- pricing_group
- name
- frequency
- pricing_type
- apply_taxes
- description
- pricing_data
patch:
summary: Patch
operationId: patch
description: 'Perform patches for the specified Service Plan Pricing Group.'
parameters: []
responses: { }
tags:
- 'Service Plan Pricing 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: 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: 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: molestias
required: false
schema:
type: string
description: 'optional The column name.'
example: molestias
-
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: excepturi
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: excepturi
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: quo
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: 53.790031
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: et
description:
type: string
description: 'The description of Service Plan.'
example: 'Lorem ipsum dolor sit amet consectetur adipisicing elit'
company_locations_uuid:
type: array
description: 'List of company_location_uuid.'
example:
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
items:
type: string
categories_uuid:
type: array
description: 'List of category_uuid. Example:'
example:
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
- 10933939-447e-3d2c-944f-b3ef57dc6eeb
items:
type: string
default_contract_term:
type: string
description: ''
example: null
default_contract_term_units:
type: number
description: ''
example: 9.139939
save_as:
type: string
description: ''
example: SERVICE_PLAN_ARCHIVED
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: facilis
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: 8010.21811
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: 789f8602-f2b8-39d4-94e9-cfb91b79f7d5
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: dolor
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: 5
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 18
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: dolorum
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: culpa
-
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: illo
-
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: nihil
-
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: 167dbc7b-8149-378f-9ccb-12dbdd94be31
'/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: ad923153-b544-38dc-a7cf-2bae52223e68
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: corrupti
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: 681e8d62-bf7c-390d-9731-7af9423b3760
name:
type: string
description: 'The name of the solution. Example : Solution 1'
example: aliquid
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: true
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: et
-
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: false
post:
summary: Store
operationId: store
description: 'Store a new solution category.'
parameters: []
responses: { }
tags:
- 'Solution Category'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'The name of the solution category. Example : Solution Category 1'
example: dolore
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: 1
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 13
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: autem
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: aut
-
in: path
name: search
description: 'Optional parameter. The general search, it will find matching string. Example : home'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: vel
-
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: rerum
'/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: quaerat
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: eveniet
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: sed
-
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: 20
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: 6
-
in: path
name: page_size
description: 'Optional parameter. The number of record you want per page. Example : 5'
required: true
schema:
type: integer
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: 18
-
in: path
name: sort_by
description: 'Optional parameter. The column name. Example : name'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: optio
-
in: path
name: sort_order
description: 'Optional parameter. The order in which you want your records. Example : asc'
required: true
schema:
type: string
examples:
omitted:
summary: 'When the value is omitted'
value: ''
present:
summary: 'When the value is present'
value: nisi
-
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: dicta
-
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: 18
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: 1
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: 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: 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: adipisci
required: false
schema:
type: string
description: 'optional The column name.'
example: adipisci
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: repudiandae
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: repudiandae
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: cum
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: cum
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: corporis
source:
type: string
description: 'The source of the symbol. Example : text'
example: asperiores
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Aut dolorem nam dolor.'
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:
- laborum
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: tempora
-
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: ut
-
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: ducimus
source:
type: string
description: 'The source of the symbol. Example : text'
example: aut
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Explicabo corporis atque asperiores deleniti voluptates dolorem incidunt.'
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:
- qui
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: voluptatibus
source:
type: string
description: 'The source of the symbol. Example : text'
example: at
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Ratione quisquam laudantium vel eos.'
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:
- quasi
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: sed
source:
type: string
description: 'The source of the symbol. Example : text'
example: molestiae
description:
type: string
description: 'optional The description of the symbol. Example : text'
example: 'Iusto enim doloremque cumque 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.'
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: 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: 13
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 13
-
in: query
name: sort_by
description: 'optional The column name.'
example: iure
required: false
schema:
type: string
description: 'optional The column name.'
example: iure
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: eveniet
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: eveniet
-
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:
- 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: ut
-
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: et
'/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: 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: 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: similique
required: false
schema:
type: string
description: 'optional The column name.'
example: similique
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: voluptatibus
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: voluptatibus
-
in: query
name: search
description: 'optional The general search.'
example: totam
required: false
schema:
type: string
description: 'optional The general search.'
example: totam
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: ipsum
'/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: 16
required: false
schema:
type: integer
description: 'optional The page number.'
example: 16
-
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: vel
required: false
schema:
type: string
description: 'optional The column name.'
example: vel
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: aperiam
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: aperiam
-
in: query
name: search
description: 'optional The general search, it will find matching string (name, postal_code, cities).'
example: dolores
required: false
schema:
type: string
description: 'optional The general search, it will find matching string (name, postal_code, cities).'
example: dolores
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: 8724e1e0-906d-3967-837a-4cca4571e064
country_state_uuids:
type: array
description: 'An array of country state UUID. Example : ["815d3d9c-f371-3781-8456-7e6954b5b0f5", "815d3d9c-f371-3781-8456-7e6954b5b0f2"]'
example:
- nisi
items:
type: string
name:
type: string
description: 'The name of the tax. Example : Pest Route Initial Proposal'
example: et
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: 1dafbc61-d20b-31a7-9025-b09419b96686
-
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: 5
-
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: natus
-
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: 6503c6fe-b516-3b85-a46c-a6091c51f570
country_state_uuids:
type: array
description: 'The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"'
example:
- necessitatibus
items:
type: string
name:
type: string
description: 'The name of the tax. Example : Pest Route Initial Proposal'
example: modi
postal_codes:
type: string
description: 'optional The postal code of the company.'
example: '85410'
cities:
type: string
description: 'The company city name.'
example: 'Queen Creek'
rate:
type: decimal
description: 'The tax rate.'
example: '12.0000'
is_compound:
type: boolean
description: 'A flag that indicate if the tax is a compound.'
example: true
rank:
type: integer
description: 'The rank/order number of tax in a company.'
example: 1
required:
- country_uuid
- country_state_uuids
- name
- cities
- rate
- is_compound
patch:
summary: Patch
operationId: patch
description: 'Patch a tax.'
parameters: []
responses: { }
tags:
- 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: 767e2eaa-8701-3eef-9b67-ac0fdd72a660
country_state_uuids:
type: array
description: 'optional The UUID of a country state. Example : "815d3d9c-f371-3781-8456-7e6954b5b0f5"'
example:
- eos
items:
type: string
name:
type: string
description: 'optional The name of the tax. Example : Pest Route Initial Proposal'
example: eius
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: 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: 17
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 17
-
in: query
name: sort_by
description: 'optional The column name.'
example: tempore
required: false
schema:
type: string
description: 'optional The column name.'
example: tempore
-
in: query
name: sort_order
description: 'optional The order in which you want your records.'
example: impedit
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: impedit
-
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:
- 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: ut
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: quas
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: assumenda
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:
- est
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: officiis
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: 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: 17
required: false
schema:
type: integer
description: 'optional The number of record you want per page.'
example: 17
-
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: enim
required: false
schema:
type: string
description: 'optional The order in which you want your records.'
example: enim
-
in: query
name: search
description: 'optional The general search, it will find matching string.'
example: numquam
required: false
schema:
type: string
description: 'optional The general search, it will find matching string.'
example: numquam
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: []