Início Rápido Atualizado por último em: 21/09/2026 09:00

Se você deseja saber como começar sua integração de maneira rápida, nesta seção vamos lhe dar uma noção básica de como fazer isto. Exemplos de requisição, resposta e autenticação, para você preparar seu ambiente de desenvolvimento da melhor maneira que decidir.

Desenvolvimento

Para começar a integração no ambiente de desenvolvimento, você vai utilizar, nas requisições, a URL:

https://sandbox.api.grupoadvis.com.br

As mudanças efetuadas aqui serão refletidas em teste.sig.grupoadvis.com.br. O ambiente de testes possui os mesmos dados da produção de um certo ponto no tempo: ao logar você conseguirá ver a data dos dados no rodapé passando o mouse sobre "Versão de Testes". Este banco pode ser sobrescrito por nossa equipe a qualquer momento.

Produção

Uma vez que a integração esteja completa e homologada em testes, a integração pode ser habilitada no ambiente de produção. Contate seu consultor Advis ou o Suporte do SIG para realizar a ação de ativação. Assim que o token estiver ativo no ambiente de produção, mude a URL das requisições para:

https://api.grupoadvis.com.br

As mudanças efetuadas aqui serão refletidas em sig.grupoadvis.com.br.

Dica

As requisições estarão disponibilizadas em CURL e JavaScript, se sua linguagem for outra pode usar uma ferramenta como o Insomnia para converter CURLs para uma requisição na síntaxe da sua linguagem de programação de escolha.

Arquivo YAML Insomnia

Informações Úteis

Utilizaremos quatro tipos de requisição. POST, PUT, GET e DELETE, na semântica de que POSTs serão para inserção de novos registros, PUTs para atualizar registros já existentes (inclusive bloquear e desbloquear), GETs para consumir dados e DELETEs para exclusões permanentes.

Todas as Requisições do tipo GET podem ser paginadas adicionando: https://api.grupoadvis.com.br/routePrefix/getSomething?limit=x&offset=y onde x e y são números inteiros (Ex. ?limit=10&offset=2 repare que x e y são apresentados como inteiros).

Para requisições do tipo PUT, se desejamos que algum valor que vamos passar no body não seja alterado/atualizado no banco de dados apenas deixamos de passar este valor e o mesmo não será atualizado (Exceto campos obrigatórios).

Códigos de resposta e erros

Toda resposta de erro tem o código HTTP correspondente e o corpo { "msg": "..." } com a descrição do problema em inglês. Os códigos utilizados pela API:

HTTPQuando ocorre
200Sucesso. O resultado vem em response: lista de registros nos GETs; { "status": "success", "affectedRows": N } nas atualizações e exclusões (mais insertId nas inserções). Alguns endpoints devolvem contadores próprios, como restored, deleted e skipped.
400Corpo da requisição não é um JSON válido (Failed to parse the JSON body.).
401Header token ausente (Authentication required.).
403Token inválido ou inativo (Invalid Credentials); módulo não contratado pela empresa (Module not available for this company. — as rotas /indicators, /panels e /processes exigem o módulo GMR e as rotas /go exigem o módulo Gestão Orçamentária); ou o registro informado pertence a outra empresa.
404Registro não encontrado (usado por alguns endpoints, como saveFormulaIndicator).
409Conflito com uma regra de negócio: código já utilizado, registro já bloqueado/desbloqueado, exclusão de registro não bloqueado ou com dependências, etc.
412Pré-condição não atendida: token sem empresa vinculada, ID ou código inexistente ou de outra empresa, chave estrangeira inválida.
418Em alguns endpoints legados de Painéis: PUT sem nenhum campo válido no body. Os endpoints mais novos respondem 422 nesse caso.
422Parâmetro obrigatório ausente (Missing required parameters) ou valor inválido — a mensagem descreve o campo.
500Erro interno (Internal Error). Se persistir, contate o suporte informando data, hora e a rota.
503API em manutenção programada; repita a requisição em instantes.

Toda requisição autenticada é registrada (rota, corpo, IP, agente de usuário) — as escritas da Gestão Orçamentária também gravam o histórico do registro com o responsável API, visível nas telas do SIG.

Exemplo de Requisição

Utilizaremos requisições HTTPS, se seu ambiente de desenvolvimento é HTTP/1.0 ou superior já contemplará os requisitos.

JavaScript
fetch("https://api.grupoadvis.com.br/routePrefix/getSomething", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/routePrefix/getSomething' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'

Agora que já nos familiarizamos com o estilo da documentação e como será apresentada, vamos por a mão na massa!

Autenticação

Para gerar suas credenciais para utilizar esta API você precisará contatar seu consultor advis ou mandar um email para sig@grupoadvis.com.br requisitando um novo token para a API do SIG. Caso já tenha o feito, se você for um Administrador do Sistema você pode ver os dados do Token em Configuração > Empresa > Dados da Empresa em "Módulos Ativos".

Como funciona a autenticação?

O token que você gerar será vinculado ao ID de sua empresa no SIG, então você não precisa se preocupar, quando ele for gerado já estará configurado para consumir os dados que você precisa. Para a autenticação em sí ocorrer você deve enviar seu token no header da requisição, como demonstraremos abaixo.

JavaScript
fetch("https://api.grupoadvis.com.br/routePrefix/getSomething", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/routePrefix/getSomething' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'

Observe que seu token ficaria em SEU_TOKEN_AQUI, se estiver tudo certo com suas credenciais já estamos prontos para fazer uso da API!

Aviso

Coletamos localização aproximada, agente de usuário, IP e corpo da requisição, dados estes vinculados ao seu token, que cada vez que você fizer uma requisição serão coletados. Saiba mais sobre como utilizamos seus dados na política de privacidade.

Documentação

Aqui começamos nossa documentação, vamos ter badges classificando o tipo de requisição e a rota pai como estas:

/rotaPai GET PUT POST DELETE

Nomenclatura de Campos

Todas os campos do JSON de resposta tem o mesmo nome dos campos do banco de dados, então, a nomeclatura dos campos de um GET não irão mudar em um PUT ou um POST. (Serão unilaterais).

Caso tenha dúvida de como implementar em sua linguagem vide o Início Rápido. Tudo Pronto? Vamos lá então!

Empresa

/company

getDepartments

/company GET

Requisição para obter os departamentos da empresa.

URL

https://api.grupoadvis.com.br/company/getDepartments

JavaScript
fetch("https://api.grupoadvis.com.br/company/getDepartments", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url https://api.grupoadvis.com.br/company/getDepartments \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 1668,
		"nome": "Produção",
		"area": 1
	},
	{
		"id": 1669,
		"nome": "Administrativo",
		"area": 0
	}
	]
}
Legenda
Campo Valor Significado
"area" 0 Área de Apoio
"area" 1 Área de Negócio

getBranches

/company GET

Requisição para obter as Filiais da empresa.

URL

https://api.grupoadvis.com.br/company/getBranches

JavaScript
fetch("https://api.grupoadvis.com.br/company/getBranches", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/company/getBranches' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 760,
		"nome": "Filial X",
		"estado": "Santa Catarina",
		"cidade": "Chapecó"
	},
	{
		"id": 761,
		"nome": "Filial Z",
		"estado": "Santa Catarina",
		"cidade": "Florianópolis"
	}
	]
}

getRoles

/company GET

Requisição para obter os Cargos da empresa.

URL

https://api.grupoadvis.com.br/company/getRoles

JavaScript
fetch("https://api.grupoadvis.com.br/company/getRoles", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url https://api.grupoadvis.com.br/company/getRoles \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 5552,
		"nome": "Supervisor",
		"descricao": "Lorem Ipsum Sit Dolor Amet"
	},
	{
		"id": 5608,
		"nome": "Data Scientist",
		"descricao": "Lorem Ipsum Sit Dolor Amet"
	},
	{
		"id": 5609,
		"nome": "Software Engineer",
		"descricao": "Lorem Ipsum Sit Dolor Amet"
	}
	]
}

getFunctionsByRole

/company GET

Requisição para obter as Funções de um determinado Cargo da empresa.

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do cargo que você pode obter na /company/getRoles)

URL

https://api.grupoadvis.com.br/company/getFunctionsByRole/ID

JavaScript
fetch("https://api.grupoadvis.com.br/company/getFunctionsByRole/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/company/getFunctionsByRole/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 2941,
		"nome": "Supervisor de Qualidade",
		"id_cargo": 5552,
		"descricao": "Lorem Ipsum Sit Dolor Amet"
	},
	{
		"id": 2981,
		"nome": "Supervisor de Produção",
		"id_cargo": 5552,
		"descricao": null
	},
	{
		"id": 2991,
		"nome": "Supervisor Segurança",
		"id_cargo": 5552,
		"descricao": "Lorem Ipsum Sit Dolor Amet"
	}
	]
}

insertDepartment

/company POST

Insere departamentos, os quais você obtem na /company/getDepartments

Campos Obrigatórios

Campo Tipo
"nome" String
URL

https://api.grupoadvis.com.br/company/insertDepartment

JavaScript
fetch("https://api.grupoadvis.com.br/company/insertDepartment", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome": "Departamento X",
		"area": 1
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request POST \
	--url https://api.grupoadvis.com.br/company/insertDepartment \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome" : "Departamento X",
		"area" : 1
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 1909
	}
}

insertBranch

/company POST

Insere filiais, os quais você obtem na /company/getBranches

Campos Obrigatórios

Campo Tipo
"nome" String
"cidade" String
"estado" String
URL

https://api.grupoadvis.com.br/company/insertBranch

JavaScript
fetch("https://api.grupoadvis.com.br/company/insertBranch", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Filial X",
		"estado" : "Santa Catarina",
		"cidade" : "Chapecó"
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request POST \
	--url https://api.grupoadvis.com.br/company/insertBranch \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome" : "Filial X",
		"estado" : "Santa Catarina",
		"cidade" : "Chapecó"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 763
	}
}

insertRole

/company POST

Insere cargos, os quais você obtem na /company/getRoles

Campos Obrigatórios

Campo Tipo
"nome" String
URL

https://api.grupoadvis.com.br/company/insertRole

JavaScript
fetch("https://api.grupoadvis.com.br/company/insertRole", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Programador Master",
		"descricao" : "Lorem Ipsum Sit Dolor Amet"
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request POST \
	--url https://api.grupoadvis.com.br/company/insertRole \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome" : "Programador Master",
		"descricao" : "Lorem Ipsum Sit Dolor Amet"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 5975
	}
}

insertFunction

/company POST

Insere funções, as quais você obtem na /company/getFunctionsByRole

Campos Obrigatórios

Campo Tipo
"nome" String
"id_cargo" Int
URL

https://api.grupoadvis.com.br/company/insertFunction

JavaScript
fetch("https://api.grupoadvis.com.br/company/insertFunction", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Analista de resultados III",
		"id_cargo" : 5601,
		"descricao" : "A função realiza análise de resultados na linha de produção"
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request POST \
	--url https://api.grupoadvis.com.br/company/insertFunction \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome" : "Analista de resultados III",
		"id_cargo" : 5601,
		"descricao" : "A função realiza análise de resultados na linha de produção"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 5975
	}
}

Funcionário

/employee

getEmployees

/employee GET

Requisição para obter os Colaboradores da empresa.

URL

https://api.grupoadvis.com.br/employee/getEmployees

JavaScript
fetch("https://api.grupoadvis.com.br/employee/getEmployees", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/employee/getEmployees' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
			"id": 18216,
			"nome": "Grupo Advis",
			"email": "advis@grupoadvis.com.br",
			"sexo": "Masculino",
			"id_cargo": 5564,
			"id_funcao": 3120,
			"id_departamento": 1682,
			"id_filial": 757,
			"data_admissao": "2019-05-02T03:00:00.000Z",
			"status": 1,
			"lixeira": 0,
			"nivel_de_acesso": "Gerente"
	},
	{
			"id": 18719,
			"nome": "Jane Doe",
			"email": "advis2@grupoadvis.com.br",
			"sexo": "Feminino",
			"id_cargo": 5601,
			"id_funcao": 2982,
			"id_departamento": 1670,
			"id_filial": 757,
			"data_admissao": "1969-12-31T03:00:00.000Z",
			"status": 1,
			"lixeira": 0,
			"nivel_de_acesso": "Colaborador"
	}
	]
}
Legenda
Campo Valores possíveis
"nivel_de_acesso" "Gerente" (Administrador), "Gestor" (Gestor da Empresa), "Colaborador" (Colaborador)
"sexo" "Masculino", "Feminino"
"status" 0 (Bloqueado), 1 (Ativo), 2 (Inativo)
"lixeira" 0 (Não está na lixeira), 1 (Está na lixeira)

getEmployeesByBranch

/employee GET

Requisição para obter os Colaboradores de uma determinada Filial.

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" da filial que você pode obter na /company/getBranches)

URL

https://api.grupoadvis.com.br/employee/getEmployeesByBranch/ID

JavaScript
fetch("https://api.grupoadvis.com.br/employee/getEmployeesByBranch/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/employee/getEmployeesByBranch/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
			"id": 18216,
			"nome": "Grupo Advis",
			"email": "advis@grupoadvis.com.br",
			"sexo": "Masculino",
			"id_cargo": 5564,
			"id_funcao": 3120,
			"id_departamento": 1682,
			"id_filial": 757,
			"data_admissao": "2019-05-02T03:00:00.000Z",
			"status": 1,
			"lixeira": 0,
			"nivel_de_acesso": "Gerente"
	},
	{
			"id": 18719,
			"nome": "Jane Doe",
			"email": "advis2@grupoadvis.com.br",
			"sexo": "Feminino",
			"id_cargo": 5601,
			"id_funcao": 2982,
			"id_departamento": 1670,
			"id_filial": 757,
			"data_admissao": "1969-12-31T03:00:00.000Z",
			"status": 1,
			"lixeira": 0,
			"nivel_de_acesso": "Colaborador"
	}
	]
}
Legenda
Campo Valores possíveis
"nivel_de_acesso" "Gerente" (Administrador), "Gestor" (Gestor da Empresa), "Colaborador" (Colaborador)
"sexo" "Masculino", "Feminino"
"status" 0 (Bloqueado), 1 (Ativo), 2 (Inativo)
"lixeira" 0 (Não está na lixeira), 1 (Está na lixeira)

getEmployeeDepartments

/employee GET

Requisição para obter os Departamentos de um determinado Colaborador.

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do funcionário que você pode obter na /employee/getEmployees)

URL

https://api.grupoadvis.com.br/employee/getEmployeeDepartments/ID

JavaScript
fetch("https://api.grupoadvis.com.br/employee/getEmployeeDepartments/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/employee/getEmployeeDepartments/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_departamento": 1669
		},
		{
			"id_departamento": 1682
		}
	]
}

updateEmployee

/employee PUT

Requisição para atualizar os dados de um Colaborador.

Substitua ID pelo ID do registro que deseja fazer a atualização. (neste caso o "id" do funcionário os quais você pode obter na /company/getEmployees)

URL

https://api.grupoadvis.com.br/employee/updateEmployee/ID

JavaScript
fetch("https://api.grupoadvis.com.br/employee/updateEmployee/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Johnny Doe",
		"id_filial" : 760,
		"id_cargo" : 5548,
		"sexo" : "Masculino",
		"data_admissao" : "2019-10-01",
		"remuneracao" : 0,
		"status" : 1,
		"lixeira" : 0,
		"id_funcao" : 2920
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/employee/updateEmployee/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
	--data '{
		"nome" : "Johnny Doe",
		"id_filial" : 760,
		"id_cargo" : 5548,
		"sexo" : "Masculino",
		"data_admissao" : "2019-10-01",
		"remuneracao" : 0,
		"status" : 1,
		"lixeira" : 0,
		"id_funcao" : 2920
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
  	}
}
Legenda
Campo Valores possíveis
"sexo" "Masculino", "Feminino"
"data_admissao" "YYYY-MM-DD" (Formato de data)
"lixeira" 0 (Não está na lixeira), 1 (Está na lixeira)
"status" 0 (Bloqueado), 1 (Ativo), 2 (Inativo)

Observe que podemos fazer update em todos os campos do funcionário menos o campo "email", que não pode ser alterado


updateEmployeeDepartment

/employee PUT

Requisição para atualizar os departamentos de um determinado Colaborador.

Substitua ID pelo ID do registro que deseja fazer a atualização. (neste caso o "id" do funcionário os quais você pode obter na /company/getEmployees)

URL

https://api.grupoadvis.com.br/employee/updateEmployeeDepartment/ID

JavaScript
fetch("https://api.grupoadvis.com.br/employee/updateEmployeeDepartment/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"id_departamento" : 1693
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/employee/updateEmployeeDepartment/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
	--data '{
		"id_departamento" : 1693
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
  	}
}

insertEmployee

/employee POST

Insere um novo usuário no SIG, você pode obter usuário já cadastrado em /employee/getEmployees

Campos Obrigatórios

Campo Tipo
"nome" String
"email" String
"id_filial" Int
"id_cargo" Int
"id_funcao" Int
URL

https://api.grupoadvis.com.br/employee/insertEmployee

JavaScript
fetch("https://api.grupoadvis.com.br/employee/insertEmployee", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Johnny Doe",
		"id_filial" : 760,
		"id_cargo" : 5548,
		"email" : "johnny@doe.io",
		"sexo" : "Masculino",
		"data_admissao" : "2019-10-01",
		"remuneracao" : 0,
		"status" : 1,
		"lixeira" : 0,
		"id_funcao" : 2920
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
	});
	
CURL
curl --request POST \
	--url https://api.grupoadvis.com.br/employee/insertEmployee \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome" : "Johnny Doe",
		"id_filial" : 760,
		"id_cargo" : 5548,
		"email" : "johnny@doe.io",
		"sexo" : "Masculino",
		"data_admissao" : "2019-10-01",
		"remuneracao" : 0,
		"status" : 1,
		"lixeira" : 0,
		"id_funcao" : 2920
	}'
	
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 20320
	}
}
	
Legenda
Campo Valores possíveis
"sexo" "Masculino", "Feminino"
"data_admissao" "YYYY-MM-DD" (Formato de data)
"lixeira" 0 (Não está na lixeira), 1 (Está na lixeira)
"status" 0 (Bloqueado), 1 (Ativo), 2 (Inativo)

No momento da criação de um usuário na API um email de definição de senha com validade de 7 dias será enviado para o endereço no campo "email"


Indicadores

/indicators

Informações Úteis

Nos indicadores temos várias informações relevantes que precisam de contexto, observe as legedas abaixo. Essas informações valem para todas as requisições de /indicators

Campo: "tipo"
Valor Significado
0 TIPO_COMUM
1 TIPO_COMPOSTO_DINAMICO
2 TIPO_COMPOSTO_CUSTOMIZADO
3 TIPO_CONSOLIDADO_DINAMICO
4 TIPO_CONSOLIDADO_CUSTOMIZADO
5 TIPO_FORMULA
Campo: "meta_oculta", "meta_ajustavel"
Valor Significado
0 setada
1 não setada
Campo: "unidade_medida"
Valor Significado
0 UNIDADE_MOEDA
1 UNIDADE_MOEDA_CALCULO
2 UNIDADE_PERCENTUAL
3 UNIDADE_PERCENTUAL_CALCULO
4 UNIDADE_QUANTIDADE
5 UNIDADE_QUANTIDADE_CALCULO
6 UNIDADE_DIAS
7 UNIDADE_DIAS_CALCULO
8 UNIDADE_HORAS
9 UNIDADE_HORAS_CALCULO
10 UNIDADE_CONCEITO
Campo: "interpretacao"
Valor Significado Descrição
0 INTERPRETACAO_RM Realizado/Meta (Mais é Melhor)
1 INTERPRETACAO_MRMAIS Realizado/Meta (Mais é melhor = 100%)
2 INTERPRETACAO_MR Meta/Realizado (Menos é Melhor)
3 INTERPRETACAO_MRMENOS Realizado/Meta (Menos é melhor = 100%)
4 INTERPRETACAO_APROX Aproximação (Mais próximo é Melhor)
5 INTERPRETACAO_MR_DENOMINADOR_MEDIO Meta/Realizado (Denominador médio)
6 INTERPRETACAO_RM_DENOMINADOR_MEDIO Realizado/Meta (Denominador médio)
7 INTERPRETACAO_RMMENOS_ORCAMENTO Realizado/Meta (Menos é Melhor - Uso para Gestão Orçamentária)
8 INTERPRETACAO_RMMAIS_ORCAMENTO Realizado/Meta (Menos é Melhor - Uso para Gestão Orçamentária com valor negativo)
Campo: "totalizador"
Valor Significado
0 TOTALIZADOR_SOMA
1 TOTALIZADOR_MEDIA
2 TOTALIZADOR_ULTIMO_MES
Campo: "moeda"
Valor Significado
BRL MOEDA_REAL
USD MOEDA_DOLAR
EUR MOEDA_EURO
... ...

Moedas seguem o padrão ISO 4217. Utilize o código de três digitos da moeda desejada, caso não haja valor o padrão assumido pelo sistema é "BRL".

getCommonIndicators

/indicators GET

Requisição para obter os Indicadores de tipo Comum.

URL

https://api.grupoadvis.com.br/indicators/getCommonIndicators

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getCommonIndicators", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getCommonIndicators' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
			"id": 8976,
			"nome": "Acuracidade do Estoque",
			"descricao": "Nível de acuracidade",
			"fonte": "Relatório de Estoque",
			"tipo": 0,
			"meta_oculta": 0,
			"meta_ajustavel": 0,
			"unidade_medida": 3,
			"interpretacao": 4,
			"totalizador": 2,
			"moeda": "BRL"
	},
	{
			"id": 8977,
			"nome": "Carteira de Pedidos",
			"descricao": "Valor da carteira",
			"fonte": "",
			"tipo": 0,
			"meta_oculta": 0,
			"meta_ajustavel": 0,
			"unidade_medida": 0,
			"interpretacao": 0,
			"totalizador": 2,
			"moeda": "BRL"
	}
	]
}

getCompoundIndicators

/indicators GET

Requisição para obter os Indicadores de tipo Composto.

URL

https://api.grupoadvis.com.br/indicators/getCompoundIndicators

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getCompoundIndicators", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getCompoundIndicators' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 9108,
		"nome": "Ticket Médio",
		"descricao": "Valor médio referente às vendas que a empresa comercializa",
		"fonte": "Relatório Contábil",
		"tipo": 1,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 1,
		"interpretacao": 0,
		"totalizador": 0,
		"moeda": "BRL"
	},
	{
		"id": 9368,
		"nome": "Gestão de Estoque",
		"descricao": "Estoque / Faturamento",
		"fonte": "",
		"tipo": 2,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 0,
		"interpretacao": 0,
		"totalizador": 0,
		"moeda": "BRL"
	}
	]
}

getIndicatorById

/indicators GET

Requisição para obter um determinado indicador da empresa. Substitua ID pelo ID do registro que deseja consumir.

URL

https://api.grupoadvis.com.br/indicators/getIndicatorById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getIndicatorById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getIndicatorById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
    {
		"id": 9009,
		"nome": "Receita Bruta",
		"descricao": "Valor total arrecado em vendas de bens, sem deduções",
		"fonte": "Relatório de Vendas",
		"tipo": 0,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 0,
		"interpretacao": 0,
		"totalizador": 0,
		"moeda": "BRL"
	}
	]
}

getCompoundReferencesById

/indicators GET

Requisição para obter as Referências configuradas para um determinado Indicador de tipo Composto. Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do indicador composto que você pode obter na /indicators/getCompoundReferencesById)

URL

https://api.grupoadvis.com.br/indicators/getCompoundReferencesById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getCompoundReferencesById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getCompoundReferencesById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1349,
			"id_indicador_principal": 9368,
			"id_indicador": 9169,
			"id_painel_modelo": 3118,
			"origem_campo": 0,
			"origem_posicao": 0,
			"destino_campo": 0,
			"destino_posicao": 0
		},
		{
			"id": 1350,
			"id_indicador_principal": 9368,
			"id_indicador": 9366,
			"id_painel_modelo": 3179,
			"origem_campo": 0,
			"origem_posicao": 1,
			"destino_campo": 0,
			"destino_posicao": 1
		}
	]
}

getConsolidatedReferencesById

/indicators GET

Requisição para obter as Referências configuradas para um determinado Indicador de tipo Consolidado. Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do indicador consolidado que você pode obter na /indicators/getConsolidatedIndicators)

URL

https://api.grupoadvis.com.br/indicators/getConsolidatedReferencesById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getConsolidatedReferencesById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getConsolidatedReferencesById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
    {
		"id": 10301,
		"id_indicador_principal": 9104,
		"id_indicador": 9102,
		"id_painel_modelo": null
	},
	{
		"id": 10302,
		"id_indicador_principal": 9104,
		"id_indicador": 9103,
		"id_painel_modelo": null
	}
	]
}

getConsolidatedIndicators

/indicators GET

Requisição para obter os Indicadores de tipo Consolidado.

URL

https://api.grupoadvis.com.br/indicators/getConsolidatedIndicators

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getConsolidatedIndicators", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getConsolidatedIndicators' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 9104,
		"nome": "Receita de Peças e Serviços",
		"descricao": "Valor arrecadado em comercialização de peças e serviços",
		"fonte": "Relatório Financeiro",
		"tipo": 3,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 0,
		"interpretacao": 0,
		"totalizador": 0,
		"moeda": "BRL"
	},
	{
		"id": 9131,
		"nome": "Margem Bruta - R1",
		"descricao": "Percentual bruto de rentabilidade na Região 1",
		"fonte": "Relatório Financeiro",
		"tipo": 4,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 3,
		"interpretacao": 0,
		"totalizador": 0,
		"moeda": "BRL"
	}
	]
}

getFormulaIndicators

/indicators GET

Requisição para obter os Indicadores de tipo Fórmula.

URL

https://api.grupoadvis.com.br/indicators/getFormulaIndicators

CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getFormulaIndicators' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 9210,
		"nome": "Custo por Atendimento",
		"descricao": "Custo total dividido pelo número de atendimentos",
		"fonte": "Gestão Orçamentária",
		"tipo": 5,
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"unidade_medida": 0,
		"interpretacao": 2,
		"totalizador": 0,
		"moeda": "BRL"
	}
	]
}

getFormulaReferencesById

/indicators GET

Requisição para obter as referências declaradas de um Indicador de tipo Fórmula. Cada referência aponta para outro indicador, um item da Gestão Orçamentária, uma constante ou um valor de preenchimento manual. O campo slug é o que liga a referência aos nós da fórmula.

Em campo (referência a indicador) e go_metrica (referência à Gestão Orçamentária), o padrão segue o destino em que a referência é usada: 2 e "automatico" fazem a fórmula da Meta ler a meta (o orçado, no GO) e a do Realizado ler o realizado, permitindo usar a mesma referência nas duas árvores. Os demais valores são fixos nos dois destinos.

Com id_painel_modelo = null, a referência lê somente o mesmo painel em que a Fórmula está sendo calculada. Ao informar um submodelo, reúne as instâncias daquele submodelo usando agregacao: soma, media ou contagem. Para combinar submodelos diferentes, envie referências separadas e componha seus resultados nos nós da Fórmula. Sem submodelo, a agregação deve ser soma.

URL

https://api.grupoadvis.com.br/indicators/getFormulaReferencesById/:id

CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getFormulaReferencesById/9210' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 41,
		"id_indicador": 9210,
		"slug": "R1",
		"rotulo": "Custo total",
		"tipo": 1,
		"ordem": 0,
		"id_indicador_ref": null,
		"id_painel_modelo": null,
		"campo": null,
		"agregacao": "soma",
		"id_go_processo_periodo": 12,
		"go_config": "{\"fontes\":[{\"tipo\":\"conta\",\"id\":204}],\"centrosResultado\":[]}",
		"go_metrica": "realizado",
		"go_modo": "periodo",
		"valor_constante": null
	},
	{
		"id": 42,
		"id_indicador": 9210,
		"slug": "R2",
		"rotulo": "Atendimentos",
		"tipo": 0,
		"ordem": 1,
		"id_indicador_ref": 9108,
		"id_painel_modelo": null,
		"campo": 1,
		"agregacao": "soma",
		"id_go_processo_periodo": null,
		"go_config": null,
		"go_metrica": null,
		"go_modo": null,
		"valor_constante": null
	}
	]
}

getFormulaNodesById

/indicators GET

Requisição para obter os nós da fórmula de um Indicador de tipo Fórmula. Os nós formam duas árvores, uma para a Meta (destino 0) e outra para o Realizado (destino 1). Um nó é uma operação (tipo_no 0) ou uma referência (tipo_no 1); ordem indica qual espaço da operação pai o nó ocupa. Os aliases key, pai_key e ref_slug são estáveis dentro da resposta e podem ser enviados diretamente para saveFormulaIndicator, sem reconstruir a árvore pelos ids internos.

URL

https://api.grupoadvis.com.br/indicators/getFormulaNodesById/:id

CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getFormulaNodesById/9210' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 88,
		"id_indicador": 9210,
		"destino": 1,
		"id_pai": null,
		"ordem": 0,
		"tipo_no": 0,
		"operacao": "divisao",
		"id_referencia": null,
		"key": "n88",
		"pai_key": null,
		"ref_slug": null
	},
	{
		"id": 89,
		"id_indicador": 9210,
		"destino": 1,
		"id_pai": 88,
		"ordem": 0,
		"tipo_no": 1,
		"operacao": null,
		"id_referencia": 41,
		"key": "n89",
		"pai_key": "n88",
		"ref_slug": "R1"
	},
	{
		"id": 90,
		"id_indicador": 9210,
		"destino": 1,
		"id_pai": 88,
		"ordem": 1,
		"tipo_no": 1,
		"operacao": null,
		"id_referencia": 42,
		"key": "n90",
		"pai_key": "n88",
		"ref_slug": "R2"
	}
	]
}

getFormulaConceptsById

/indicators GET

Requisição para obter o catálogo de conceitos de um Indicador de tipo Fórmula com unidade de medida Conceito (unidade_medida = 10). Cada conceito associa um rótulo a um valor inteiro; o resultado numérico da Fórmula é traduzido para o conceito de maior valor que ele alcança. Substitua ID pelo ID do indicador. Para indicadores que não são Fórmula de conceito a resposta é uma lista vazia. Retorna 422 se o ID não for um inteiro.

URL

https://api.grupoadvis.com.br/indicators/getFormulaConceptsById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/getFormulaConceptsById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/indicators/getFormulaConceptsById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 31, "nome": "Excelente", "valor": 3 },
		{ "id": 30, "nome": "Bom", "valor": 2 },
		{ "id": 29, "nome": "Regular", "valor": 1 },
		{ "id": 28, "nome": "Insuficiente", "valor": 0 }
	]
}

saveFormulaIndicator

/indicators POST

Cria um Indicador de tipo Fórmula, converte um indicador existente da empresa em Fórmula ou edita uma Fórmula existente. O payload de formula usa o mesmo contrato do cadastro web: referências identificadas por slug e nós identificados por key/pai_key, exatamente o formato devolvido por getFormulaReferencesById e getFormulaNodesById — portanto o ciclo ler → alterar → salvar não exige reconstruir a árvore pelos ids internos. Envie id null (ou omita) para criar; envie o ID de um indicador da empresa para converter/editar. A operação é atômica: referências, nós e conceitos anteriores são substituídos pelos enviados, os valores de preenchimento manual já lançados são preservados quando o slug da referência manual se mantém, e os acompanhamentos do indicador são enfileirados para recálculo.

Campos do indicador

CampoTipoObservação
"id"Integer|nullOpcional. ID de um indicador da empresa para converter/editar; null ou ausente cria um novo. Retorna 404 se o ID não pertencer à empresa do token.
"nome"StringObrigatório.
"descricao"StringObrigatório.
"fonte"StringObrigatório.
"unidade_medida"IntegerObrigatório. 0 a 10, conforme a tabela Campo: "unidade_medida". Unidades por cálculo (1, 3, 5, 7, 9) exigem divisao na raiz das duas árvores; 3 exige percentual; 10 (Conceito) exige conceitos, interpretacao 0 ou 2, totalizador 2 e meta_ajustavel 0.
"interpretacao"IntegerObrigatório. 0 a 8, conforme a tabela Campo: "interpretacao".
"totalizador"IntegerObrigatório. 0 a 2, conforme a tabela Campo: "totalizador".
"moeda"StringObrigatório quando unidade_medida é 0 ou 1 (código ISO 4217 suportado). Ignorado nas demais unidades.
"meta_oculta"IntegerOpcional. 0 ou 1. Com 1 a árvore da Meta (destino 0) é dispensada.
"meta_ajustavel"IntegerOpcional. 0 ou 1.
"conceitos"ArrayObrigatório quando unidade_medida é 10: lista de { "nome": String, "valor": Integer }.
"formula"ObjectObrigatório. { "referencias": [...], "nos": [...] }, descritos abaixo.
Campo: "formula.referencias" — de 1 a 100 itens
CampoTipoObservação
"slug"StringObrigatório. Identificador único dentro da Fórmula (máx. 40 caracteres); é o que os nós usam em ref_slug.
"rotulo"StringObrigatório. Máximo 255 caracteres.
"tipo"IntegerObrigatório. 0 = outro indicador, 1 = Gestão Orçamentária, 2 = constante, 3 = preenchimento manual (máximo 4 por Fórmula, cada uma usada exatamente uma vez nos nós).
"id_indicador_ref"IntegerTipo 0: ID de um indicador da empresa (não pode ser o próprio indicador nem formar ciclo com Compostos/Consolidados).
"campo"IntegerTipo 0. 0 = meta, 1 = realizado, 2 = automático (padrão: segue o destino), 3 = meta numerador, 4 = meta denominador, 5 = realizado numerador, 6 = realizado denominador. Os campos de denominador (4 e 6) só são aceitos quando o indicador referenciado é de unidade por cálculo; o mesmo vale para uma referência com campo 2 posicionada no denominador da fração raiz de uma Fórmula de unidade por cálculo, pois ali o automático lê o denominador do indicador referenciado.
"agregacao"StringTipo 0. soma (padrão), media, contagem ou periodos. Sem id_painel_modelo só soma, contagem e periodos são aceitos.
"id_painel_modelo"Integer|nullTipo 0. Opcional: submodelo (ativo e não confidencial) em que o indicador referenciado está presente; null lê o mesmo painel em que a Fórmula é calculada.
"id_go_processo_periodo"IntegerTipo 1: ID de um período de um processo orçamentário da empresa (/go/periodoGo/getByProcess).
"go_config"ObjectTipo 1. { "fontes": [ { "tipo": "conta"|"estrutura", "id": Integer } ], "centrosResultado": [Integer], "dimensoesResultado": [Integer] }. fontes é obrigatório e sem repetição (estruturas devem pertencer ao período); centrosResultado e dimensoesResultado são opcionais — lista vazia ou ausente significa sem filtro. Veja Centro de Resultado e Dimensão adicional.
"go_metrica"StringTipo 1. automatico (padrão), orcado, realizado, historico, variacao_valor, variacao_percentual, desvio_valor ou desvio_percentual.
"go_modo"StringTipo 1. periodo (padrão, o mês) ou acumulado (do início do período GO até o mês).
"valor_constante"DecimalTipo 2: obrigatório. Aceita formato BR ou US; até 10 casas inteiras e 10 decimais.
Campo: "formula.nos" — até 250 nós e 20 níveis por destino

Os nós formam uma árvore por destino: destino 0 (Meta) e 1 (Realizado). A árvore do Realizado é sempre obrigatória; a da Meta é obrigatória salvo com meta_oculta = 1. Cada destino tem exatamente um nó raiz (pai_key null) e os filhos de uma operação ocupam as posições ordem 0, 1, 2… sem lacunas.

CampoTipoObservação
"key"StringObrigatório. Identificador único do nó dentro do payload.
"pai_key"String|nullnull para a raiz; senão a key do nó de operação pai.
"destino"IntegerObrigatório. 0 = Meta, 1 = Realizado.
"ordem"IntegerPosição do nó entre os operandos do pai (a partir de 0).
"tipo_no"IntegerObrigatório. 0 = operação, 1 = referência (nó folha).
"operacao"StringTipo 0. soma, multiplicacao, min, max, media (2 ou mais operandos); subtracao, divisao, percentual, maior, menor, maior_igual, menor_igual, igual, diferente (exatamente 2); negativo, abs (1); se (3: condição, valor se verdadeiro, valor se falso).
"ref_slug"StringTipo 1: slug de uma referência declarada em formula.referencias.

Regras adicionais validadas no salvamento (422 com a descrição do problema em msg): referências de preenchimento manual (tipo 3) são limitadas a uma por Fórmula — ou a uma em cada lado da fração quando a raiz é divisao/percentual; não são aceitos nós órfãos, desconectados, em ciclo ou com posições duplicadas.

URL

https://api.grupoadvis.com.br/indicators/saveFormulaIndicator

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/saveFormulaIndicator", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id": null,
		"nome": "Custo por Atendimento",
		"descricao": "Custo total do período dividido pelo número de atendimentos",
		"fonte": "Gestão Orçamentária",
		"unidade_medida": 0,
		"interpretacao": 2,
		"totalizador": 1,
		"moeda": "BRL",
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"formula": {
			"referencias": [
				{ "slug": "R1", "rotulo": "Custo total", "tipo": 1, "id_go_processo_periodo": 12, "go_config": { "fontes": [ { "tipo": "conta", "id": 204 } ], "centrosResultado": [5], "dimensoesResultado": [] }, "go_metrica": "automatico", "go_modo": "periodo" },
				{ "slug": "R2", "rotulo": "Atendimentos", "tipo": 0, "id_indicador_ref": 9108, "campo": 2, "agregacao": "soma", "id_painel_modelo": null }
			],
			"nos": [
				{ "key": "m-root", "pai_key": null, "destino": 0, "ordem": 0, "tipo_no": 0, "operacao": "divisao" },
				{ "key": "m-1", "pai_key": "m-root", "destino": 0, "ordem": 0, "tipo_no": 1, "ref_slug": "R1" },
				{ "key": "m-2", "pai_key": "m-root", "destino": 0, "ordem": 1, "tipo_no": 1, "ref_slug": "R2" },
				{ "key": "r-root", "pai_key": null, "destino": 1, "ordem": 0, "tipo_no": 0, "operacao": "divisao" },
				{ "key": "r-1", "pai_key": "r-root", "destino": 1, "ordem": 0, "tipo_no": 1, "ref_slug": "R1" },
				{ "key": "r-2", "pai_key": "r-root", "destino": 1, "ordem": 1, "tipo_no": 1, "ref_slug": "R2" }
			]
		}
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/indicators/saveFormulaIndicator' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id": null,
		"nome": "Custo por Atendimento",
		"descricao": "Custo total do período dividido pelo número de atendimentos",
		"fonte": "Gestão Orçamentária",
		"unidade_medida": 0,
		"interpretacao": 2,
		"totalizador": 1,
		"moeda": "BRL",
		"meta_oculta": 0,
		"meta_ajustavel": 0,
		"formula": {
			"referencias": [
				{ "slug": "R1", "rotulo": "Custo total", "tipo": 1, "id_go_processo_periodo": 12, "go_config": { "fontes": [ { "tipo": "conta", "id": 204 } ], "centrosResultado": [5], "dimensoesResultado": [] }, "go_metrica": "automatico", "go_modo": "periodo" },
				{ "slug": "R2", "rotulo": "Atendimentos", "tipo": 0, "id_indicador_ref": 9108, "campo": 2, "agregacao": "soma", "id_painel_modelo": null }
			],
			"nos": [
				{ "key": "m-root", "pai_key": null, "destino": 0, "ordem": 0, "tipo_no": 0, "operacao": "divisao" },
				{ "key": "m-1", "pai_key": "m-root", "destino": 0, "ordem": 0, "tipo_no": 1, "ref_slug": "R1" },
				{ "key": "m-2", "pai_key": "m-root", "destino": 0, "ordem": 1, "tipo_no": 1, "ref_slug": "R2" },
				{ "key": "r-root", "pai_key": null, "destino": 1, "ordem": 0, "tipo_no": 0, "operacao": "divisao" },
				{ "key": "r-1", "pai_key": "r-root", "destino": 1, "ordem": 0, "tipo_no": 1, "ref_slug": "R1" },
				{ "key": "r-2", "pai_key": "r-root", "destino": 1, "ordem": 1, "tipo_no": 1, "ref_slug": "R2" }
			]
		}
	}'
Exemplo de Resposta JSON
{
	"response": {
		"id": 9210
	}
}

insertCommonIndicator

/indicators POST

Insere indicadores do tipo comum, os quais você obtem na /indicators/getCommonIndicators

Campos Obrigatórios

Campo Tipo
"nome" String
URL

https://api.grupoadvis.com.br/indicators/insertCommonIndicator

JavaScript
fetch("https://api.grupoadvis.com.br/indicators/insertCommonIndicator", {
"method": "POST",
"headers": {
	"token": "SEU_TOKEN_AQUI",
	"Content-Type": "application/json",
            "Accept-Encoding": "gzip,deflate"
},
"body": {
	"nome" : "Indicador Comum",
	"descricao" : "Este é um indicador comum",
	"fonte" : "Fonte qualquer",
	"meta_oculta" : 1,
	"meta_ajustavel" : 1,
	"unidade_medida" : 0,
	"interpretacao" : 0,
	"totalizador" : 0,
	"moeda" : "BRL"
}
})
.then(response => {
console.log(response);
})
.catch(err => {
console.error(err);
});
CURL
curl --request POST \
--url https://api.grupoadvis.com.br/indicators/insertCommonIndicator \
--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
--header 'token: SEU_TOKEN_AQUI' \
--data '{
	"nome" : "Indicador Comum",
	"descricao" : "Este é um indicador comum",
	"fonte" : "Fonte qualquer",
	"meta_oculta" : 1,
	"meta_ajustavel" : 1,
	"unidade_medida" : 0,
	"interpretacao" : 0,
	"totalizador" : 0,
	"moeda" : "BRL"
}'
Exemplo de Resposta JSON
{
"response": {
    "status": "success",
    "affectedRows": 1,
    "insertId": 14386
}
}

Painéis

/panels

getGroups

/panels GET

Requisição para obter os Grupos de Painéis cadastrados na empresa.

URL

https://api.grupoadvis.com.br/panels/getGroups

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getGroups", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getGroups' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 648,
		"id_grupo": null,
		"nome": "Vendas",
		"ordem": 2
	},
	{
		"id": 649,
		"id_grupo": null,
		"nome": "Pós-Vendas",
		"ordem": 3
	}
	]
}

getPanels

/panels GET

Requisição para obter os Painéis cadastrados na empresa

URL

https://api.grupoadvis.com.br/panels/getPanels

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getPanels", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getPanels' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id": 3116,
		"id_gmr_processo": 88,
		"nome": "Aprimorar a Gestão do Estoque",
		"id_grupo": 651,
		"status": 1,
		"desativado": 0,
		"nome_modelo_painel": "Financeiro",
		"status_modelo_painel": 1,
		"data_cadastro": "2019-08-19T19:02:38.000Z",
		"confidencial": 0,
		"base": 3115,
		"id_painel_modelo": 3183,
		"ordem": null,
		"id_painel_ap": null
	  },
	  {
		"id": 3116,
		"id_gmr_processo": 113,
		"nome": "Aprimorar a Gestão do Estoque",
		"id_grupo": 651,
		"status": 1,
		"desativado": 0,
		"nome_modelo_painel": "Financeiro",
		"status_modelo_painel": 1,
		"data_cadastro": "2019-08-19T19:02:38.000Z",
		"confidencial": 0,
		"base": 3115,
		"id_painel_modelo": 3183,
		"ordem": null,
		"id_painel_ap": null
	}
	]
}
Legenda
Campo Valor Significado
"desativado" 0 Ativo
"desativado" 1 Inativo

getProgressPanelCell

/panels GET

Requisição para obter o Acompanhamento de Resultados de um determinado indicador, painel, ano e mês, ou seja, os valores de uma célula do painel de acompanhamento.

Substitua ID_PAINEL pelo ID do registro que deseja. (neste caso o "id" do painél, os quais você pode obter na /panels/getPanels)

Substitua ID_INDICADOR pelo ID do registro que deseja. (neste caso o "id" do indicador, os quais você pode obter nos GET's da rotas /indicator

Mês e ano:
Campo Range de valores (Int)
"mes" 1 ~ 12
"ano" 0 ~ 9999
URL

https://api.grupoadvis.com.br/panels/getProgressPanelCell/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getProgressPanelCell/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getProgressPanelCell/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_indicador": 9009,
			"id_gmr_painel": 3779,
			"mes": 2,
			"ano": 2020,
			"peso": 50,
			"auxiliar": 0,
			"meta_numerador": 2500000,
			"meta_denominador": null,
			"meta_ajustada_numerador": null,
			"meta_ajustada_denominador": null,
			"realizado_numerador": 500000,
			"realizado_denominador": null
	  	}
	]
}

getProgressPanelRow

/panels GET

Requisição para obter o Acompanhamento de Resultados de um determinado indicador, painel e processo GMR, ou seja, os valores de uma fila do painel de acompanhamento.

Substitua ID_GMR pelo ID do registro que deseja. (neste caso o "id" do processo GMR, os quais você pode obter na /processes/getGmrProcesses)

Substitua ID_PAINEL pelo ID do registro que deseja. (neste caso o "id" do painél, os quais você pode obter na /panels/getPanels)

Substitua ID_INDICADOR pelo ID do registro que deseja. (neste caso o "id" do indicador, os quais você pode obter nos GET's da rotas /indicator

URL

https://api.grupoadvis.com.br/panels/getProgressPanelRow/idGmr/ID_GMR/panel/ID_PAINEL/indicator/ID_INDICADOR

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getProgressPanelRow/idGmr/ID_GMR/panel/ID_PAINEL/indicator/ID_INDICADOR", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getProgressPanelRow/idGmr/ID_GMR/panel/ID_PAINEL/indicator/ID_INDICADOR' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id_indicador": 9009,
		"id_gmr_painel": 3779,
		"mes": 1,
		"ano": 2020,
		"peso": 50,
		"auxiliar": 0,
		"meta_numerador": 2500000,
		"meta_denominador": null,
		"meta_ajustada_numerador": null,
		"meta_ajustada_denominador": null,
		"realizado_numerador": 3000000,
		"realizado_denominador": null
	  },
	  {
		"id_indicador": 9009,
		"id_gmr_painel": 3779,
		"mes": 2,
		"ano": 2020,
		"peso": 50,
		"auxiliar": 0,
		"meta_numerador": 2500000,
		"meta_denominador": null,
		"meta_ajustada_numerador": null,
		"meta_ajustada_denominador": null,
		"realizado_numerador": 500000,
		"realizado_denominador": null
	  }
	]
}

Requisição usualmente retornará 12 elementos, observe o campo "mes", que irá nessas ocasiões de 1 ~ 12.


getAccessPanel

/panels GET

Requisição para obter as Permissões de Acesso de um determinado Painel e Processo GMR cadastrados na empresa.

Substitua ID_GMR_PROCESSO pelo ID do registro que deseja. (neste caso o "id" do processo gmr, os quais você pode obter nos GET's da rotas /processes

Substitua ID_GMR_PAINEL pelo ID do registro que deseja. (neste caso o "id" do painél, os quais você pode obter na /panels/getPanels)

URL

https://api.grupoadvis.com.br/panels/getAccessPanel/process/ID_GMR_PROCESSO/panel/ID_GMR_PAINEL

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getAccessPanel/process/ID_GMR_PROCESSO/panel/ID_GMR_PAINEL", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getAccessPanel/process/ID_GMR_PROCESSO/panel/ID_GMR_PAINEL' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_gmr_processo": 113,
			"id_gmr_painel": 3779,
			"id_colaborador": 18819,
			"acesso": 0,
			"permissao": 1
	  	}
	]
}
Legenda
Campo Valor Significado
"permissao" 0 Permissão apenas para visualizar o painel.
"permissao" 1 Permissão para editar os valores do painel.
"acesso" 0 Acesso como Responsável
"acesso" 1 Acesso como Superior
"acesso" 2 Acesso como Equipe
"acesso" 3 Acesso como Facilitador

getAccessPanelByEmployee

/panels GET

Requisição para obter as Permissões de Acesso de todos os Painéis e Processos GMR de um determinado Colaborador.

Substitua ID_COLABORADOR pelo ID do registro que deseja. (neste caso o "id" do processo gmr, os quais você pode obter nos GET's da rotas /employee

URL

https://api.grupoadvis.com.br/panels/getAccessPanelByEmployee/ID_COLABORADOR

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getAccessPanelByEmployee/ID_COLABORADOR", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getAccessPanelByEmployee/ID_COLABORADOR' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_gmr_processo": 88,
			"id_gmr_painel": 3054,
			"id_colaborador": 18819,
			"acesso": 2,
			"permissao": 0
	  	},
	  	{
			"id_gmr_processo": 113,
			"id_gmr_painel": 3054,
			"id_colaborador": 18819,
			"acesso": 2,
			"permissao": 0
	  	}
	]
}
Legenda
Campo Valor Significado
"permissao" 0 Permissão apenas para visualizar o painel.
"permissao" 1 Permissão para editar os valores do painel.
"acesso" 0 Acesso como Responsável
"acesso" 1 Acesso como Superior
"acesso" 2 Acesso como Equipe
"acesso" 3 Acesso como Facilitador

getModels

/panels GET

Requisição para obter os Modelos e Submodelos de Painéis cadastrados na empresa.

Aqui se consome os modelos de painéis da tabela painel_modelo​.

URL

https://api.grupoadvis.com.br/panels/getModels

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getModels", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getModels' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 3093,
			"id_grupo": null,
			"nome": "Gerência de Vendas - Região 1",
			"data_cadastro": "2019-08-19T16:45:54.000Z",
			"status": 1,
			"confidencial": 0,
			"ordem": null,
			"base": 0
	  	},
	 	{
			"id": 3094,
			"id_grupo": 648,
			"nome": "GV Região 1",
			"data_cadastro": "2019-08-19T16:45:54.000Z",
			"status": 1,
			"confidencial": 0,
			"ordem": null,
			"base": 3093
	  	}
	]
}
Legenda
Campo Valor Significado
"confidencial" 0 Modelo não confidencial
"confidencial" 1 Modelo confidencial
"status" 0 Modelo desativado
"status" 1 Modelo ativo
"base" 0 É um Modelo Base
"base" ID_PAINEL_MODELO É um submodelo do ID_PAINEL_MODELO
"ordem" NULL Ordem dentro do grupo não definida
"ordem" Int Inteiro representando a posição do submodelo no Grupo ao qual pertence

getModelById

/panels GET

Requisição para obter um determinado Modelo ou Submodelo de Painel cadastrados na empresa.

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do modelo de painél que você pode obter na /panels/getModels)

URL

https://api.grupoadvis.com.br/panels/getModelById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getModelById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getModelById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 3094,
			"id_grupo": 648,
			"nome": "GV Região 1",
			"data_cadastro": "2019-08-19T16:45:54.000Z",
			"status": 1,
			"confidencial": 0,
			"ordem": null,
			"base": 3093
		}
	]
}
Legenda
Campo Valor Significado
"confidencial" 0 Modelo não confidencial
"confidencial" 1 Modelo confidencial
"status" 0 Modelo desativado
"status" 1 Modelo ativo
"base" 0 É um Modelo Base
"base" ID_PAINEL_MODELO É um submodelo do ID_PAINEL_MODELO
"ordem" NULL Ordem dentro do grupo não definida
"ordem" Int Inteiro representando a posição do submodelo no Grupo ao qual pertence

getModelIndicators

/panels GET

Requisição para obter os Indicadores cadastrados para um determinado Modelo de Painel. Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do modelo de painél que você pode obter na /panels/getModels)

URL

https://api.grupoadvis.com.br/panels/getModelIndicators/ID

JavaScript
fetch("https://api.grupoadvis.com.br/panels/getModelIndicators/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/panels/getModelIndicators/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_painel_modelo": 4053,
			"id_indicador": 9009,
			"inicio_mes": 0,
			"inicio_ano": 0,
			"fim_mes": 0,
			"fim_ano": 0,
			"ordem": 1
		},
		{
			"id_painel_modelo": 4053,
			"id_indicador": 9475,
			"inicio_mes": 0,
			"inicio_ano": 0,
			"fim_mes": 0,
			"fim_ano": 0,
			"ordem": 2
		}
	]
}

updatePanel

/panels PUT

Substitua ID pelo ID do registro que deseja fazer a atualização. (neste caso o "id" do painél, os quais você pode obter na /panels/getPanels)

URL

https://api.grupoadvis.com.br/panels/updatePanel/ID

JavaScript
fetch("https://api.grupoadvis.com.br/panels/updatePanel/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"nome" : "Painel Ativo",
		"desativado" : 0
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/panels/updatePanel/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
	--data '{
		"nome" : "Painel Ativo",
		"desativado" : 0
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
  	}
}
Legenda
Campo Valor Significado
"desativado" 0 Ativo
"desativado" 1 Inativo

updateProgressPanel

/panels PUT

Substitua ID_PAINEL pelo ID do registro que deseja fazer a atualização. (neste caso o "id" do painél, os quais você pode obter na /panels/getPanels)

Substitua ID_INDICADOR pelo ID do registro que deseja fazer a atualização. (neste caso o "id" do indicador, os quais você pode obter nos GET's da rotas /indicator

Mês e ano:
Campo Range de valores (Int)
"mes" 1 ~ 12
"ano" 0 ~ 9999

Informações Úteis

Os valores enviados no body dessa requisição devem sempre ser numéricos, pois passarão por um tratamento e serão inseridos no banco sempre como Float (%.2f / 0.00).

Se o indicador do ID_INDICADOR não tiver o campo "meta_ajustavel" = 1 os campos com os prefixos meta_ajustada_* serão ignorados nesta requisição, mesmo que você passe valores neles.

A rota aceita indicadores Comuns (tipo = 0) e Fórmula (tipo = 5). Para Fórmula, os campos de Meta e Realizado gravam somente as entradas manuais existentes na raiz ou no numerador/denominador de uma divisão/percentual na raiz; os demais campos calculados são ignorados. Envie null para limpar uma entrada manual. A Meta Ajustada também é aceita quando meta_ajustavel = 1 no próprio indicador; quando ela é herdada de uma referência, permanece calculada e não pode ser sobrescrita. O resultado da Fórmula e suas dependências são enfileirados para o recálculo automático do GMR.

URL

https://api.grupoadvis.com.br/panels/updateProgressPanel/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO

JavaScript
fetch("https://api.grupoadvis.com.br/panels/updateProgressPanel/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"meta_numerador" : 456.0,
		"meta_denominador" : 123.234,
		"meta_ajustada_numerador" : 456.1,
		"meta_ajustada_denominador" : 123,
		"realizado_numerador" : 456.8322,
		"realizado_denominador" : 123
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/panels/updateProgressPanel/panel/ID_PAINEL/indicator/ID_INDICADOR/month/MES/year/ANO' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
	--data '{
		"meta_numerador" : 456.0,
		"meta_denominador" : 123.234,
		"meta_ajustada_numerador" : 456.1,
		"meta_ajustada_denominador" : 123,
		"realizado_numerador" : 456.8322,
		"realizado_denominador" : 123
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
  	}
}
Legenda
Campo Valor Significado
"desativado" 0 Ativo
"desativado" 1 Inativo

insertAccessPanel

/panels POST

Insere painéis de acesso.

Campos Obrigatórios

Campo Tipo
"id_gmr_processo" Int
"id_colaborador" Int
"id_gmr_painel" Int
URL

https://api.grupoadvis.com.br/panels/insertAccessPanel

JavaScript
fetch("https://api.grupoadvis.com.br/panels/insertAccessPanel", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": {
		"id_gmr_processo" : 88,
		"id_colaborador" : 18723,
		"id_gmr_painel" : 3040,
		"acesso": 2,
		"permissao": 1
	}
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request POST \
--url https://api.grupoadvis.com.br/panels/insertAccessPanel \
--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
--header 'token: SEU_TOKEN_AQUI' \
--data '{
	"id_gmr_processo" : 88,
	"id_colaborador" : 18723,
	"id_gmr_painel" : 3040,
	"acesso": 2,
	"permissao": 1
}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 0
	}
}

Legenda
Campo Valor Significado
"permissao" 0 Permissão apenas para visualizar o painel.
"permissao" 1 Permissão para editar os valores do painel.
"acesso" 0 Acesso como Responsável
"acesso" 1 Acesso como Superior
"acesso" 2 Acesso como Equipe
"acesso" 3 Acesso como Facilitador

Processos

/processes

getGmrProcesses

/processes GET

Requisição para obter os processos GMR cadastrados na empresa.

Aqui se consome os processos da tabela gmr_processo​.

URL

https://api.grupoadvis.com.br/processes/getGmrProcesses

JavaScript
fetch("https://api.grupoadvis.com.br/processes/getGmrProcesses", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/processes/getGmrProcesses' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 88,
			"nome": "GMR 2019",
			"inicio_mes": 1,
			"inicio_ano": 2019,
			"fim_mes": 12,
			"fim_ano": 2019,
			"encerrado": 0
		},
		{
			"id": 113,
			"nome": "GMR 2020",
			"inicio_mes": 1,
			"inicio_ano": 2020,
			"fim_mes": 12,
			"fim_ano": 2020,
			"encerrado": 0
		}
	]
}
Legenda
Campo Valor Significado
"encerrado" 0 Ativo
"encerrado" 1 Inativo

getGmrProcessById

/processes GET

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do processo que você pode obter na /processes/getGmrProcesses)

URL

https://api.grupoadvis.com.br/processes/getGmrProcessById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/processes/getGmrProcessById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/processes/getGmrProcessById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
	{
		"id_gmr_processo": 88,
		"nome": "GMR 2019",
		"inicio_mes": 1,
		"inicio_ano": 2019,
		"fim_mes": 12,
		"fim_ano": 2019,
		"encerrado": 0,
		"minimo": 0,
		"maximo": 70,
		"cor": "#9d261d"
	},
	{
		"id_gmr_processo": 88,
		"nome": "GMR 2019",
		"inicio_mes": 1,
		"inicio_ano": 2019,
		"fim_mes": 12,
		"fim_ano": 2019,
		"encerrado": 0,
		"minimo": 70,
		"maximo": 90,
		"cor": "#ffc40d"
	},
	{
		"id_gmr_processo": 88,
		"nome": "GMR 2019",
		"inicio_mes": 1,
		"inicio_ano": 2019,
		"fim_mes": 12,
		"fim_ano": 2019,
		"encerrado": 0,
		"minimo": 90,
		"maximo": 100,
		"cor": "#46A546"
	}
	]
}
Legenda
Campo Valor Significado
"encerrado" 0 Ativo
"encerrado" 1 Inativo

getGmrProcessIntervals

/processes GET

Requisição para obter os intervalos cadastrados para um determinado Processo GMR da empresa.

Substitua ID pelo ID do registro que deseja consumir. (neste caso o "id" do processo que você pode obter na /processes/getGmrProcesses)

URL

https://api.grupoadvis.com.br/processes/getGmrProcessIntervals/ID

JavaScript
fetch("https://api.grupoadvis.com.br/processes/getGmrProcessIntervals/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
                "Accept-Encoding": "gzip,deflate"
	},
	"body": false
	})
	.then(response => {
	console.log(response);
	})
	.catch(err => {
	console.error(err);
});
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/processes/getGmrProcessIntervals/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
        --header 'Content-Type: application/json' \ 
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id_gmr_processo": 88,
			"minimo": 0,
			"maximo": 70,
			"cor": "#9d261d"
		},
		{
			"id_gmr_processo": 88,
			"minimo": 70,
			"maximo": 90,
			"cor": "#ffc40d"
		},
		{
			"id_gmr_processo": 88,
			"minimo": 90,
			"maximo": 100,
			"cor": "#46A546"
		}
	]
}

Gestão Orçamentária

Endpoints do módulo de Gestão Orçamentária (exigem o módulo contratado pela empresa). Todas as requisições validam automaticamente que os recursos pertencem à empresa vinculada ao token utilizado.

O modelo do módulo, na ordem em que os cadastros se encadeiam: um Processo orçamentário (com sua moeda) tem Períodos; os cadastros são globais da empresa e valem para todos os períodos — Contas (plano de contas hierárquico, agrupável em Grupos de Conta), Centros de Resultado (o eixo organizacional, documentado junto da Dimensão adicional) e Produtos / Serviços. Dentro de cada período, a Estrutura Orçamentária define as linhas calculadas (fórmulas tipo DRE), o Planejamento guarda o orçado por conta × centro de resultado e a Importação de Resultados guarda o realizado mês a mês, com a mesma chave.

getAll — Processo

/go/processoGo GET

Retorna todos os processos orçamentários da empresa vinculada ao token.

URL

https://api.grupoadvis.com.br/go/processoGo/getAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/processoGo/getAll", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/processoGo/getAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "nome": "Orçamento Anual 2026", "moeda": "BRL" },
		{ "id": 2, "nome": "Orçamento Revisado 2026", "moeda": "USD" }
	]
}

getById — Processo

/go/processoGo GET

Retorna um processo específico pelo ID. Substitua ID pelo ID do processo, os quais você pode obter em /go/processoGo/getAll.

URL

https://api.grupoadvis.com.br/go/processoGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/processoGo/getById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/processoGo/getById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "nome": "Orçamento Anual 2026", "moeda": "BRL" }
	]
}

insert — Processo

/go/processoGo POST

Cria um novo processo orçamentário para a empresa vinculada ao token.

Campos Obrigatórios

CampoTipoObservação
"nome"StringÚnico por empresa.
"moeda"StringOpcional. Código ISO 4217 de 3 letras maiúsculas (ex: BRL, USD, EUR). Padrão: BRL.
URL

https://api.grupoadvis.com.br/go/processoGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/processoGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Orçamento Anual 2026",
		"moeda": "BRL"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/processoGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Orçamento Anual 2026",
		"moeda": "BRL"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 10
	}
}

update — Processo

/go/processoGo PUT

Atualiza um processo existente. Substitua ID pelo ID do processo. Envie apenas os campos que deseja alterar.

CampoTipoObservação
"nome"StringOpcional. Novo nome único do processo.
"moeda"StringOpcional. Código ISO 4217 de 3 letras maiúsculas (ex: USD, EUR).
URL

https://api.grupoadvis.com.br/go/processoGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/processoGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Orçamento Revisado 2026",
		"moeda": "USD"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/processoGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Orçamento Revisado 2026",
		"moeda": "USD"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

delete — Processo

/go/processoGo DELETE

Exclui um processo. Substitua ID pelo ID do processo. Retorna 409 se o processo possuir períodos vinculados — remova-os antes.

URL

https://api.grupoadvis.com.br/go/processoGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/processoGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/processoGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

getByProcess — Período

/go/periodoGo GET

Retorna todos os períodos de um processo. Substitua ID pelo ID do processo, os quais você pode obter em /go/processoGo/getAll.

URL

https://api.grupoadvis.com.br/go/periodoGo/getByProcess/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/periodoGo/getByProcess/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/periodoGo/getByProcess/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_processo": 1, "nome": "1º Semestre 2026", "data_inicio": "2026-01-01 00:00:00", "data_fim": "2026-06-30 00:00:00" },
		{ "id": 2, "id_go_processo": 1, "nome": "2º Semestre 2026", "data_inicio": "2026-07-01 00:00:00", "data_fim": "2026-12-31 00:00:00" }
	]
}

getById — Período

/go/periodoGo GET

Retorna um período específico pelo ID. Substitua ID pelo ID do período.

URL

https://api.grupoadvis.com.br/go/periodoGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/periodoGo/getById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/periodoGo/getById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_processo": 1, "nome": "1º Semestre 2026", "data_inicio": "2026-01-01 00:00:00", "data_fim": "2026-06-30 00:00:00" }
	]
}

insert — Período

/go/periodoGo POST

Cria um novo período para um processo orçamentário. Retorna 409 se o intervalo de datas se sobrepuser a um período já existente no mesmo processo.

Campos Obrigatórios

CampoTipoObservação
"id_go_processo"IntegerID do processo pai. Deve pertencer à empresa do token.
"nome"StringNome do período.
"data_inicio"StringFormato YYYY-MM-DD ou YYYY-MM-DD HH:MM:SS.
"data_fim"StringFormato YYYY-MM-DD ou YYYY-MM-DD HH:MM:SS. Deve ser posterior a data_inicio.
URL

https://api.grupoadvis.com.br/go/periodoGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/periodoGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo": 1,
		"nome": "1º Semestre 2026",
		"data_inicio": "2026-01-01",
		"data_fim": "2026-06-30"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/periodoGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id_go_processo": 1,
		"nome": "1º Semestre 2026",
		"data_inicio": "2026-01-01",
		"data_fim": "2026-06-30"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 5
	}
}

update — Período

/go/periodoGo PUT

Atualiza um período existente. Substitua ID pelo ID do período. Envie apenas os campos que deseja alterar. Retorna 409 se o novo intervalo sobrepuser outro período do mesmo processo.

CampoTipoObservação
"nome"StringOpcional. Novo nome do período.
"data_inicio"StringOpcional. Formato YYYY-MM-DD ou YYYY-MM-DD HH:MM:SS.
"data_fim"StringOpcional. Formato YYYY-MM-DD ou YYYY-MM-DD HH:MM:SS. Deve ser posterior a data_inicio.
URL

https://api.grupoadvis.com.br/go/periodoGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/periodoGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "1º Semestre 2026 (revisado)",
		"data_fim": "2026-07-31"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/periodoGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "1º Semestre 2026 (revisado)",
		"data_fim": "2026-07-31"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

delete — Período

/go/periodoGo DELETE

Exclui um período. Substitua ID pelo ID do período. Retorna 409 se o período possuir lançamentos de planejamento ou resultado vinculados — remova-os antes.

URL

https://api.grupoadvis.com.br/go/periodoGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/periodoGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/periodoGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

getAll — Conta

/go/contaGo GET

Retorna todas as contas não bloqueadas da empresa vinculada ao token em formato de árvore hierárquica, ordenadas por ID. Cada nó contém o campo filhos com as contas filhas aninhadas. Suporta paginação via parâmetros limit e offset na URL.

URL

https://api.grupoadvis.com.br/go/contaGo/getAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/getAll", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 10, "id_go_conta": null, "nome": "Receita Operacional", "codigo": "1.0", "observacao": null, "tipo": 0, "bloqueada": 0,
			"filhos": [
				{ "id": 15, "id_go_conta": 10, "nome": "Receita de Vendas", "codigo": "1.1", "observacao": "Vendas do período", "tipo": 0, "bloqueada": 0, "filhos": [] }
			]
		}
	]
}

getById — Conta

/go/contaGo GET

Retorna uma conta específica pelo ID, incluindo contas bloqueadas. Substitua ID pelo ID da conta. O parâmetro withChildren=true retorna a conta e todos os seus descendentes em formato de árvore hierárquica com o campo filhos, utilizando uma única query WITH RECURSIVE. Sem o parâmetro, retorna apenas o nó raiz.

URL

https://api.grupoadvis.com.br/go/contaGo/getById/ID?withChildren=true

JavaScript
// withChildren=true retorna árvore hierárquica com campo 'filhos'
// Remova o parâmetro para retornar apenas o nó raiz (lista simples)
fetch("https://api.grupoadvis.com.br/go/contaGo/getById/ID?withChildren=true", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getById/ID?withChildren=true' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON — com withChildren=true
{
	"response": [
		{
			"id": 10, "id_go_conta": null, "nome": "Receita Operacional", "codigo": "1.0", "observacao": null, "tipo": 0, "bloqueada": 0,
			"filhos": [
				{ "id": 15, "id_go_conta": 10, "nome": "Receita de Vendas", "codigo": "1.1", "observacao": null, "tipo": 0, "bloqueada": 0, "filhos": [] }
			]
		}
	]
}

getByCodigo — Conta

/go/contaGo GET

Idêntico ao getById, mas identifica a conta pelo código. Substitua CODIGO pelo código da conta. O parâmetro withChildren=true retorna a conta e todos os seus descendentes em formato de árvore hierárquica com o campo filhos.

URL

https://api.grupoadvis.com.br/go/contaGo/getByCodigo/CODIGO?withChildren=true

JavaScript
// withChildren=true retorna árvore hierárquica com campo 'filhos'
// Remova o parâmetro para retornar apenas o nó raiz (lista simples)
fetch("https://api.grupoadvis.com.br/go/contaGo/getByCodigo/CODIGO?withChildren=true", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getByCodigo/CODIGO?withChildren=true' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON — com withChildren=true
{
	"response": [
		{
			"id": 10, "id_go_conta": null, "nome": "Receita Operacional", "codigo": "1.0", "observacao": null, "tipo": 0, "bloqueada": 0,
			"filhos": [
				{ "id": 15, "id_go_conta": 10, "nome": "Receita de Vendas", "codigo": "1.1", "observacao": null, "tipo": 0, "bloqueada": 0, "filhos": [] }
			]
		}
	]
}

getWithoutGroup — Conta

/go/contaGo GET

Retorna todas as contas não bloqueadas que não estão associadas a nenhum grupo de contas, ordenadas por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/contaGo/getWithoutGroup

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/getWithoutGroup", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getWithoutGroup' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 30, "id_go_conta": null, "nome": "Despesa Administrativa", "codigo": "3.0", "observacao": null, "tipo": 1, "bloqueada": 0 },
		{ "id": 35, "id_go_conta": 30, "nome": "Despesa com Pessoal", "codigo": "3.1", "observacao": null, "tipo": 1, "bloqueada": 0 }
	]
}

getByGroup — Conta

/go/contaGo GET

Retorna as contas não bloqueadas de um grupo específico, ordenadas por ID. Substitua ID_GRUPO pelo ID do grupo, os quais você pode obter em /go/grupoContaGo/getAll. O campo adicional ordem indica a posição de cadastro da conta no grupo.

URL

https://api.grupoadvis.com.br/go/contaGo/getByGroup/ID_GRUPO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/getByGroup/ID_GRUPO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getByGroup/ID_GRUPO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 10, "id_go_conta": null, "nome": "Receita Operacional", "codigo": "1.0", "observacao": null, "tipo": 0, "bloqueada": 0, "ordem": 1 },
		{ "id": 15, "id_go_conta": 10, "nome": "Receita de Vendas", "codigo": "1.1", "observacao": null, "tipo": 0, "bloqueada": 0, "ordem": 2 }
	]
}

getByGroupCodigo — Conta

/go/contaGo GET

Idêntico ao getByGroup, mas identifica o grupo pelo código. Substitua CODIGO_GRUPO pelo código do grupo.

URL

https://api.grupoadvis.com.br/go/contaGo/getByGroupCodigo/CODIGO_GRUPO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/getByGroupCodigo/CODIGO_GRUPO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getByGroupCodigo/CODIGO_GRUPO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 10, "id_go_conta": null, "nome": "Receita Operacional", "codigo": "1.0", "observacao": null, "tipo": 0, "bloqueada": 0, "ordem": 1 },
		{ "id": 15, "id_go_conta": 10, "nome": "Receita de Vendas", "codigo": "1.1", "observacao": null, "tipo": 0, "bloqueada": 0, "ordem": 2 }
	]
}

getBlocked — Conta

/go/contaGo GET

Retorna todas as contas bloqueadas (lixeira) da empresa, ordenadas por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/contaGo/getBlocked

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/getBlocked", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/contaGo/getBlocked' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 20, "id_go_conta": null, "nome": "Conta Obsoleta", "codigo": "9.0", "observacao": null, "tipo": 1, "bloqueada": 1 },
		{ "id": 21, "id_go_conta": 20, "nome": "Sub-conta Obsoleta", "codigo": "9.1", "observacao": null, "tipo": 1, "bloqueada": 1 }
	]
}

insert — Conta

/go/contaGo POST

Cria uma nova conta para a empresa vinculada ao token. Contas filhas herdam automaticamente os grupos da conta pai. O histórico de criação é registrado.

Campos Obrigatórios

CampoTipoObservação
"nome"StringMáximo 255 caracteres.
"codigo"StringMáximo 255 caracteres. Único por empresa.
"tipo"IntegerOpcional. 0 = credora, 1 = devedora. Padrão: 0.
"id_go_conta"IntegerOpcional. ID da conta pai. Deve pertencer à empresa.
"observacao"StringOpcional. Texto livre.
"id_go_grupo"IntegerOpcional. Associa automaticamente ao grupo informado.
URL

https://api.grupoadvis.com.br/go/contaGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receita Operacional",
		"codigo": "1.0",
		"tipo": 0,
		"observacao": "Conta principal de receitas"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/contaGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receita Operacional",
		"codigo": "1.0",
		"tipo": 0,
		"observacao": "Conta principal de receitas"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 10
	}
}

update — Conta

/go/contaGo PUT

Atualiza uma conta existente não bloqueada. Substitua ID pelo ID da conta. Envie apenas os campos que deseja alterar. Defina id_go_conta como null para remover a conta pai. Valida contra loops hierárquicos. O histórico de alterações é registrado.

CampoTipoObservação
"nome"StringOpcional. Máximo 255 caracteres.
"codigo"StringOpcional. Máximo 255 caracteres. Único por empresa.
"tipo"IntegerOpcional. 0 = credora, 1 = devedora.
"id_go_conta"Integer|nullOpcional. ID da conta pai ou null para remover.
"observacao"String|nullOpcional. Texto livre.
URL

https://api.grupoadvis.com.br/go/contaGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receita Operacional (revisada)",
		"tipo": 0
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receita Operacional (revisada)",
		"tipo": 0
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

updateByCodigo — Conta

/go/contaGo PUT

Idêntico ao update por ID, mas identifica a conta pelo código. Substitua CODIGO pelo código atual da conta. Aceita os mesmos campos no body.

URL

https://api.grupoadvis.com.br/go/contaGo/updateByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/updateByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receita Operacional (revisada)"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/updateByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receita Operacional (revisada)"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

block — Conta

/go/contaGo PUT

Bloqueia (exclusão lógica) uma conta e todas as suas contas filhas recursivamente. Substitua ID pelo ID da conta. Retorna 409 se a conta já estiver bloqueada.

URL

https://api.grupoadvis.com.br/go/contaGo/block/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/block/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/block/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

blockByCodigo — Conta

/go/contaGo PUT

Idêntico ao block por ID, mas identifica a conta pelo código. Substitua CODIGO pelo código da conta.

URL

https://api.grupoadvis.com.br/go/contaGo/blockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/blockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/blockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblock — Conta

/go/contaGo PUT

Desbloqueia uma conta. Substitua ID pelo ID da conta. Envie includeChildren: true no body para desbloquear também as contas filhas. Retorna 409 se a conta não estiver bloqueada.

CampoTipoObservação
"includeChildren"BooleanOpcional. Padrão: false. Se true, desbloqueia também as filhas.
URL

https://api.grupoadvis.com.br/go/contaGo/unblock/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/unblock/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"includeChildren": true
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/unblock/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"includeChildren": true
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblockByCodigo — Conta

/go/contaGo PUT

Idêntico ao unblock por ID, mas identifica a conta pelo código. Substitua CODIGO pelo código da conta. Aceita os mesmos campos no body.

URL

https://api.grupoadvis.com.br/go/contaGo/unblockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/unblockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"includeChildren": true
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/unblockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"includeChildren": true
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

delete — Conta

/go/contaGo DELETE

Exclui permanentemente uma conta. Somente contas bloqueadas podem ser excluídas. Substitua ID pelo ID da conta. Retorna 409 se a conta possuir contas filhas, associações com grupos ou referências em planejamentos.

URL

https://api.grupoadvis.com.br/go/contaGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/contaGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

deleteByCodigo — Conta

/go/contaGo DELETE

Idêntico ao delete por ID, mas identifica a conta pelo código. Substitua CODIGO pelo código da conta.

URL

https://api.grupoadvis.com.br/go/contaGo/deleteByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/deleteByCodigo/CODIGO", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/contaGo/deleteByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

clearTrash — Conta

/go/contaGo DELETE

Exclui permanentemente todas as contas bloqueadas que podem ser excluídas. Contas com dependências (filhas, grupos ou planejamentos) são ignoradas e contabilizadas em skipped.

URL

https://api.grupoadvis.com.br/go/contaGo/clearTrash

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/clearTrash", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/contaGo/clearTrash' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"deleted": 3,
		"skipped": 1
	}
}

unblockAll — Conta

/go/contaGo PUT

Desbloqueia todas as contas bloqueadas da empresa de uma vez, restaurando-as da lixeira. O campo restored na resposta indica quantas contas foram restauradas.

URL

https://api.grupoadvis.com.br/go/contaGo/unblockAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/unblockAll", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/contaGo/unblockAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"restored": 5
	}
}

addToGroup — Conta

/go/contaGo POST

Associa uma conta a um grupo. As contas filhas são automaticamente adicionadas ao grupo. Se uma conta já estiver associada ao grupo, a duplicação é ignorada.

Campos Obrigatórios

CampoTipoObservação
"id_go_grupo"IntegerID do grupo. Deve pertencer à empresa.
"id_go_conta"IntegerID da conta. Deve pertencer à empresa.
URL

https://api.grupoadvis.com.br/go/contaGo/addToGroup

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/addToGroup", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_grupo": 1,
		"id_go_conta": 10
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/contaGo/addToGroup' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id_go_grupo": 1,
		"id_go_conta": 10
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success"
	}
}

removeFromGroup — Conta

/go/contaGo POST

Remove uma conta de um grupo. Retorna 409 se a conta pai ainda estiver associada ao grupo. Envie includeChildren: true para remover também as contas filhas.

Campos Obrigatórios

CampoTipoObservação
"id_go_grupo"IntegerID do grupo.
"id_go_conta"IntegerID da conta.
"includeChildren"BooleanOpcional. Padrão: false. Se true, remove também as filhas.
URL

https://api.grupoadvis.com.br/go/contaGo/removeFromGroup

JavaScript
fetch("https://api.grupoadvis.com.br/go/contaGo/removeFromGroup", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_grupo": 1,
		"id_go_conta": 10,
		"includeChildren": true
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/contaGo/removeFromGroup' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id_go_grupo": 1,
		"id_go_conta": 10,
		"includeChildren": true
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success"
	}
}

getAll — Grupo de Conta

/go/grupoContaGo GET

Retorna todos os grupos de contas da empresa vinculada ao token, ordenados por código. Suporta paginação via parâmetros limit e offset na URL.

URL

https://api.grupoadvis.com.br/go/grupoContaGo/getAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/getAll", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/getAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "nome": "Receitas", "codigo": "GRP-01" },
		{ "id": 2, "nome": "Despesas Fixas", "codigo": "GRP-02" }
	]
}

getById — Grupo de Conta

/go/grupoContaGo GET

Retorna um grupo de contas pelo ID. Substitua ID pelo ID do grupo, os quais você pode obter em /go/grupoContaGo/getAll.

URL

https://api.grupoadvis.com.br/go/grupoContaGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/getById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/getById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "nome": "Receitas", "codigo": "GRP-01" }
	]
}

getByCodigo — Grupo de Conta

/go/grupoContaGo GET

Retorna um grupo de contas pelo código. Substitua CODIGO pelo código do grupo.

URL

https://api.grupoadvis.com.br/go/grupoContaGo/getByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/getByCodigo/CODIGO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/getByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "nome": "Receitas", "codigo": "GRP-01" }
	]
}

insert — Grupo de Conta

/go/grupoContaGo POST

Cria um novo grupo de contas para a empresa vinculada ao token.

Campos Obrigatórios

CampoTipoObservação
"nome"StringMáximo 255 caracteres.
"codigo"StringMáximo 50 caracteres. Único por empresa.
URL

https://api.grupoadvis.com.br/go/grupoContaGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receitas",
		"codigo": "GRP-01"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receitas",
		"codigo": "GRP-01"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 1
	}
}

update — Grupo de Conta

/go/grupoContaGo PUT

Atualiza um grupo de contas existente. Substitua ID pelo ID do grupo. Envie apenas os campos que deseja alterar.

CampoTipoObservação
"nome"StringOpcional. Máximo 255 caracteres.
"codigo"StringOpcional. Máximo 50 caracteres. Único por empresa.
URL

https://api.grupoadvis.com.br/go/grupoContaGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receitas Operacionais",
		"codigo": "GRP-01A"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receitas Operacionais",
		"codigo": "GRP-01A"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

updateByCodigo — Grupo de Conta

/go/grupoContaGo PUT

Idêntico ao update por ID, mas identifica o grupo pelo código. Substitua CODIGO pelo código atual do grupo. Aceita os mesmos campos no body.

URL

https://api.grupoadvis.com.br/go/grupoContaGo/updateByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/updateByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receitas Operacionais"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/updateByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receitas Operacionais"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

delete — Grupo de Conta

/go/grupoContaGo DELETE

Exclui um grupo de contas e remove automaticamente todas as associações entre o grupo e as contas (registros da tabela de junção). Substitua ID pelo ID do grupo.

URL

https://api.grupoadvis.com.br/go/grupoContaGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/grupoContaGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/grupoContaGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

Centro de Resultado e Dimensão adicional

/go/centroResultadoGo

O centro de resultado (CR) é o eixo organizacional do orçamento: toda configuração de planejamento (orçado) e todo lançamento de resultado (realizado) é gravado por conta × centro de resultado, mês a mês. É um cadastro plano (sem hierarquia), com código único por empresa, filial e departamento opcionais e a mesma lixeira de Conta e Produto.

A dimensão adicional é uma granularidade opcional que acompanha o mesmo fato, ao lado da conta e do CR. Tem o mesmo formato de cadastro do CR (nome, código único por empresa, filial, departamento, observação e lixeira) e vínculo opcional N:N com os centros de resultado — um CR com dimensões vinculadas é dito dimensionado. No fato, dimensão vazia significa "sem dimensão", e não "todas".

Nesta APICentro de ResultadoDimensão adicional
CadastroEndpoints abaixo/go/dimensaoResultadoGo — cadastro, lixeira e o vínculo N:N com o CR
Planejamento e Importação de ResultadosObrigatório: id_go_centro_resultado / centro_codigo e o segmento centro/CENTRO das URLsOpcional: sufixo /dimensao/DIMENSAO na URL ou dimensao_codigo / id_go_dimensao_resultado no corpo. Ausente = fatia sem dimensão. As leituras devolvem dimensao_codigo e dimensao_nome
Indicadores Fórmulago_config.centrosResultadogo_config.dimensoesResultado — lista vazia ou ausente = sem filtro

Centros de resultado dimensionados

Num CR dimensionado a fatia sem dimensão é o Acumulado somente-leitura, que prevalece sobre a soma das dimensões nos totais: escrever sem informar dimensão nesse centro é recusado com 409 (sem_dimensao_nao_editavel) em vez de gravar no Acumulado. Toda operação alcança exatamente uma fatia — a informada, ou a fatia sem dimensão quando nada é informado — e nunca "todas". A dimensão precisa existir na empresa e estar disponível naquele centro pela regra vínculo ∪ metodologia, senão a resposta é 412. Quais centros são dimensionados você consulta em vinculos ou no SIG, em Gestão Orçamentária > Cadastros.


getAll — Centro de Resultado

/go/centroResultadoGo GET

Retorna todos os centros de resultado não bloqueados da empresa vinculada ao token, ordenados por ID. Suporta paginação via parâmetros limit e offset na URL. Os campos id_filial e id_departamento referenciam os registros de /company/getBranches e /company/getDepartments e podem ser null.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getAll", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 },
		{ "id": 6, "id_filial": 1, "id_departamento": null, "nome": "Administrativo", "codigo": "CR-002", "observacao": null, "bloqueada": 0 }
	]
}

getAllIncludingBlocked — Centro de Resultado

/go/centroResultadoGo GET

Retorna todos os centros de resultado da empresa, incluindo os bloqueados (lixeira), ordenados por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getAllIncludingBlocked

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getAllIncludingBlocked", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getAllIncludingBlocked' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 },
		{ "id": 6, "id_filial": 1, "id_departamento": null, "nome": "Administrativo", "codigo": "CR-002", "observacao": null, "bloqueada": 0 },
		{ "id": 7, "id_filial": null, "id_departamento": null, "nome": "Logística (desativado)", "codigo": "CR-003", "observacao": null, "bloqueada": 1 }
	]
}

getById — Centro de Resultado

/go/centroResultadoGo GET

Retorna um centro de resultado específico pelo ID, incluindo bloqueados. Substitua ID pelo ID do centro de resultado. Retorna 422 se o ID não for um inteiro e 412 se ele não existir ou não pertencer à sua empresa.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 }
	]
}

getByCodigo — Centro de Resultado

/go/centroResultadoGo GET

Idêntico ao getById, mas identifica o centro de resultado pelo código. Substitua CODIGO pelo código do centro de resultado (único por empresa).

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getByCodigo/CODIGO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 }
	]
}

getBlocked — Centro de Resultado

/go/centroResultadoGo GET

Retorna todos os centros de resultado bloqueados (lixeira) da empresa, ordenados por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getBlocked

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getBlocked", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getBlocked' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 7, "id_filial": null, "id_departamento": null, "nome": "Logística (desativado)", "codigo": "CR-003", "observacao": null, "bloqueada": 1 }
	]
}

getByFilial — Centro de Resultado

/go/centroResultadoGo GET

Retorna os centros de resultado não bloqueados vinculados a uma filial. Substitua ID_FILIAL pelo ID da filial, que você obtém em /company/getBranches. Retorna 412 se a filial não existir ou não pertencer à sua empresa. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getByFilial/ID_FILIAL

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getByFilial/ID_FILIAL", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getByFilial/ID_FILIAL' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 },
		{ "id": 6, "id_filial": 1, "id_departamento": null, "nome": "Administrativo", "codigo": "CR-002", "observacao": null, "bloqueada": 0 }
	]
}

getByDepartamento — Centro de Resultado

/go/centroResultadoGo GET

Retorna os centros de resultado não bloqueados vinculados a um departamento. Substitua ID_DEPARTAMENTO pelo ID do departamento, que você obtém em /company/getDepartments. Retorna 412 se o departamento não existir ou não pertencer à sua empresa. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/getByDepartamento/ID_DEPARTAMENTO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/getByDepartamento/ID_DEPARTAMENTO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/getByDepartamento/ID_DEPARTAMENTO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "id_filial": 1, "id_departamento": 3, "nome": "Comercial", "codigo": "CR-001", "observacao": "Centro de resultado da área comercial", "bloqueada": 0 }
	]
}

insert — Centro de Resultado

/go/centroResultadoGo POST

Cria um novo centro de resultado para a empresa vinculada ao token. O registro nasce desbloqueado e a criação é registrada no histórico do centro de resultado com o responsável API.

Campos Obrigatórios

CampoTipoObservação
"nome"StringObrigatório. Máximo 255 caracteres.
"codigo"StringObrigatório. Máximo 255 caracteres. Único por empresa — retorna 409 se já existir um centro de resultado com o mesmo código.
"observacao"StringOpcional. Texto livre.
"id_filial"IntegerOpcional. ID de uma filial da empresa (/company/getBranches). Retorna 412 se não existir ou pertencer a outra empresa.
"id_departamento"IntegerOpcional. ID de um departamento da empresa (/company/getDepartments). Retorna 412 se não existir ou pertencer a outra empresa.
URL

https://api.grupoadvis.com.br/go/centroResultadoGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Comercial",
		"codigo": "CR-001",
		"observacao": "Centro de resultado da área comercial",
		"id_filial": 1,
		"id_departamento": 3
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Comercial",
		"codigo": "CR-001",
		"observacao": "Centro de resultado da área comercial",
		"id_filial": 1,
		"id_departamento": 3
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 5
	}
}

update — Centro de Resultado

/go/centroResultadoGo PUT

Atualiza um centro de resultado existente não bloqueado. Substitua ID pelo ID do centro de resultado. Envie apenas os campos que deseja alterar; pelo menos um campo deve ser informado (422). Cada campo alterado gera uma entrada no histórico do centro de resultado.

CampoTipoObservação
"nome"StringOpcional. Máximo 255 caracteres. Não pode ser vazio.
"codigo"StringOpcional. Máximo 255 caracteres. Único por empresa (409 se já usado por outro centro).
"observacao"String|nullOpcional. Texto livre; null limpa o campo.
"id_filial"Integer|nullOpcional. ID de uma filial da empresa; null remove o vínculo.
"id_departamento"Integer|nullOpcional. ID de um departamento da empresa; null remove o vínculo.
URL

https://api.grupoadvis.com.br/go/centroResultadoGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Comercial (revisado)",
		"id_departamento": null
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Comercial (revisado)",
		"id_departamento": null
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

updateByCodigo — Centro de Resultado

/go/centroResultadoGo PUT

Idêntico ao update por ID, mas identifica o centro de resultado pelo código. Substitua CODIGO pelo código atual do centro de resultado. Aceita os mesmos campos no body — inclusive um novo codigo.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/updateByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/updateByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Comercial (revisado)"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/updateByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Comercial (revisado)"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

block — Centro de Resultado

/go/centroResultadoGo PUT

Bloqueia (exclusão lógica, lixeira) um centro de resultado. Substitua ID pelo ID do centro de resultado. Retorna 409 se ele já estiver bloqueado. O bloqueio não apaga nada: planejamentos, lançamentos e vínculos com dimensões adicionais são preservados e o centro deixa de ser oferecido nas telas e nos endpoints que listam apenas registros ativos.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/block/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/block/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/block/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

blockByCodigo — Centro de Resultado

/go/centroResultadoGo PUT

Idêntico ao block por ID, mas identifica o centro de resultado pelo código. Substitua CODIGO pelo código do centro de resultado.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/blockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/blockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/blockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblock — Centro de Resultado

/go/centroResultadoGo PUT

Desbloqueia (restaura da lixeira) um centro de resultado. Substitua ID pelo ID do centro de resultado. Retorna 409 se ele não estiver bloqueado.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/unblock/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/unblock/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/unblock/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblockByCodigo — Centro de Resultado

/go/centroResultadoGo PUT

Idêntico ao unblock por ID, mas identifica o centro de resultado pelo código. Substitua CODIGO pelo código do centro de resultado.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/unblockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/unblockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/unblockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblockAll — Centro de Resultado

/go/centroResultadoGo PUT

Desbloqueia todos os centros de resultado bloqueados da empresa de uma vez, restaurando-os da lixeira. O campo restored na resposta indica quantos registros foram restaurados (0 quando a lixeira está vazia).

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/unblockAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/unblockAll", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/unblockAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"restored": 2
	}
}

delete — Centro de Resultado

/go/centroResultadoGo DELETE

Exclui permanentemente um centro de resultado. Somente registros bloqueados podem ser excluídos (409 caso contrário — bloqueie primeiro). Substitua ID pelo ID do centro de resultado. Retorna 409 se ele for referenciado por participantes da matriz de responsabilidade, por configurações de planejamento ou por lançamentos de resultado. Vínculos com dimensões adicionais não impedem a exclusão e são removidos junto. A exclusão é registrada no histórico.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

deleteByCodigo — Centro de Resultado

/go/centroResultadoGo DELETE

Idêntico ao delete por ID, mas identifica o centro de resultado pelo código. Substitua CODIGO pelo código do centro de resultado.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/deleteByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/deleteByCodigo/CODIGO", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/deleteByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

clearTrash — Centro de Resultado

/go/centroResultadoGo DELETE

Exclui permanentemente todos os centros de resultado bloqueados que podem ser excluídos. Registros com dependências (participantes, planejamento ou lançamentos de resultado) são ignorados e contabilizados em skipped; os excluídos, em deleted.

URL

https://api.grupoadvis.com.br/go/centroResultadoGo/clearTrash

JavaScript
fetch("https://api.grupoadvis.com.br/go/centroResultadoGo/clearTrash", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/centroResultadoGo/clearTrash' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"deleted": 2,
		"skipped": 1
	}
}

getAll — Produto / Serviço

/go/produtoGo GET

Retorna todos os produtos e serviços não bloqueados da empresa vinculada ao token, ordenados por ID. Suporta paginação via parâmetros limit e offset na URL.

URL

https://api.grupoadvis.com.br/go/produtoGo/getAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getAll", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 },
		{ "id": 2, "id_go_conta": 10, "nome": "Serviço B", "codigo": "SERV-001", "tipo": 1, "metodologia": 1, "unidade_medida": "h", "observacao": "Consultoria", "bloqueada": 0 }
	]
}

getAllIncludingBlocked — Produto / Serviço

/go/produtoGo GET

Retorna todos os produtos e serviços da empresa, incluindo bloqueados, ordenados por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/produtoGo/getAllIncludingBlocked

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getAllIncludingBlocked", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getAllIncludingBlocked' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 },
		{ "id": 3, "id_go_conta": null, "nome": "Produto Inativo", "codigo": "PROD-002", "tipo": 0, "metodologia": 0, "unidade_medida": "", "observacao": null, "bloqueada": 1 }
	]
}

getById — Produto / Serviço

/go/produtoGo GET

Retorna um produto ou serviço específico pelo ID, incluindo bloqueados. Substitua ID pelo ID do produto.

URL

https://api.grupoadvis.com.br/go/produtoGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getById/ID", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getById/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 }
	]
}

getByCodigo — Produto / Serviço

/go/produtoGo GET

Retorna um produto ou serviço específico pelo código, incluindo bloqueados. Substitua CODIGO pelo código do produto.

URL

https://api.grupoadvis.com.br/go/produtoGo/getByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getByCodigo/CODIGO", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 }
	]
}

getBlocked — Produto / Serviço

/go/produtoGo GET

Retorna todos os produtos e serviços bloqueados (lixeira) da empresa, ordenados por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/produtoGo/getBlocked

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getBlocked", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getBlocked' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 3, "id_go_conta": null, "nome": "Produto Inativo", "codigo": "PROD-002", "tipo": 0, "metodologia": 0, "unidade_medida": "", "observacao": null, "bloqueada": 1 }
	]
}

getByTipo — Produto / Serviço

/go/produtoGo GET

Retorna produtos ou serviços não bloqueados filtrados pelo tipo. Substitua TIPO por 0 (produto) ou 1 (serviço). Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/produtoGo/getByTipo/TIPO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getByTipo/0", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getByTipo/0' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 }
	]
}

getByConta — Produto / Serviço

/go/produtoGo GET

Retorna produtos e serviços não bloqueados vinculados a uma conta específica. Substitua ID_CONTA pelo ID da conta. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/produtoGo/getByConta/ID_CONTA

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getByConta/ID_CONTA", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getByConta/ID_CONTA' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 2, "id_go_conta": 10, "nome": "Serviço B", "codigo": "SERV-001", "tipo": 1, "metodologia": 1, "unidade_medida": "h", "observacao": "Consultoria", "bloqueada": 0 }
	]
}

getWithoutConta — Produto / Serviço

/go/produtoGo GET

Retorna todos os produtos e serviços não bloqueados que não estão vinculados a nenhuma conta, ordenados por ID. Suporta paginação via limit e offset.

URL

https://api.grupoadvis.com.br/go/produtoGo/getWithoutConta

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/getWithoutConta", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/getWithoutConta' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_conta": null, "nome": "Produto A", "codigo": "PROD-001", "tipo": 0, "metodologia": 0, "unidade_medida": "kg", "observacao": null, "bloqueada": 0 }
	]
}

insert — Produto / Serviço

/go/produtoGo POST

Cria um novo produto ou serviço para a empresa vinculada ao token.

Campos Obrigatórios

CampoTipoObservação
"nome"StringObrigatório. Máximo 255 caracteres.
"codigo"StringObrigatório. Máximo 255 caracteres. Único por empresa.
"tipo"IntegerOpcional. 0 = produto, 1 = serviço. Padrão: 0.
"metodologia"IntegerOpcional. 0 ou 1. Padrão: 0.
"unidade_medida"StringOpcional. Valores aceitos: '', 'g', 'kg', 'ton', 'm', 'm²', 'm³', 'l', 'd', 'h', 'min'.
"id_go_conta"IntegerOpcional. FK para conta. A conta deve existir e não estar bloqueada.
"observacao"StringOpcional. Texto livre.
URL

https://api.grupoadvis.com.br/go/produtoGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Produto A",
		"codigo": "PROD-001",
		"tipo": 0,
		"metodologia": 0,
		"unidade_medida": "kg",
		"observacao": "Produto principal"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Produto A",
		"codigo": "PROD-001",
		"tipo": 0,
		"metodologia": 0,
		"unidade_medida": "kg",
		"observacao": "Produto principal"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 1
	}
}

update — Produto / Serviço

/go/produtoGo PUT

Atualiza um produto ou serviço existente não bloqueado. Substitua ID pelo ID do produto. Envie apenas os campos que deseja alterar. Pelo menos um campo deve ser informado.

CampoTipoObservação
"nome"StringOpcional. Máximo 255 caracteres.
"codigo"StringOpcional. Máximo 255 caracteres. Único por empresa.
"tipo"IntegerOpcional. 0 = produto, 1 = serviço.
"metodologia"IntegerOpcional. 0 ou 1.
"unidade_medida"StringOpcional. Valores aceitos: '', 'g', 'kg', 'ton', 'm', 'm²', 'm³', 'l', 'd', 'h', 'min'.
"id_go_conta"Integer|nullOpcional. FK para conta ou null para remover.
"observacao"String|nullOpcional. Texto livre.
URL

https://api.grupoadvis.com.br/go/produtoGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/update/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Produto A (revisado)",
		"unidade_medida": "ton"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/update/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Produto A (revisado)",
		"unidade_medida": "ton"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

updateByCodigo — Produto / Serviço

/go/produtoGo PUT

Idêntico ao update por ID, mas identifica o produto pelo código. Substitua CODIGO pelo código atual do produto. Aceita os mesmos campos no body.

URL

https://api.grupoadvis.com.br/go/produtoGo/updateByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/updateByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Produto A (revisado)"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/updateByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Produto A (revisado)"
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

block — Produto / Serviço

/go/produtoGo PUT

Bloqueia (exclusão lógica) um produto ou serviço. Substitua ID pelo ID do produto. Retorna 409 se o produto já estiver bloqueado.

URL

https://api.grupoadvis.com.br/go/produtoGo/block/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/block/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/block/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

blockByCodigo — Produto / Serviço

/go/produtoGo PUT

Idêntico ao block por ID, mas identifica o produto pelo código. Substitua CODIGO pelo código do produto.

URL

https://api.grupoadvis.com.br/go/produtoGo/blockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/blockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/blockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblock — Produto / Serviço

/go/produtoGo PUT

Desbloqueia um produto ou serviço. Substitua ID pelo ID do produto. Retorna 409 se o produto não estiver bloqueado.

URL

https://api.grupoadvis.com.br/go/produtoGo/unblock/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/unblock/ID", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/unblock/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblockByCodigo — Produto / Serviço

/go/produtoGo PUT

Idêntico ao unblock por ID, mas identifica o produto pelo código. Substitua CODIGO pelo código do produto.

URL

https://api.grupoadvis.com.br/go/produtoGo/unblockByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/unblockByCodigo/CODIGO", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/unblockByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

unblockAll — Produto / Serviço

/go/produtoGo PUT

Desbloqueia todos os produtos e serviços bloqueados da empresa de uma vez, restaurando-os da lixeira. O campo restored na resposta indica quantos registros foram restaurados.

URL

https://api.grupoadvis.com.br/go/produtoGo/unblockAll

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/unblockAll", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/unblockAll' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"restored": 3
	}
}

delete — Produto / Serviço

/go/produtoGo DELETE

Exclui permanentemente um produto ou serviço. Somente registros bloqueados podem ser excluídos. Substitua ID pelo ID do produto. Retorna 409 se o produto possuir dependências vinculadas.

URL

https://api.grupoadvis.com.br/go/produtoGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/delete/ID", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/delete/ID' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

deleteByCodigo — Produto / Serviço

/go/produtoGo DELETE

Idêntico ao delete por ID, mas identifica o produto pelo código. Substitua CODIGO pelo código do produto.

URL

https://api.grupoadvis.com.br/go/produtoGo/deleteByCodigo/CODIGO

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/deleteByCodigo/CODIGO", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/deleteByCodigo/CODIGO' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

clearTrash — Produto / Serviço

/go/produtoGo DELETE

Exclui permanentemente todos os produtos e serviços bloqueados que podem ser excluídos. Registros com dependências são ignorados e contabilizados em skipped.

URL

https://api.grupoadvis.com.br/go/produtoGo/clearTrash

JavaScript
fetch("https://api.grupoadvis.com.br/go/produtoGo/clearTrash", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/produtoGo/clearTrash' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"deleted": 2,
		"skipped": 1
	}
}

Dimensão Adicional — visão geral e cadastro

/go/dimensaoResultadoGo GET POST PUT DELETE

A Dimensão adicional é uma granularidade opcional que acompanha o fato do GO ao lado da conta e do centro de resultado. O cadastro é independente por empresa (código único), com filial e departamento próprios, e o vínculo com centro de resultado é opcional e N:N.

A regra que tudo depende: id_go_dimensao_resultado IS NULL significa "sem dimensão". Não significa "todas", não é uma dimensão padrão e nunca é deduzida a partir do centro de resultado.
  • Em planejamento e resultados, não informar dimensão alcança exatamente a fatia sem dimensão.
  • Num centro de resultado que usa dimensões, essa fatia é o Acumulado somente-leitura: a escrita nela é recusada com 409.
  • Uma dimensão só pode receber fato num centro em que esteja disponível: vínculo ativo ou metodologia já existente naquele período.
Endpoints de cadastro

Seguem exatamente o mesmo contrato dos demais cadastros do GO (produtos, contas): bloquear é a lixeira, unblock restaura e delete é permanente e só aceita registro bloqueado.

MétodoURLDescrição
GET/getAllDimensões ativas, ordenadas por código
GET/getAllIncludingBlockedAtivas e bloqueadas
GET/getById/IDPor ID (mesmo bloqueada)
GET/getByCodigo/CODIGOPor código (mesmo bloqueada)
GET/getBlockedLixeira
GET/getByFilial/ID_FILIALAtivas de uma filial
GET/getByDepartamento/ID_DEPARTAMENTOAtivas de um departamento
POST/insertCria uma dimensão (ver abaixo)
PUT/update/ID · /updateByCodigo/CODIGOAtualiza nome, codigo, observacao, id_filial, id_departamento
PUT/block/ID · /blockByCodigo/CODIGOEnvia para a lixeira
PUT/unblock/ID · /unblockByCodigo/CODIGO · /unblockAllRestaura
DELETE/delete/ID · /deleteByCodigo/CODIGOExclusão permanente (só bloqueada)
DELETE/clearTrashExclui da lixeira tudo que não tem dependência
Exclusão permanente é recusada (409) enquanto a dimensão tiver vínculo com centro de resultado, metodologia de planejamento ou lançamento de resultado. Remova o vínculo e a metodologia antes; resultado real nunca é apagado por esse caminho.

insert — Dimensão Adicional

/go/dimensaoResultadoGo POST

Cria uma dimensão adicional na empresa. O código é único por empresa (409 em caso de duplicidade).

O campo opcional centros vincula centros de resultado na mesma transação da criação, como faz a tela de cadastro: sem ele o consumidor precisa de um segundo PUT, e uma falha entre as duas chamadas deixaria a dimensão criada sem vínculo nenhum. Cada vínculo criado clona a metodologia da fatia sem dimensão daquele centro, e quando centros é enviado a resposta ganha a chave vinculos com created, removed e planejamentosClonados. Um centro inexistente ou bloqueado recusa a requisição inteira (412 / 409) sem criar a dimensão.

O mesmo campo é aceito no update, com a semântica da tela: ausente mantém os vínculos atuais, presente substitui o conjunto, e um array vazio limpa todos.

URL

https://api.grupoadvis.com.br/go/dimensaoResultadoGo/insert

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
nomeStringSimMáximo 255 caracteres
codigoStringSimMáximo 255 caracteres, único na empresa
observacaoStringNãoObservação livre
id_filialIntegerNãoFilial da empresa
id_departamentoIntegerNãoDepartamento da empresa
centrosArrayNãoCentros de resultado a vincular, por código ou ID. Aplicado na mesma transação da criação. Ausente = nenhum vínculo
JavaScript
fetch("https://api.grupoadvis.com.br/go/dimensaoResultadoGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Região Norte",
		"codigo": "NORTE",
		"centros": ["CR-001", "CR-002"]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/dimensaoResultadoGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"nome":"Região Norte","codigo":"NORTE","centros":["CR-001","CR-002"]}'

vinculos — Dimensão Adicional

/go/dimensaoResultadoGo GET

Lista o vínculo N:N entre centro de resultado e dimensão adicional, pelos dois lados. O parâmetro na URL aceita código ou ID numérico. A resposta inclui os relacionados bloqueados, para que a lista possa ser devolvida no PUT sem perda.

Variantes de URL
  • GET .../vinculos/dimensao/DIMENSAO — centros de resultado vinculados à dimensão
  • GET .../vinculos/centro/CENTRO — dimensões vinculadas ao centro de resultado
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "codigo": "NORTE", "nome": "Região Norte", "bloqueada": 0 },
		{ "id": 6, "codigo": "SUL", "nome": "Região Sul", "bloqueada": 0 }
	]
}

vinculos — Dimensão Adicional

/go/dimensaoResultadoGo PUT

O conjunto informado substitui o atual, dos dois lados: só o que mudou é escrito, e um array vazio limpa todos os vínculos daquele dono. É a mesma semântica da tela de cadastro.

Criar um vínculo clona a metodologia. Ao vincular uma dimensão a um centro de resultado, a metodologia de planejamento do nível do centro (a fatia sem dimensão) é replicada para aquela dimensão em todos os períodos do processo, junto com os produtos — sem copiar valores. É idempotente: onde a dimensão já tem metodologia, nada é feito. Um PUT com muitos vínculos novos pode portanto gerar muitas escritas numa transação só.
Variantes de URL
  • PUT .../vinculos/dimensao/DIMENSAO — corpo { "centros": [...] }
  • PUT .../vinculos/centro/CENTRO — corpo { "dimensoes": [...] }
Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
centrosArraySim*Na variante /vinculos/dimensao/. Códigos ou IDs de centro de resultado. Array vazio limpa todos.
dimensoesArraySim*Na variante /vinculos/centro/. Códigos ou IDs de dimensão. Array vazio limpa todos.
Erros
  • 412 — dono ou relacionado inexistente na empresa. Nada é escrito: o conjunto inteiro é resolvido antes da primeira escrita.
  • 409 — dono bloqueado recebendo vínculo novo, ou relacionado bloqueado sendo vinculado. Remover vínculo nunca é barrado por bloqueio.
JavaScript
fetch("https://api.grupoadvis.com.br/go/dimensaoResultadoGo/vinculos/dimensao/NORTE", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({ "centros": ["CR-001", "CR-002"] })
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/dimensaoResultadoGo/vinculos/centro/CR-001' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"dimensoes":["NORTE","SUL"]}'
Exemplo de Resposta JSON
{
	"response": { "created": 2, "removed": 0, "planejamentosClonados": 24 }
}

getByPeriod — Estrutura Orçamentária

/go/estruturaGo GET

Retorna todas as estruturas orçamentárias de um período, ordenadas por drag_index crescente. Cada estrutura inclui a lista de operadores (operadores) com JOIN de contas e estruturas referenciadas.

URL

https://api.grupoadvis.com.br/go/estruturaGo/getByPeriod/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/getByPeriod/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/getByPeriod/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "nome": "Receita Bruta", "id_go_processo_periodo": 1, "id_clone": null, "drag_index": 0,
			"operadores": [
				{ "id": 1, "id_go_periodo_estrutura": 1, "operador": 1, "tipo": 1, "id_go_conta": 10, "id_estrutura": null, "operador_id_clone": null, "drag_index": 0, "conta_codigo": "1.1.01", "conta_nome": "Vendas", "conta_tipo": 0, "estrutura_ref_nome": null }
			]
		},
		{ "id": 2, "nome": "Deduções", "id_go_processo_periodo": 1, "id_clone": null, "drag_index": 1, "operadores": [] }
	]
}

getById — Estrutura Orçamentária

/go/estruturaGo GET

Retorna uma estrutura orçamentária pelo ID com todos os seus operadores. Substitua ID pelo ID da estrutura.

URL

https://api.grupoadvis.com.br/go/estruturaGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/getById/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/getById/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "nome": "Receita Bruta", "id_go_processo_periodo": 1, "id_clone": null, "drag_index": 0,
			"operadores": [
				{ "id": 1, "id_go_periodo_estrutura": 1, "operador": 1, "tipo": 1, "id_go_conta": 10, "id_estrutura": null, "operador_id_clone": null, "drag_index": 0, "conta_codigo": "1.1.01", "conta_nome": "Vendas", "conta_tipo": 0, "estrutura_ref_nome": null }
			]
		}
	]
}

insert — Estrutura Orçamentária

/go/estruturaGo POST

Cria uma nova estrutura orçamentária vinculada a um período.

Campos Obrigatórios

CampoTipoObservação
"id_go_processo_periodo"IntegerID do período ao qual a estrutura pertence.
"nome"StringMáximo 255 caracteres.

Campos Opcionais

CampoTipoObservação
"drag_index"IntegerPosição de inserção (base 0). Se omitido ou maior que o máximo disponível, insere no final.
URL

https://api.grupoadvis.com.br/go/estruturaGo/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo_periodo": 1,
		"nome": "Receita Bruta",
		"drag_index": 0
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id_go_processo_periodo": 1,
		"nome": "Receita Bruta",
		"drag_index": 0
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 5
	}
}

update — Estrutura Orçamentária

/go/estruturaGo PUT

Atualiza uma estrutura existente. Substitua ID pelo ID da estrutura. Pelo menos um campo deve ser informado.

CampoTipoObservação
"nome"StringOpcional. Máximo 255 caracteres.
"drag_index"IntegerOpcional. Nova posição (base 0). Valores maiores que o máximo são limitados automaticamente ao final.
URL

https://api.grupoadvis.com.br/go/estruturaGo/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/update/1", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"nome": "Receita Líquida",
		"drag_index": 1
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/update/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"nome": "Receita Líquida",
		"drag_index": 1
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

delete — Estrutura Orçamentária

/go/estruturaGo DELETE

Exclui uma estrutura e todos os seus operadores (cascade). Substitua ID pelo ID da estrutura. Retorna 409 se a estrutura for referenciada por linhas de planejamento.

URL

https://api.grupoadvis.com.br/go/estruturaGo/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/delete/1", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/delete/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

operador/insert — Estrutura Orçamentária

/go/estruturaGo POST

Adiciona um operador a uma estrutura. O operador pode referenciar uma conta (tipo=1) ou outra estrutura (tipo=2). Valida duplicidade, hierarquia de contas e dependência circular.

Campos Obrigatórios

CampoTipoObservação
"id_go_periodo_estrutura"IntegerID da estrutura que receberá o operador.
"operador"Integer1 (+), 2 (-), 3 (×), 4 (÷).
"tipo"Integer1 = Conta, 2 = Estrutura.
"id_go_conta"IntegerObrigatório quando tipo=1. ID da conta.
"id_estrutura"IntegerObrigatório quando tipo=2. ID da estrutura referenciada.

Campos Opcionais

CampoTipoObservação
"drag_index"IntegerPosição de inserção (base 0). Se omitido ou maior que o máximo disponível, insere no final.
URL

https://api.grupoadvis.com.br/go/estruturaGo/operador/insert

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/operador/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_periodo_estrutura": 1,
		"operador": 1,
		"tipo": 1,
		"id_go_conta": 10,
		"drag_index": 0
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/operador/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"id_go_periodo_estrutura": 1,
		"operador": 1,
		"tipo": 1,
		"id_go_conta": 10,
		"drag_index": 0
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1,
		"insertId": 7
	}
}

operador/update — Estrutura Orçamentária

/go/estruturaGo PUT

Atualiza um operador existente. Substitua ID pelo ID do operador. É possível alterar o operador, o tipo, a referência (conta ou estrutura) e a posição. Ao alterar o tipo, o campo de referência correspondente é obrigatório. Pelo menos um campo deve ser informado.

CampoTipoObservação
"operador"IntegerOpcional. 1 (+), 2 (-), 3 (×), 4 (÷).
"tipo"IntegerOpcional. 1 = Conta, 2 = Estrutura.
"id_go_conta"IntegerObrigatório se tipo mudar para 1.
"id_estrutura"IntegerObrigatório se tipo mudar para 2.
"drag_index"IntegerOpcional. Nova posição (base 0). Valores maiores que o máximo são limitados automaticamente ao final.
URL

https://api.grupoadvis.com.br/go/estruturaGo/operador/update/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/operador/update/7", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"operador": 2,
		"drag_index": 0
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/operador/update/7' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{
		"operador": 2,
		"drag_index": 0
	}'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

operador/delete — Estrutura Orçamentária

/go/estruturaGo DELETE

Remove um operador de uma estrutura. Substitua ID pelo ID do operador. Os índices de ordenação dos demais operadores serão renormalizados.

URL

https://api.grupoadvis.com.br/go/estruturaGo/operador/delete/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/operador/delete/7", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/operador/delete/7' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"status": "success",
		"affectedRows": 1
	}
}

availableContas — Estrutura Orçamentária

/go/estruturaGo GET

Retorna as contas disponíveis para adicionar como operador a uma estrutura, excluindo contas já utilizadas ou com conflito hierárquico. O parâmetro idOperadorAtual na query string é opcional e serve para ignorar o operador sendo editado.

URL

https://api.grupoadvis.com.br/go/estruturaGo/availableContas/ID?idOperadorAtual=OPERADOR_ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/availableContas/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/availableContas/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 11, "codigo": "1.1.02", "nome": "Devoluções", "tipo": 1, "id_go_conta": 10 },
		{ "id": 12, "codigo": "1.1.03", "nome": "Abatimentos", "tipo": 1, "id_go_conta": 10 }
	]
}

availableEstruturas — Estrutura Orçamentária

/go/estruturaGo GET

Retorna as estruturas disponíveis para adicionar como operador a uma estrutura, excluindo a própria estrutura e aquelas que causariam dependência circular. O parâmetro idOperadorAtual na query string é opcional e serve para ignorar o operador sendo editado.

URL

https://api.grupoadvis.com.br/go/estruturaGo/availableEstruturas/ID?idOperadorAtual=OPERADOR_ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/availableEstruturas/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/availableEstruturas/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 2, "nome": "Deduções", "id_go_processo_periodo": 1, "id_clone": null, "drag_index": 1 },
		{ "id": 3, "nome": "Receita Líquida", "id_go_processo_periodo": 1, "id_clone": null, "drag_index": 2 }
	]
}

history — Estrutura Orçamentária

/go/estruturaGo GET

Retorna o histórico de alterações das estruturas de um período, incluindo criações, atualizações e exclusões de estruturas e operadores. Substitua ID pelo ID do período.

URL

https://api.grupoadvis.com.br/go/estruturaGo/history/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/estruturaGo/history/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/estruturaGo/history/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "id_go_periodo_estrutura": 1, "id_go_processo_periodo": 1, "responsavel": "API",
			"data": "2026-04-10 17:00:00", "campo": "insert_estrutura", "valor": "Receita Bruta",
			"valor_anterior": null, "campo_secundario": "Estrutura criada: Receita Bruta",
			"icone": "insert", "operacao": "Estrutura criada: Receita Bruta", "estrutura_nome": null
		}
	]
}

getResultados — Importação de Resultados

/go/importacaoResultadosGo GET

Lista os resultados importados. Escolha a variante de URL conforme a chave disponível. Opcionalmente filtre por periodoInicio e periodoFim (query params, formato YYYY-MM-DD).

Variantes de URL
  • GET .../getByPeriod/ID_PERIODO — resultados de um período GO específico
  • GET .../getByProcess/ID_PROCESSO — resultados de todos os períodos de um processo GO
Parâmetros (Query String)
NomeTipoObrigatórioDescrição
periodoInicioStringNãoFiltro de data inicial (YYYY-MM-DD)
periodoFimStringNãoFiltro de data final (YYYY-MM-DD)
JavaScript
// Variante: por processo (substitua por getByPeriod/ID_PERIODO para filtrar por período)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/getByProcess/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/getByProcess/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_processo_periodo": 1, "periodo": "2025-01-01 00:00:00", "data_importacao": "2025-01-15 10:30:00", "id_colaborador": null, "periodo_nome": "2025", "periodo_data_inicio": "2025-01-01", "periodo_data_fim": "2025-12-31", "total_lancamentos": 5 },
		{ "id": 2, "id_go_processo_periodo": 1, "periodo": "2025-02-01 00:00:00", "data_importacao": "2025-02-10 14:00:00", "id_colaborador": null, "periodo_nome": "2025", "periodo_data_inicio": "2025-01-01", "periodo_data_fim": "2025-12-31", "total_lancamentos": 3 }
	]
}

getById — Importação de Resultados

/go/importacaoResultadosGo GET

Retorna um resultado importado pelo seu ID. Substitua ID pelo ID do resultado.

URL

https://api.grupoadvis.com.br/go/importacaoResultadosGo/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/getById/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/getById/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_processo_periodo": 1, "periodo": "2025-01-01 00:00:00", "data_importacao": "2025-01-15 10:30:00", "id_colaborador": null, "total_lancamentos": 5 }
	]
}

getLancamentos — Importação de Resultados

/go/importacaoResultadosGo GET

Lista todos os lançamentos de um resultado importado. Escolha a variante de URL conforme a chave disponível.

Variantes de URL
  • GET .../getLancamentos/ID — por ID direto do resultado
  • GET .../getLancamentos/periodo/ID_PERIODO/mes/REF — por ID do período + mês de referência (YYYY-MM)
  • GET .../getLancamentos/processo/ID_PROCESSO/mes/REF — por ID do processo + mês de referência (YYYY-MM)
JavaScript
// Variante: por processo (substitua pela URL adequada à chave disponível)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/getLancamentos/processo/1/mes/2025-01", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/getLancamentos/processo/1/mes/2025-01' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "valor_debito": "15000.00000", "valor_credito": "5000.00000", "valor_movimentacao": "10000.00000", "conta_id": 10, "conta_codigo": "1.01.001", "conta_nome": "Caixa Geral", "centro_id": 5, "centro_codigo": "CR-001", "centro_nome": "Administração" },
		{ "id": 2, "valor_debito": "0.00000", "valor_credito": "25000.00000", "valor_movimentacao": "25000.00000", "conta_id": 11, "conta_codigo": "1.02.001", "conta_nome": "Receita Vendas", "centro_id": 6, "centro_codigo": "CR-002", "centro_nome": "Comercial" }
	]
}

importBatch — Importação de Resultados

/go/importacaoResultadosGo POST

Endpoint principal de importação B2B. Aceita lançamentos em JSON estruturado para um mês específico. Cria o resultado automaticamente se necessário. Suporta modos upsert (padrão) e replace. O contexto é resolvido por id_go_processo_periodo ou por id_go_processo + periodoReferencia (o processo deve conter um período que cubra o mês informado).

Dimensão adicional (fatia). A identidade de um lançamento é conta + centro + fatia. Sem informar dimensão a operação alcança exatamente a fatia sem dimensão (id_go_dimensao_resultado IS NULL) — nunca "todas". Num centro de resultado que usa dimensões essa fatia é o Acumulado somente-leitura, e a escrita nela é recusada com 409. A dimensão informada precisa existir na empresa (412) e estar disponível naquele centro pela regra vínculo ∪ metodologia (412).
Modo replace e dimensão. A exclusão dos lançamentos ausentes do payload fica restrita às fatias declaradas nele. Um payload sem nenhuma dimensão alcança somente a fatia sem dimensão e não apaga o que está nas dimensões — é o que mantém segura a integração que já existia antes da dimensão.
Reconciliação pelos contadores. Vale added + updated + kept = total, onde total é a contagem real de lançamentos do mês depois da operação. O deleted é contador de saída e não entra nessa soma. No modo replace, a linha que sobrevive por estar em uma fatia que o payload não declarou é reportada em kept.
Lançamentos repetidos no mesmo payload. Dois itens com conta + centro + fatia iguais gravam uma linha só (o último vence), acompanhados de um warning. O added conta as linhas efetivamente gravadas, não os itens enviados.
URL

https://api.grupoadvis.com.br/go/importacaoResultadosGo/importBatch

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_processo_periodoIntegerSim*ID do período (* ou id_go_processo)
id_go_processoIntegerSim*ID do processo (* ou id_go_processo_periodo). O período é resolvido automaticamente pelo mês de periodoReferencia.
periodoReferenciaStringSimFormato YYYY-MM ou YYYY-MM-DD, normalizado para 1º do mês
modeStringNãoPadrão "upsert". Valores: "upsert" ou "replace"
lancamentosArraySimMáximo 5000 itens. Cada: {conta_codigo, centro_codigo, valor_debito, valor_credito, valor_movimentacao}. Alternativas: conta_id (int) no lugar de conta_codigo, centro_id (int) no lugar de centro_codigo. Opcional: dimensao_codigo (ou dimensao_id) para gravar numa dimensão adicional; ausente = fatia sem dimensão.
JavaScript
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/importBatch", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo_periodo": 1,
		"periodoReferencia": "2025-01",
		"mode": "upsert",
		"lancamentos": [
			{ "conta_codigo": "1.01.001", "centro_codigo": "CR-001", "valor_debito": 15000, "valor_credito": 5000, "valor_movimentacao": 10000 },
			{ "conta_codigo": "1.01.001", "centro_codigo": "CR-002", "dimensao_codigo": "NORTE", "valor_debito": 8000, "valor_credito": 0, "valor_movimentacao": 8000 }
		]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/importBatch' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo":1,"periodoReferencia":"2025-01","mode":"upsert","lancamentos":[{"conta_codigo":"1.01.001","centro_codigo":"CR-001","valor_debito":15000,"valor_credito":5000,"valor_movimentacao":10000}]}'
Exemplo de Resposta JSON
{
	"response": {
		"error": false,
		"successCount": 1,
		"stats": { "added": 1, "updated": 0, "kept": 0, "deleted": 0, "errors": 0, "total": 1 },
		"warnings": [],
		"resultadoId": 1,
		"resultado": { "id": 1, "id_go_processo_periodo": 1, "periodo": "2025-01-01 00:00:00", "data_importacao": "2025-01-15 10:30:00", "total_lancamentos": 1 },
		"isUpdate": false,
		"mode": "upsert"
	}
}

createResultado — Importação de Resultados

/go/importacaoResultadosGo POST

Cria um cabeçalho de resultado vazio para um período/mês. Retorna 409 se já existir resultado para o mesmo mês. O contexto é resolvido por id_go_processo_periodo ou por id_go_processo.

URL

https://api.grupoadvis.com.br/go/importacaoResultadosGo/resultado

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_processo_periodoIntegerSim*ID do período (* ou id_go_processo)
id_go_processoIntegerSim*ID do processo (* ou id_go_processo_periodo)
periodoReferenciaStringSimFormato YYYY-MM ou YYYY-MM-DD
JavaScript
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/resultado", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo": 1,
		"periodoReferencia": "2025-06"
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/resultado' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo":1,"periodoReferencia":"2025-06"}'
Exemplo de Resposta JSON
{
	"response": { "id": 10, "id_go_processo_periodo": 1, "periodo": "2025-06-01 00:00:00", "data_importacao": "2025-06-15 09:00:00", "total_lancamentos": 0 }
}

upsertLancamento — Importação de Resultados

/go/importacaoResultadosGo PUT

Insere ou atualiza um lançamento individual pela chave composta (conta + centro de resultado + fatia). O resultado é criado automaticamente caso não exista. Os parâmetros conta, centro e dimensão na URL aceitam código ou ID numérico. Escolha a variante de URL conforme a chave disponível para identificar o resultado.

Dimensão adicional (fatia). A identidade de um lançamento é conta + centro + fatia (veja Centro de Resultado e Dimensão adicional). Sem informar dimensão a operação alcança exatamente a fatia sem dimensão (id_go_dimensao_resultado IS NULL) — nunca "todas". Num centro de resultado que usa dimensões essa fatia é o Acumulado somente-leitura, e a escrita nela é recusada com 409. A dimensão informada precisa existir na empresa (412) e estar disponível naquele centro pela regra vínculo ∪ metodologia (412).
Variantes de URL
  • PUT .../lancamento/resultado/ID_RESULTADO/conta/CONTA/centro/CENTRO — por ID direto do resultado
  • PUT .../lancamento/periodo/ID_PERIODO/mes/REF/conta/CONTA/centro/CENTRO — por ID do período + mês de referência (YYYY-MM)
  • PUT .../lancamento/processo/ID_PROCESSO/mes/REF/conta/CONTA/centro/CENTRO — por ID do processo + mês de referência (YYYY-MM)

Cada variante aceita o sufixo opcional /dimensao/DIMENSAO para endereçar uma dimensão adicional — por exemplo PUT .../lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001/dimensao/NORTE. A dimensão também pode vir no corpo, em dimensao_codigo ou dimensao_id; o sufixo da URL tem prioridade.

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
valor_debitoDecimalSimValor de débito (aceita formato BR ou US)
valor_creditoDecimalSimValor de crédito (aceita formato BR ou US)
valor_movimentacaoDecimalSimValor de movimentação (aceita formato BR ou US)
dimensao_codigoStringNãoCódigo da dimensão adicional. Ignorado quando a URL traz o sufixo /dimensao/. Ausente = fatia sem dimensão.
dimensao_idIntegerNãoAlternativa a dimensao_codigo
JavaScript
// Variante: por processo (substitua pela URL adequada à chave disponível)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"valor_debito": 15000,
		"valor_credito": 5000,
		"valor_movimentacao": 10000
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"valor_debito":15000,"valor_credito":5000,"valor_movimentacao":10000}'
Exemplo de Resposta JSON
{
	"response": { "id": 5, "id_go_periodo_resultado": 1, "conta_codigo": "1.01.001", "centro_codigo": "CR-001", "valor_debito": "15000.00000", "valor_credito": "5000.00000", "valor_movimentacao": "10000.00000", "isUpdate": false }
}

getLancamento — Importação de Resultados

/go/importacaoResultadosGo GET

Retorna um lançamento individual pela chave composta (conta + centro + fatia). Os parâmetros conta, centro e dimensão na URL aceitam código ou ID numérico. Retorna 404 se não encontrado. Escolha a variante de URL conforme a chave disponível para identificar o resultado.

Dimensão adicional (fatia). Sem o sufixo /dimensao/ a busca alcança exatamente a fatia sem dimensão (id_go_dimensao_resultado IS NULL) — nunca "todas". Para listar todas as fatias de um resultado use getLancamentos.
Variantes de URL
  • GET .../lancamento/resultado/ID_RESULTADO/conta/CONTA/centro/CENTRO — por ID direto do resultado
  • GET .../lancamento/periodo/ID_PERIODO/mes/REF/conta/CONTA/centro/CENTRO — por ID do período + mês de referência (YYYY-MM)
  • GET .../lancamento/processo/ID_PROCESSO/mes/REF/conta/CONTA/centro/CENTRO — por ID do processo + mês de referência (YYYY-MM)

Cada variante aceita o sufixo opcional /dimensao/DIMENSAO, como em GET .../lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001/dimensao/NORTE.

JavaScript
// Variante: por processo (substitua pela URL adequada à chave disponível)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 5, "valor_debito": "15000.00000", "valor_credito": "5000.00000", "valor_movimentacao": "10000.00000", "conta_id": 10, "conta_codigo": "1.01.001", "conta_nome": "Caixa Geral", "centro_id": 5, "centro_codigo": "CR-001", "centro_nome": "Administração" }
	]
}

deleteLancamento — Importação de Resultados

/go/importacaoResultadosGo DELETE

Exclui um lançamento individual. Pode ser identificado pela chave primária (ID) ou pela chave composta (conta + centro + fatia). Os parâmetros conta, centro e dimensão na URL aceitam código ou ID numérico.

Dimensão adicional (fatia). Sem o sufixo /dimensao/ a exclusão alcança exatamente a fatia sem dimensão. Diferente da escrita, aqui isso é permitido mesmo num centro que usa dimensões: é justamente como se limpa o valor legado que alimenta o Acumulado.
Variantes de URL
  • DELETE .../lancamento/ID — por ID direto do lançamento (chave primária)
  • DELETE .../lancamento/resultado/ID_RESULTADO/conta/CONTA/centro/CENTRO — por chave composta com ID do resultado
  • DELETE .../lancamento/periodo/ID_PERIODO/mes/REF/conta/CONTA/centro/CENTRO — por chave composta com ID do período + mês
  • DELETE .../lancamento/processo/ID_PROCESSO/mes/REF/conta/CONTA/centro/CENTRO — por chave composta com ID do processo + mês

As três variantes por chave composta aceitam o sufixo opcional /dimensao/DIMENSAO.

JavaScript
// Variante: por processo (substitua pela URL adequada à chave disponível)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/processo/1/mes/2025-01/conta/1.01.001/centro/CR-001' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": { "message": "Lancamento deleted.", "id": 5 }
}

batch — Importação de Resultados

/go/importacaoResultadosGo POST

Executa operações em lote (upsert e/ou delete) sobre lançamentos de um resultado existente. O resultado é resolvido por id_go_periodo_resultado ou por id_go_processo_periodo+periodoReferencia ou por id_go_processo+periodoReferencia.

Dimensão adicional (fatia). A identidade de cada operação é conta + centro + fatia, e operação sem dimensão alcança exatamente a fatia sem dimensão. Em acao: "upsert" a escrita na fatia sem dimensão de um centro que usa dimensões é recusada (sem_dimensao_nao_editavel); em acao: "delete" ela é permitida, porque é assim que se limpa o valor legado que alimenta o Acumulado.
Mesma identidade repetida no lote. Duas operações sobre conta + centro + fatia iguais resolvem para um único lançamento: a última manda, e a anterior volta em results com status: "superseded" (não conta em stats.upserted). Um delete sobre uma identidade que um upsert anterior do mesmo lote tocou cancela essa operação pendente: se o lançamento estava sendo criado, o par se anula e nada é gravado; se já existia, ele é apagado e a atualização é descartada.
Atomicidade. Cada operação é validada isoladamente: um item inválido volta com status: "error" e não impede os demais. Já a gravação é atômica — se o banco falhar durante a escrita, nenhuma operação do lote é aplicada e a requisição devolve erro.
URL

https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/batch

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_periodo_resultadoIntegerSim*ID direto do resultado (* ou uma das alternativas abaixo)
id_go_processo_periodoIntegerSim*ID do período com periodoReferencia (* alternativa)
id_go_processoIntegerSim*ID do processo com periodoReferencia (* alternativa)
periodoReferenciaStringCondicionalObrigatório ao usar id_go_processo_periodo ou id_go_processo
operacoesArraySimMáximo 1000 itens. Cada: {acao: "upsert"|"delete", conta_codigo, centro_codigo, valor_debito*, valor_credito*, valor_movimentacao*} (* obrigatório para upsert). Alternativas: conta_id (int) no lugar de conta_codigo, centro_id (int) no lugar de centro_codigo. Opcional: dimensao_codigo (ou dimensao_id); ausente = fatia sem dimensão.
JavaScript
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/batch", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo": 1,
		"periodoReferencia": "2025-01",
		"operacoes": [
			{ "acao": "upsert", "conta_codigo": "1.01.001", "centro_codigo": "CR-001", "valor_debito": 15000, "valor_credito": 5000, "valor_movimentacao": 10000 },
			{ "acao": "upsert", "conta_codigo": "1.01.001", "centro_codigo": "CR-002", "dimensao_codigo": "NORTE", "valor_debito": 8000, "valor_credito": 0, "valor_movimentacao": 8000 },
			{ "acao": "delete", "conta_codigo": "1.02.001", "centro_codigo": "CR-002" }
		]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/lancamento/batch' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo":1,"periodoReferencia":"2025-01","operacoes":[{"acao":"upsert","conta_codigo":"1.01.001","centro_codigo":"CR-001","valor_debito":15000,"valor_credito":5000,"valor_movimentacao":10000},{"acao":"delete","conta_codigo":"1.02.001","centro_codigo":"CR-002"}]}'
Exemplo de Resposta JSON
{
	"response": {
		"resultadoId": 1,
		"stats": { "upserted": 1, "deleted": 1, "errors": 0, "total_lancamentos": 1 },
		"results": [
			{ "index": 0, "status": "ok", "id": 5, "conta_codigo": "1.01.001", "centro_codigo": "CR-001" },
			{ "index": 1, "status": "ok", "id": 6, "conta_codigo": "1.02.001", "centro_codigo": "CR-002", "message": "deleted" }
		]
	}
}

deleteResultado — Importação de Resultados

/go/importacaoResultadosGo DELETE

Exclui um resultado importado e todos os seus lançamentos em cascata. Escolha a variante de URL conforme a chave disponível.

Variantes de URL
  • DELETE .../delete/ID — por ID direto do resultado
  • DELETE .../delete/periodo/ID_PERIODO/mes/REF — por ID do período + mês de referência (YYYY-MM)
  • DELETE .../delete/processo/ID_PROCESSO/mes/REF — por ID do processo + mês de referência (YYYY-MM)
JavaScript
// Variante: por processo (substitua pela URL adequada à chave disponível)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/delete/processo/1/mes/2025-01", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/delete/processo/1/mes/2025-01' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplos de Resposta JSON
// Variantes por período e por processo:
{ "response": { "affectedRows": 1 } }

// Variante por ID direto (retorna detalhes adicionais):
{ "response": { "message": "Result deleted with all lancamentos.", "id": 1, "lancamentosRemovidos": 5 } }

getHistorico — Importação de Resultados

/go/importacaoResultadosGo GET

Retorna o histórico de auditoria das operações de importação. Escolha a variante de URL conforme a chave disponível. Opcionalmente filtre por idResultado ou use apenasNivelPeriodo=true.

Variantes de URL
  • GET .../getHistorico/ID_PERIODO — histórico de um período GO específico
  • GET .../getHistoricoByProcess/ID_PROCESSO — histórico de todos os períodos de um processo GO
Parâmetros (Query String)
NomeTipoObrigatórioDescrição
idResultadoIntegerNãoFiltrar por ID do resultado
apenasNivelPeriodoBooleanNãoSe "true", retorna apenas entradas de nível período
JavaScript
// Variante: por processo (substitua por getHistorico/ID_PERIODO para filtrar por período específico)
fetch("https://api.grupoadvis.com.br/go/importacaoResultadosGo/getHistoricoByProcess/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/importacaoResultadosGo/getHistoricoByProcess/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "id_go_processo_periodo": 1, "id_go_periodo_resultado": 1, "responsavel": "API",
			"data": "2025-01-15 10:30:00", "campo": "insert_periodo", "valor": "2025-01-01 00:00:00",
			"valor_anterior": null, "campo_secundario": "{\"total\":1,\"added\":1}", "periodo_referencia": "2025-01-01 00:00:00"
		}
	]
}

configuracao/getByPeriod — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna todas as configurações de planejamento orçamentário de um período. Cada registro inclui dados da conta (conta_codigo, conta_nome) e do centro de resultado (centro_codigo, centro_nome). Quando o registro pertence a uma fatia, também vêm id_go_dimensao_resultado, dimensao_codigo e dimensao_nome — há uma linha por fatia, e a fatia sem dimensão vem com esses campos null. Veja Centro de Resultado e Dimensão adicional.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByPeriod/ID_PERIODO

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByPeriod/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByPeriod/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "id_go_processo_periodo": 1, "id_go_conta": 10, "id_go_centro_resultado": 5,
			"tipo": 0, "data_inicio": "2026-01-01 00:00:00", "data_fim": "2026-12-01 00:00:00",
			"moeda": "BRL", "teto": "100000.00000",
			"conta_codigo": "1.01.001", "conta_nome": "Receita Bruta",
			"centro_codigo": "CR-001", "centro_nome": "Unidade SP"
		}
	]
}

configuracao/getById — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna uma configuração de planejamento pelo seu ID. Inclui dados de conta, centro de resultado e, quando aplicável, conta de origem.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getById/ID

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getById/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getById/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": {
		"id": 1, "id_go_processo_periodo": 1, "id_go_conta": 10, "id_go_centro_resultado": 5,
		"tipo": 0, "data_inicio": "2026-01-01 00:00:00", "data_fim": "2026-12-01 00:00:00",
		"moeda": "BRL", "teto": "100000.00000", "id_go_conta_origem": null,
		"id_go_periodo_estrutura_origem": null, "data_inicio_historico": null,
		"data_fim_historico": null, "subtipo_historico": null, "id_clone": null,
		"conta_codigo": "1.01.001", "conta_nome": "Receita Bruta",
		"centro_codigo": "CR-001", "centro_nome": "Unidade SP"
	}
}

configuracao/getByComposite — Planejamento Orçamentário

/go/planejamentoGo GET

Busca uma configuração pela chave composta: ID do período + ID da conta + ID do centro de resultado + fatia.

Dimensão adicional (fatia). Com a dimensão adicional, (período, conta, centro) deixou de ser único: existe uma linha por fatia. Sem o sufixo /dimensao/ a busca devolve exatamente a fatia sem dimensão (id_go_dimensao_resultado IS NULL) — nunca "todas". Para ver todas as fatias do período use configuracao/getByPeriod, cuja resposta traz id_go_dimensao_resultado, dimensao_codigo e dimensao_nome.
URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByComposite/ID_PERIODO/ID_CONTA/ID_CENTRO

Variante por fatia: .../getByComposite/ID_PERIODO/ID_CONTA/ID_CENTRO/dimensao/ID_DIMENSAO. ID_DIMENSAO aceita 0 como a própria fatia sem dimensão.

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByComposite/1/10/5", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByComposite/1/10/5' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'

configuracao/getByCompositeCode — Planejamento Orçamentário

/go/planejamentoGo GET

Busca uma configuração pela chave composta usando códigos textuais: ID do período + código da conta + código do centro de resultado + fatia.

Dimensão adicional (fatia). Sem o sufixo /dimensao/ a busca devolve exatamente a fatia sem dimensão — nunca "todas".
URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByCompositeCode/ID_PERIODO/CODIGO_CONTA/CODIGO_CENTRO

Variante por fatia: .../getByCompositeCode/ID_PERIODO/CODIGO_CONTA/CODIGO_CENTRO/dimensao/CODIGO_DIMENSAO. O parâmetro da dimensão aceita código ou ID numérico, e aceita dimensão bloqueada (na leitura).

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByCompositeCode/1/1.01.001/CR-001", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/getByCompositeCode/1/1.01.001/CR-001' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'

configuracao/insert — Planejamento Orçamentário

/go/planejamentoGo POST

Cria ou atualiza (upsert) uma configuração de planejamento. Se já existir configuração para a mesma conta + centro + fatia no período, atualiza. Caso contrário, insere nova. Gera automaticamente os slots de lançamento (meses × produtos).

Dimensão adicional (fatia). A fatia faz parte da chave do upsert: sem informar dimensão a operação alcança exatamente a fatia sem dimensão, e num centro que usa dimensões isso é recusado com 409 (sem_dimensao_nao_editavel), porque ali essa fatia é o Acumulado somente-leitura. A dimensão informada precisa existir na empresa e estar disponível naquele centro pela regra vínculo ∪ metodologia.
URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insert

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_processo_periodoIntegerSimID do período GO
id_go_contaInteger/StringSimID ou código da conta
id_go_centro_resultadoInteger/StringSimID ou código do centro de resultado (ativo)
dimensao_codigoStringNãoCódigo da dimensão adicional (aceita também ID). Ausente = fatia sem dimensão.
id_go_dimensao_resultadoIntegerNãoAlternativa a dimensao_codigo
tipoIntegerSim0 = Absoluto, 1 = Percentual, 2 = Qtd×Valor
data_inicioStringNãoData início personalizada (YYYY-MM ou YYYY-MM-DD)
data_fimStringNãoData fim personalizada
tetoDecimalNãoValor teto para o planejamento
produto_idsArrayNãoIDs ou códigos dos produtos (tipos 0 e 2)
id_go_conta_origemInteger/StringNãoConta de origem (tipo 1)
id_go_periodo_estrutura_origemIntegerNãoEstrutura de origem (tipo 1)
subtipo_historicoIntegerNão0, 1 ou 2 — subtipo histórico (tipo 1)
data_inicio_historicoStringNãoData início do histórico
data_fim_historicoStringNãoData fim do histórico
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insert", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo_periodo": 1,
		"id_go_conta": 10,
		"id_go_centro_resultado": 5,
		"tipo": 0,
		"teto": 100000,
		"produto_ids": [1, 2]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo_periodo":1,"id_go_conta":10,"id_go_centro_resultado":5,"tipo":0,"teto":100000,"produto_ids":[1,2]}'
Exemplo de Resposta JSON
{
	"response": {
		"id": 1, "id_go_processo_periodo": 1, "id_go_conta": 10,
		"id_go_centro_resultado": 5, "tipo": 0, "moeda": "BRL", "teto": "100000.00000"
	},
	"isUpdate": false
}

configuracao/insertBulk — Planejamento Orçamentário

/go/planejamentoGo POST

Cria múltiplas configurações de planejamento em uma única requisição. Suporta modo sobrescrever para atualizar configurações existentes.

Dimensão adicional (fatia). Cada item pode declarar dimensao_codigo (ou id_go_dimensao_resultado); ausente = fatia sem dimensão. A existência é avaliada por fatia: com sobrescrever: 0, um item de nível de centro não é mais pulado só porque aquele centro já tem configuração em alguma dimensão. Item cuja fatia é inválida é reportado em errors e os demais seguem.
URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insertBulk

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_processo_periodoIntegerSimID do período GO
sobrescreverIntegerNão0 = pular existentes (padrão), 1 = sobrescrever
itensArraySimArray de objetos com os mesmos campos do insert individual (id_go_conta, id_go_centro_resultado, dimensao_codigo, tipo, etc.)
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insertBulk", {
	"method": "POST",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo_periodo": 1,
		"sobrescrever": 0,
		"itens": [
			{ "id_go_conta": 10, "id_go_centro_resultado": 5, "tipo": 0 },
			{ "id_go_conta": 10, "id_go_centro_resultado": 6, "dimensao_codigo": "NORTE", "tipo": 0 },
			{ "id_go_conta": 11, "id_go_centro_resultado": 5, "tipo": 1, "id_go_conta_origem": 10 }
		]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request POST \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/insertBulk' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo_periodo":1,"sobrescrever":0,"itens":[{"id_go_conta":10,"id_go_centro_resultado":5,"tipo":0}]}'
Exemplo de Resposta JSON
{
	"response": {
		"successCount": 2, "updatedCount": 0, "skippedCount": 0,
		"errorCount": 0, "errors": []
	}
}

configuracao/update — Planejamento Orçamentário

/go/planejamentoGo PUT

Atualização parcial de uma configuração existente. Envie apenas os campos que deseja alterar. Se o tipo mudar, os valores de lançamento são automaticamente limpos.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/update/ID

Parâmetros (Body JSON — todos opcionais)
NomeTipoDescrição
tipoInteger0 = Absoluto, 1 = Percentual, 2 = Qtd×Valor
data_inicioStringData início personalizada
data_fimStringData fim personalizada
tetoDecimalValor teto
produto_idsArrayIDs ou códigos dos produtos
id_go_conta_origemInteger/StringConta de origem
subtipo_historicoIntegerSubtipo histórico (0, 1, 2)
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/update/1", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"teto": 150000
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/update/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"teto":150000}'

configuracao/delete — Planejamento Orçamentário

/go/planejamentoGo DELETE

Remove uma configuração e todos os seus lançamentos e produtos vinculados (cascade). Se existirem lançamentos com valores preenchidos, retorna requiresConfirmation: true — adicione ?confirmar=true para confirmar a exclusão.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/delete/ID

https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/delete/ID?confirmar=true

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/delete/1?confirmar=true", {
	"method": "DELETE",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request DELETE \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/configuracao/delete/1?confirmar=true' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON (com confirmação necessária)
{
	"response": {
		"requiresConfirmation": true,
		"filledLancamentos": 3,
		"message": "This configuration has filled lancamento values. Add ?confirmar=true to confirm deletion."
	}
}
Exemplo de Resposta JSON (exclusão confirmada)
{
	"response": { "deleted": true, "id": 1 }
}

lancamento/getByConfig — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna todos os lançamentos (slots mensais) de uma configuração de planejamento específica. Inclui dados do produto vinculado quando aplicável.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByConfig/ID_PLANEJAMENTO

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByConfig/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByConfig/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "periodo": "2026-01-01 00:00:00", "id_go_periodo_planejamento": 1,
			"id_go_periodo_planejamento_produto": 1, "quantidade": null, "valor": "5000.00000",
			"produto_codigo": "PROD-001", "produto_nome": "Produto A"
		}
	]
}

lancamento/getByPeriod — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna todos os lançamentos de todas as configurações de um período. Opcionalmente filtre por centro de resultado.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByPeriod/ID_PERIODO

Parâmetros (Query String)
NomeTipoObrigatórioDescrição
id_go_centro_resultadoIntegerNãoFiltrar por centro de resultado
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByPeriod/1?id_go_centro_resultado=5", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/getByPeriod/1?id_go_centro_resultado=5' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'

lancamento/upsert — Planejamento Orçamentário

/go/planejamentoGo PUT

Salva, atualiza ou remove lançamentos em lote. Envie um array de entradas. Se valor e quantidade forem ambos null, o lançamento é removido. Máximo de 5000 entradas por requisição.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/upsert

Parâmetros (Body JSON)
NomeTipoObrigatórioDescrição
id_go_processo_periodoIntegerSimID do período GO
lancamentosArraySimArray de objetos de lançamento
Campos de cada lançamento
NomeTipoObrigatórioDescrição
id_go_periodo_planejamentoIntegerSimID da configuração
periodoStringSimMês do lançamento (YYYY-MM ou YYYY-MM-DD)
valorDecimalNãoValor monetário
quantidadeIntegerNãoQuantidade (tipo 2)
id_go_periodo_planejamento_produtoIntegerNãoID do vínculo de produto
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/upsert", {
	"method": "PUT",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	},
	"body": JSON.stringify({
		"id_go_processo_periodo": 1,
		"lancamentos": [
			{ "id_go_periodo_planejamento": 1, "periodo": "2026-01", "valor": 5000 },
			{ "id_go_periodo_planejamento": 1, "periodo": "2026-02", "valor": 7500 },
			{ "id_go_periodo_planejamento": 1, "periodo": "2026-03", "valor": null, "quantidade": null }
		]
	})
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request PUT \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/lancamento/upsert' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI' \
	--data '{"id_go_processo_periodo":1,"lancamentos":[{"id_go_periodo_planejamento":1,"periodo":"2026-01","valor":5000}]}'
Exemplo de Resposta JSON
{
	"response": { "savedCount": 2, "deletedCount": 1, "errors": [] }
}

produto/getByConfig — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna os produtos vinculados a uma configuração de planejamento. Inclui código, nome e ordem de cada produto.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/produto/getByConfig/ID_PLANEJAMENTO

JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/produto/getByConfig/1", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/produto/getByConfig/1' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{ "id": 1, "id_go_periodo_planejamento": 1, "id_go_produto": 10, "ordem": 0, "codigo": "PROD-001", "nome": "Produto A" },
		{ "id": 2, "id_go_periodo_planejamento": 1, "id_go_produto": 11, "ordem": 1, "codigo": "PROD-002", "nome": "Produto B" }
	]
}

historico/getByPeriod — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna o histórico de auditoria de todas as operações de planejamento de um período. Suporta paginação.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByPeriod/ID_PERIODO

Parâmetros (Query String)
NomeTipoObrigatórioDescrição
pageIntegerNãoPágina (padrão: 1)
limitIntegerNãoItens por página (padrão: 50, máx: 200)
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByPeriod/1?page=1&limit=50", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByPeriod/1?page=1&limit=50' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'
Exemplo de Resposta JSON
{
	"response": [
		{
			"id": 1, "id_go_processo_periodo": 1, "id_go_periodo_planejamento": 1,
			"id_go_periodo_planejamento_lancamento": null, "responsavel": "API",
			"data": "2026-01-15 10:30:00", "campo": "insert_Planejamento",
			"valor_anterior": null, "valor": null, "campo_secundario": "1.01.001/CR-001"
		}
	],
	"total": 25, "page": 1, "limit": 50, "hasMore": false
}

historico/getByConfig — Planejamento Orçamentário

/go/planejamentoGo GET

Retorna o histórico de auditoria filtrado por uma configuração de planejamento específica. Suporta paginação.

URL

https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByConfig/ID_PLANEJAMENTO

Parâmetros (Query String)
NomeTipoObrigatórioDescrição
pageIntegerNãoPágina (padrão: 1)
limitIntegerNãoItens por página (padrão: 50, máx: 200)
JavaScript
fetch("https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByConfig/1?page=1&limit=50", {
	"method": "GET",
	"headers": {
		"token": "SEU_TOKEN_AQUI",
		"Content-Type": "application/json",
		"Accept-Encoding": "gzip,deflate"
	}
})
.then(response => { console.log(response); })
.catch(err => { console.error(err); });
CURL
curl --request GET \
	--url 'https://api.grupoadvis.com.br/go/planejamentoGo/historico/getByConfig/1?page=1&limit=50' \
	--header 'Accept-Encoding: gzip,deflate' \
	--header 'Content-Type: application/json' \
	--header 'token: SEU_TOKEN_AQUI'

FAQs

Aqui nós temos respostas breves para as perguntas mais frequentes sobre a API.

Autenticação

Como gero meu token?

É simples, sendo você ou sua empresa usuários do SIG, mande um email para sig@grupoadvis.com.br e requisite suas credenciais.

Meu token não funciona, o que eu faço?

Vide o header da sua requisição e certifique-se que está exatamente igual as suas credenciais enviadas pela advis. Ainda não funcinou? Nos contate em sig@grupoadvis.com.br.