REST API Reference

Authentication to work with API

Request Type Description Request Headers Request Data Response
rest/V1/integration/customer/token
POST Get authentication token for future Requests. Lifetime of token -  1 hour Content-Type: application/json email: <email>
password: <password>
<Authentication token> (STRING)
 

 

Agreements

Request
Type
Description
Request Headers
Request Data
Response
Notes
rest/V1/agreement/content/:typeId
GET Get text conent of agreements: Platform User Agreement, Service Buyer Agreement, Service Provider Agreement
Content-Type: application/json
  <agreement_template> (STRING)

Possible typed ids:

USER = 0;

BUYER = 1;

PROVIDER = 2;

 

Catalog

Request
Type
Description
Request Headers
Request Data
Response
Notes
rest/V1/profiles/category-selector
GET Taxonomy to categorize Business, Professional, Service profiles, and Projects.
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <category_tree> (JSON STRING)  
rest/V1/profiles/predefined-image/:type
GET Get default image for Business, Professional, or Service profiles based on user settings image
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
company: <company_object>

{image_url: url} (JSON STRING)

Possible types:

  • company
  • professional
  • service
rest/V1/catalog-product/assets/upload
POST Uploading assets to the server to create a relation between asset and Business or Professional profiles
Content-Type: multipart/form-data

Access-Control-Allow-Origin': *

Authorization: 'Bearer ' + Authentication token
assets: base64file (FORM DATA)
url: <url_file_on_server>
name: <url_file_on_server>
extension_type: <extension_of_file>

 (JSON STRING)
 

 

Team Account(Company Entity)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/company/me
GET Team account settings data: legal address and company meta information, profile image, Stripe status etc.
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <company_object> (JSON STRING)
rest/V1/company/me
PUT Update team account settings data
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
company: <company_object> <company_object> (JSON STRING)
rest/V1/company/me/role/list
GET List of available team account roles
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_of_roles> (JSON STRING)

 

Team User Management (Company Entity)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/company/me/user/:customerId
 
GET Get user team status and role
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <user_object> (JSON STRING)
rest/V1/company/me/user
POST Create/update team user
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
user: <user_object> <user_object> (JSON STRING)
rest//V1/company/me/user/list
GET Get list of current team users
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_of_users> (JSON STRING)
rest/V1/company/me/user/:customerId
DELETE Delete team user
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_of_users> (JSON STRING)

 

Individual User (Customer Entity)

Request
Type
Description
Request Headers
Request Data
Response
Notes
rest/V1/customer/me
 
GET User settings data: legal address and meta information, profile image, Stripe status, insurance documents, applied agreements etc.
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <customer_object> (JSON STRING)  
rest/V1/customer/me
PUT Update user settings data
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
customer: <customer_object> <customer_object> (JSON STRING)  
rest/V1/customer/insurance-documents/upload
POST Upload insurance documents and link them to user/team
Content-Type: multipart/form-data

Access-Control-Allow-Origin': *

Authorization: 'Bearer ' + Authentication token
insurance_documents: base64file (FORM DATA)
url: <url_file_on_server>
name: <url_file_on_server>
extension_type: <extension_of_file>

 (JSON STRING)
 
rest/V1/customer/agreement/apply/:typeId
POST Apply certain agreement type to current user: Platform User Agreement, Service Buyer Agreement, Service Provider Agreement
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
 

Possible types:

  • company
  • professional
  • service

Possible typed ids:

USER = 0;

BUYER = 1;

PROVIDER = 2;

 

Business Profile (Company Product)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/company/me/company-product
 
GET Business Profile for Team Account of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
companyId: <company_id> <company_object> (JSON STRING)
rest/V1/company/me/company-product
POST Create/Update Business Profile for Team Account of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
product: <company_object> <company_object> (JSON STRING)
rest/V1/company/me/company-product
DELETE Delete Business Profile for Team Account of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
companyId: <company_id> true

 

Professional Profile (Professional Product)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/customer/me/professional-product
 
 
GET Professional Profile of Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <professional_object> (JSON STRING)
rest/V1/company/me/professional-product/list
GET List of Professional Profiles for Team Account of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_professional_objects> (JSON STRING)
rest/V1/customer/me/professional-product
POST Create/Update Professional Profile of Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
product: <professiobal_object> <professional_object> (JSON STRING)
rest/V1/customer/me/professional-product
DELETE Delete Professional Profile of Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  true

 

Project (Project Product)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/customer/me/project-product
 
GET Project for Individual or Team Account User of Service Buyer
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
projectId: <projectId_id> <project_object>  (JSON STRING)
rest/V1/customer/me/project-product/list
GET List of Projects for the current user of Service Buyer
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_project_objects>  (JSON STRING)
rest/V1/customer/me/project-product
POST Create/Update Project for Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
product: <project_object> <project_object> (JSON STRING)
rest/V1/customer/me/project-product
DELETE Delete Project Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
projectId: <project_id>
true
rest/V1/project-product/scope/upload
POST Upload attachments and link them to Project
Content-Type: multipart/form-data

Access-Control-Allow-Origin': *

Authorization: 'Bearer ' + Authentication token
attachment: base64file (FORM DATA)
url: <url_file_on_server>
name: <url_file_on_server>
extension_type: <extension_of_file>

 (JSON STRING)
rest/V1/project-product/service-providers/autocomplete
 
GET Search for active Service Providers
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
query: <customer|profile name>*

* - minimum 3 length
<array_service_providers_objects>  (JSON STRING)
rest/V1/project-product/project-attendee
GET List of Team Account Users selected as Project Attendees
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_project_attendee_objects>  (JSON STRING)

 

Service Profile (Service Product)

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/customer/me/service-product
 
GET Service Profile of Individual or Team Account Useer of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
productId: <product_id> <service_object> (JSON STRING)
rest/V1/customer/me/service-product/list
GET List of Service Profiles for Individual Account
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_service_objects> (JSON STRING)
rest/V1/company/me/service-product/getList
GET List of Service Profiles for Team Account
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
   
 
rest/V1/customer/me/service-product
 
POST Create/Update Service Profile of Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
product: <service_object> <service_object> (JSON STRING)
rest/V1/customer/me/service-product
DELETE Delete Service Profile of Individual or Team Account User of Service Provider
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
productId: <product_id> true
rest/V1/service-product/scope/upload
POST Upload attachments and link them to Service Profile
Content-Type: multipart/form-data

Access-Control-Allow-Origin': *

Authorization: 'Bearer ' + Authentication token
attachment: base64file (FORM DATA)
 
url: <url_file_on_server>
name: <url_file_on_server>
extension_type: <extension_of_file>

 (JSON STRING)

 

Stripe

Request
Type
Description
Request Headers
Request Data
Response
Notes
rest/V1/stripe/me/connect
 
GET Get Stripe onboarding status, return onboarding link or Stripe dashboard link depending on status
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
 

url: <url_type_of_board>

type: <type of onboarding>

 

Response type:
express-dashboard (you're connected)
connect-onboard (not connected)

 

Work Order

Request
Type
Description
Request Headers
Request Data
Response
rest/V1/work-order/me/{workOrderId}
 
GET Work Order data: terms, business requirements, service items, approvers
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <workorder_object> (JSON STRING)
rest/V1/work-order/me/getList
GET List of work orders 
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
  <array_workorder_objects> (JSON STRING)
rest/V1/work-order/approvers/list
GET List of users eligible to be added as approvers to the work order
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token
workOrderId: <workorder_id> <array_users_objects> (JSON STRING)
rest/V1/work-order/me
POST Update work order
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token

workOrder: <workorder_object>

<workorder_object> (JSON STRING)
rest/V1/work-order/me/create
POST Create work order from project with all or certain service items
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token

projectId: <project_id>,

requestData: <service_items_object>

<workorder_object> (JSON STRING)
rest/V1/work-order/me/invoice
POST Create Stripe Invoice for the work order with all or certain service items
Content-Type: application/json
Authorization: 'Bearer ' + Authentication token

workOrderId: <workorder_id>,
options: <service_items_object>,
invoiceTerms: <>

true

Was this article helpful?

0 out of 0 found this helpful