NAV
javascript

Introduction

Welcome to the generated API reference.

Do you use Postman? Great.
Get Postman Collection
Get Postman Environment

Header

Header Value When should I send?
Accept application/json All requests
Content-Type application/x-www-form-urlencoded Must send when passing query string in request body
Content-Type application/json Must send when passing json in request body
Content-Type multipart/form-data Must send when passing files in request body
Authorization Bearer access_token Whenever the resource requires an authenticated user
Language language All requests

Controlling requests

All API requests are limited to prevent abuse and ensure stability.
The limit is usually 120 requests every 1 minute. But each route can have its own limit.
You can always check the response header to have a status of available requests:

X-RateLimit-Limit → 120
X-RateLimit-Remaining → 25

Errors

API uses the following error codes:

Error Code Meaning
400 Bad Request -- Your request sucks
401 Unauthorized -- Your API key is wrong
403 Forbidden -- You are not authorized or do not have permission to access
404 Not Found -- The specified page can not be found
405 Method Not Allowed -- Method not allowed for this request
406 Not Acceptable -- You have requested a format that is not valid
410 Gone -- The target resource is no longer available
413 Payload Too Large -- Request payload is larger than the server is willing or able to process
422 Unprocessable Entity -- Validation error, the given data was invalid
429 Too Many Requests -- You have sent too many requests in a certain amount of time ("rate limiting")
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarially offline for maintanance. Please try again later.

Authentication

Login

5 login attempts can be performed every 1 minute.

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/login",
    "headers": {
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "email": "meireles.noel@example.org",
        "password": "m9ByuViZW8",
        "token_name": "My Computer"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

{
    "token_type": "Bearer",
    "access_token": "eyJ0eXAiOiJ..."
}

HTTP Request

POST api/v1/customer/auth/login

No authentication required

Parameters

Parameter Type Validation Description
email string required|email
password string required|string|min:6
token_name string required|string|max:191 Client app name

Password recovery

Send password reset link do user

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/password/recovery",
    "headers": {
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "email": "vespinoza@example.net"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

{
    "message": "Success message"
}

HTTP Request

POST api/v1/customer/auth/password/recovery

No authentication required

Parameters

Parameter Type Validation Description
email string required|email

Reset the given user's password.

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/password/reset",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

POST api/v1/customer/auth/password/reset

Logout

Example request:

const axios = require('axios');

axios({
    "method": "delete",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/logout",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

DELETE api/v1/customer/auth/logout

Get the authenticated user

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/user",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/auth/user

Get all tokens

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/tokens",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/auth/tokens

Delete token

Example request:

const axios = require('axios');

axios({
    "method": "delete",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/tokens/{tokenId}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

DELETE api/v1/customer/auth/tokens/{tokenId}

Change password

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/change-password",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "password": "my_current_password",
        "password_new": "my_new_password",
        "password_new_confirmation": "my_new_password"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

POST api/v1/customer/auth/change-password

Parameters

Parameter Type Validation Description
password string required|string|min:6 Current password
password_new string required|string|min:6 New password
password_new_confirmation string required|string|min:6 Confirmation, must equal password_new

Change avatar

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/change-avatar",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "multipart/form-data",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "avatar": "{file}"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

{
    "file_url": "{url}"
}

HTTP Request

POST api/v1/customer/auth/change-avatar

Parameters

Parameter Type Validation Description
avatar file required|mimes:jpeg,png|max:4mb

Update lider de equipe

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/update",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "multipart/form-data",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "avatar": "{file}",
        "name": "Srta. Gabi Ramires Filho",
        "documento": "Quisquam quo ipsa quidem optio eos.",
        "phone": "Pariatur tempora asperiores impedit odio.",
        "city_id": "7c4e5275-6bb5-3076-a5a2-c72e9fc32484",
        "email": "esteves.poliana@example.org",
        "zipcode": "Esse distinctio architecto similique suscipit id ut dolorem.",
        "street": "Praesentium consequuntur voluptas voluptatibus magnam ut fugiat in.",
        "number": "Doloremque velit voluptatem dolorem voluptatem incidunt.",
        "complement": "Dolores quo fugiat aut earum.",
        "district": "Cupiditate aut itaque odio id soluta pariatur.",
        "is_active": "0"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

POST api/v1/customer/auth/update

Parameters

Parameter Type Validation Description
avatar file nullable|mimes:jpeg,jpg,png|max:7mb
name string nullable|string|max:50
documento string nullable|string|max:20
phone string nullable|string|max:15
city_id string uuid City relationship
email string sometime|nullable|string|email|max:100
zipcode string sometime|nullable|string|max:191
street string sometime|nullable|string|max:191
number string sometime|nullable|string|max:191
complement string sometime|nullable|string|max:191
district string sometime|nullable|string|max:191
is_active boolean boolean

Delete account

Example request:

const axios = require('axios');

axios({
    "method": "delete",
    "url": "http://147.182.218.201:8447/api/v1/customer/auth/delete-account",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

DELETE api/v1/customer/auth/delete-account

Diario

Get cronograma

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/cronograma/{obra}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/diario/cronograma/{obra}

Get estatistica

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/estatistica/{obra}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/diario/estatistica/{obra}

Get all diarios

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/obra/{obra}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/diario/obra/{obra}

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id nome is_active created_at
search string string Search in the fields: nome logradouro
day[0] string string ISO 8601 Y-m-d Initial date
day[1] string string ISO 8601 Y-m-d Final date
created_at[0] string string ISO 8601 Y-m-d\TH:i:sP Initial date
created_at[1] string string ISO 8601 Y-m-d\TH:i:sP Final date

Get diario

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/{diario}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/diario/{diario}

Get etapas

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/etapas/{diario}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/diario/etapas/{diario}

Create profissional

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/create-profissional",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "application/x-www-form-urlencoded",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "name": "Arthur Willian Zamana Filho",
        "cidade": "e120c493-a2ca-3549-82ed-dff85f1359fe",
        "documento": "Animi sed cupiditate et.",
        "email": "alice.soares@example.net",
        "phone": "Omnis at fugit qui ratione eligendi temporibus reiciendis.",
        "zipcode": "Minus non qui tempore ratione.",
        "street": "Debitis sapiente eaque qui in saepe.",
        "number": "Velit pariatur rerum adipisci eum quo ut.",
        "complement": "Dolorum quo dicta inventore expedita omnis aut.",
        "district": "Iure iste placeat ut laudantium rem laborum quas fuga."
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

POST api/v1/customer/diario/create-profissional

Parameters

Parameter Type Validation Description
name string required|string|max:50
cidade string nullable|string|max:191
documento string required|string|max:191
email string required|string|email|max:100
phone string nullable|string|max:191
zipcode string nullable|string|max:191
street string nullable|string|max:191
number string nullable|string|max:191
complement string nullable|string|max:191
district string nullable|string|max:191

Create diario

Example request:

const axios = require('axios');

axios({
    "method": "post",
    "url": "http://147.182.218.201:8447/api/v1/customer/diario/create",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Content-Type": "multipart/form-data",
        "Accept": "application/json",
        "Language": "{language}"
    },
    "data": {
        "obra_id": "beae93f4-ba47-36b3-ad00-2881e4483331",
        "day": "2024-07-29T00:00:00-03:00",
        "profissionais[]": "3cfe6196-5577-31f3-b7bc-2ce1cf5563a3",
        "presenca[]": "1",
        "motivo[]": "Accusantium quibusdam sint consequatur velit aut et.",
        "condicao_manha": "Sol",
        "condicao_tarde": "Nublado",
        "prejudicou_obra": "1",
        "obra_parada_cliente": "0",
        "etapas_pecas[]": "Asperiores quam qui optio ab.",
        "pecas[][]": "6a371f6b-c6d7-39da-9153-3535d0897a37",
        "montadas[][]": 2,
        "descarregadas[][]": 11,
        "defeituosas[][]": 8,
        "equipamentos[]": "5a98ceff-751e-3e6d-82fb-9e8cf610f641",
        "equip_alugado[]": "Distinctio dolores non deserunt ipsam.",
        "data_inicio[]": "2024-07-29T09:00:00-03:00",
        "data_fim[]": "2024-07-29T18:00:00-03:00",
        "ocorrencia": "Mollitia ipsa cum necessitatibus repellendus dolorum.",
        "midias_ocorrencia[]": "{file}",
        "etapas[]": "Hic expedita nemo nobis voluptatem.",
        "categoria": "Amet veniam adipisci nesciunt accusantium.",
        "atividade": "Ullam ab animi qui non modi.",
        "hora_inicio": "2019-07-29T00:00:00-03:00",
        "hora_fim": "2019-07-29T00:00:00-03:00",
        "status": "Conclu\u00eddo",
        "midias_atividadecomplementar[]": "{file}"
}
})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

HTTP Request

POST api/v1/customer/diario/create

Parameters

Parameter Type Validation Description
obra_id string required|string static(2) Obra relationship
day string string ISO 8601 Y-m-d\TH:i:sP Initial date
profissionais[] array required|array Array de uuid de profissionais
presenca[] array required|array Array de booleano (0,1), se foi presente ou ausente, mesma ordem do array de profissionais
motivo[] array nullable|array Array de string (max: 191 caracteres), se foi ausente o motivo, mesma ordem do array de profissionais
condicao_manha string required|string Available values: Sol Chuva Nublado
condicao_tarde string required|string Available values: Sol Chuva Nublado
prejudicou_obra boolean required|boolean Default true
obra_parada_cliente boolean required|boolean Default true
etapas_pecas[] array required|array Array de id de etapas
pecas[][] array required|array Array de arrays de uuid de pecas
montadas[][] array required|array static(1) Array de arrays de quantidade
descarregadas[][] array required|array static(1) Array de quantidade
defeituosas[][] array required|array static(1) Array de quantidade
equipamentos[] array nullable|array Array de uuid de equipamentos
equip_alugado[] array nullable|array nome de equipamentos alugados
data_inicio[] array nullable|array ISO 8601 Y-m-d\TH:i:sP data de inicio do equipamento alugado
data_fim[] array nullable|array ISO 8601 Y-m-d\TH:i:sP data de fim do equipamento alugado
ocorrencia string nullable|max:191 texto sobre o ocorrido na obra, com insercao de midias
midias_ocorrencia[] file nullable|mimes:jpg,jpeg,png,mp4,avi,mov,webm,mpg,ogg,mkv,flv|max:4mb midias sobre o ocorrido
etapas[] array nullable|array Array de id de etapas
categoria string nullable|string
atividade string nullable|string
hora_inicio string nullable|string ISO 8601 Y-m-d\TH:i:sP
hora_fim string nullable|string ISO 8601 Y-m-d\TH:i:sP
status string nullable|string Available values: Concluído Andamento Encerrado
midias_atividadecomplementar[] file nullable|mimes:jpg,jpeg,png,mp4,avi,mov,webm,mpg,ogg,mkv,flv|max:4mb midias sobre a atividade complementar

Equipamentos

Get all equipamentos

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/equipamentos",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/equipamentos

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id nome is_active created_at
search string string Search in the fields: nome logradouro
created_at[0] string string ISO 8601 Y-m-d\TH:i:sP Initial date
created_at[1] string string ISO 8601 Y-m-d\TH:i:sP Final date

Faq

Get all faq

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/faq",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/faq

No authentication required

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id name order created_at updated_at
search string string Search in the fields: uuid name

Get faq

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/faq/{faq}",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/faq/{faq}

No authentication required

How It Works

Get all how it works

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/how-it-works",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/how-it-works

No authentication required

Permission required

how-it-works.list

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id name order created_at updated_at
search string string Search in the fields: uuid name

Get how it works

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/how-it-works/{how_it_works}",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/how-it-works/{how_it_works}

No authentication required

Permission required

how-it-works.show

Institutional

About app

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/institutional/about-app",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/institutional/about-app

No authentication required

About company

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/institutional/company-app",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/institutional/company-app

No authentication required

Privacy policy

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/institutional/privacy-policy",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/institutional/privacy-policy

No authentication required

Terms of use

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/institutional/terms-of-use",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/institutional/terms-of-use

No authentication required

Obra

Get all obras do usuario logado

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/obra",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/obra

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id nome is_active created_at
search string string Search in the fields: nome logradouro
status[0] string string Array de status: Para iniciar,Andamento,Entregue,Parado,Na fila,Pausada
created_at[0] string string ISO 8601 Y-m-d\TH:i:sP Initial date
created_at[1] string string ISO 8601 Y-m-d\TH:i:sP Final date

Get Etapas da obra

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/obra/etapas/{obra}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/obra/etapas/{obra}

Permission required

obra.show

Get obra

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/obra/{obra}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/obra/{obra}

Permission required

obra.show

OnBoarding

Get all onboardings

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/onboarding",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/onboarding

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id frase frase2 created_at
search string string Search in the fields: frase frase2

Pecas

Get all peças

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/pecas/{categoriapeca}",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/pecas/{categoriapeca}

Permission required

peca.list

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id nome codigo created_at
search string string Search in the fields: nome codigo
created_at[0] string string ISO 8601 Y-m-d\TH:i:sP Initial date
created_at[1] string string ISO 8601 Y-m-d\TH:i:sP Final date

Profissionais

Get all profissionais

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/profissionais",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/profissionais

Query Parameters

Parameter Type Validation Description
limit integer integer Default: 20 Max: 100
page integer integer
orderBy string string Default: id:asc.
Available fields: id nome is_active created_at
search string string Search in the fields: nome logradouro
created_at[0] string string ISO 8601 Y-m-d\TH:i:sP Initial date
created_at[1] string string ISO 8601 Y-m-d\TH:i:sP Final date

Settings General

Get settings

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/settings/general",
    "headers": {
        "Authorization": "Bearer {access_token}",
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/settings/general

Permission required

settings-general.list

Webservice

Cities

Search city, must enter at least one of the search fields search or state_abbr
List a maximum of 50 items.

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/webservice/cities",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/webservice/cities

No authentication required

Query Parameters

Parameter Type Validation Description
search string string Search in the fields: full_name
state_abbr string string

States

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/webservice/states",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/webservice/states

No authentication required

Query Parameters

Parameter Type Validation Description
search string string Search in the fields: name

Find zipcode

Example request:

const axios = require('axios');

axios({
    "method": "get",
    "url": "http://147.182.218.201:8447/api/v1/customer/webservice/zipcode/{zipcode}",
    "headers": {
        "Accept": "application/json",
        "Language": "{language}"
    }})
.then(function (response) {
    // handle success
    console.log(response);
})
.catch(function (error) {
    // handle error
    console.log(error);
})
.finally(function () {
    // optional, always executed
});

Example response:

null

HTTP Request

GET api/v1/customer/webservice/zipcode/{zipcode}

No authentication required