Sumário



Objetivo


      Esse documento tem o objetivo de exemplificar o uso da API da Tabela de Preços utilizando todos os métodos implementados.


1 - Métodos


      Serão apresentados 5 métodos, os quais foram implementados na API da Tabela de Preços, são eles:


1.1 - GET


1.1.1 - Get All (Recuperar todas as Tabela de preços)

Recupera todas as tabela de preços sem retornar as listagens das matrizes aplicadas, dos períodos letivos de ingresso e das filiais dos períodos letivos por questão de performance. Essas informações serão retornadas com a utilização do GetOne para tabela de preço  informada.

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable

Domínio: localhost

Porta: 8051

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable

{
	"hasNext": false,
	"items": [
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 3,
			"internalId": "1|1|3",
			"code": "00001",
			"name": "Tabela de Precos",
			"recCreatedOn": "2025-02-04T11:01:30.617-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		}
	]
}

1.1.2 - Order (Retorna os dados ordenados)

Order: parâmetro responsável pela ordenação do resultado, podendo ser ascendente ou descendente. O resultado com a ordem descendente deve ser precedida do caractere "-" (menos).

Exemplo 1: ?order=campo1 (Ascendente)

Exemplo 2: ?order=-campo1 (Descendente)

Múltiplos campos de ordenação: ?order=[-]campo1, [-]campo2, [-]campo3 ...

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable?order={campo}

Domínio: localhost

Porta: 8051

Campo: name

Tipo de Ordenação: Ascendente

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable?order=name

{
    "hasNext": false,
    "items": [
        {
            "companyCode": 1,
            "levelEducationCode": 1,
            "id": 4,
            "internalId": "1|1|4",
            "code": "00002",
            "name": "Tabela de Precos Dois",
            "recCreatedOn": "2025-02-04T11:07:16.693-03:00",
            "active": false,
            "priceTableInUse": false,
            "appliedMatrixes": [],
            "terms": [],
            "termBranches": []
        },
        {
            "companyCode": 1,
            "levelEducationCode": 1,
            "id": 3,
            "internalId": "1|1|3",
            "code": "00001",
            "name": "Tabela de Precos Um",
            "recCreatedOn": "2025-02-04T11:01:30.617-03:00",
            "active": false,
            "priceTableInUse": false,
            "appliedMatrixes": [],
            "terms": [],
            "termBranches": []
        }
    ]
}

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable?order=-{campo}

Domínio: localhost

Porta: 8051

Campo: name

Tipo de Ordenação: Descendente

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable?order=-name

{
	"hasNext": false,
	"items": [
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 3,
			"internalId": "1|1|3",
			"code": "00001",
			"name": "Tabela de Precos Um",
			"recCreatedOn": "2025-02-04T11:01:30.617-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		},
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 4,
			"internalId": "1|1|4",
			"code": "00002",
			"name": "Tabela de Precos Dois",
			"recCreatedOn": "2025-02-04T11:07:16.693-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		}
	]
}

1.1.3 - Filter (Resultado filtrado)


Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable?{campo}={valor}

Domínio: localhost

Porta: 8051

Campo: code

Valor: 00001

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable?code=00001

{
	"hasNext": false,
	"items": [
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 3,
			"internalId": "1|1|3",
			"code": "00001",
			"name": "Tabela de Precos Um",
			"recCreatedOn": "2025-02-04T11:01:30.617-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		}
	]
}

Para realizar filtros complexos na API da Tabela de Preços é possível adotar o padrão OData. Para entender melhor sobre a utilização desse padrão, acesse o link da documentação Utilizando filtros complexos - Exemplos do guia de API - ODATA.

1.1.4 - Paginação


Page: Página que será apresentada.

PageSize: Quantidade máxima de registros por página que serão apresentados.

Exemplo: ?page=1&pageSize=1

Valores padrão: Caso não sejam preenchidos os parâmetros evidenciados acima serão preenchidos com valores padrão.

Page: 1

PageSize: 20

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable?page={valor1}&pageSize={valor2}

Domínio: localhost

Porta: 8051

Valor1: 1

Valor2: 5

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable?page=1&pageSize=5

{
	"hasNext": true,
	"items": [
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 3,
			"internalId": "1|1|3",
			"code": "00001",
			"name": "Tabela de Precos Um",
			"recCreatedOn": "2025-02-04T11:01:30.617-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		},
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 4,
			"internalId": "1|1|4",
			"code": "00002",
			"name": "Tabela de Precos Dois",
			"recCreatedOn": "2025-02-04T11:07:16.693-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		},
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 5,
			"internalId": "1|1|5",
			"code": "00005",
			"name": "Tabela de Preços 5",
			"recCreatedOn": "2025-02-04T11:36:13.33-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		},
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 6,
			"internalId": "1|1|6",
			"code": "00006",
			"name": "Tabela de Preços 6",
			"recCreatedOn": "2025-02-04T11:36:13.33-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		},
		{
			"companyCode": 1,
			"levelEducationCode": 1,
			"id": 7,
			"internalId": "1|1|7",
			"code": "00007",
			"name": "Tabela de Preços 7",
			"recCreatedOn": "2025-02-04T11:36:13.33-03:00",
			"active": false,
			"priceTableInUse": false,
			"appliedMatrixes": [],
			"terms": [],
			"termBranches": []
		}
	]
}

1.1.5 - Fields (Retorno de campos específicos no resultado)


Fields: parâmetro responsável pela especialização de campos em um resultado, ou seja, o usuário define quais campos serão apresentados no resultado.

Exemplo: ?fields=campo1

Múltiplos campos de ordenação: ?fields=campo1, campo2, campo3 ...

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable?fields={campos}

Domínio: localhost

Porta: 8051

Campo 1: code

Campo 2: name

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable?fields=code,name

{
	"hasNext": false,
	"items": [
		{
			"code": "00001",
			"name": "Tabela de Precos Um"
		},
		{
			"code": "00002",
			"name": "Tabela de Precos Dois"
		}
	]
}

1.1.6 - GetOne (Recuperar tabela de preços pelo identificador)


Nessa requisição serão retornadas as listagens das matrizes aplicadas, dos períodos letivos de ingresso e das filiais dos períodos letivos da tabela de preços

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable/{internalId}

Domínio: localhost

Porta: 8051

internalId: 1|1|3

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable/1|1|3

{
	"companyCode": 1,
	"levelEducationCode": 1,
	"id": 3,
	"internalId": "1|1|3",
	"code": "00001",
	"name": "Tabela de Precos Um",
	"recCreatedOn": "2025-02-04T11:01:30.617-03:00",
	"active": false,
	"priceTableInUse": false,
	"appliedMatrixes": [
		{
			"companyCode": 1,
			"branchCode": 1,
			"levelEducationCode": 1,
			"appliedMatrixCode": 132,
			"priceTableCode": 3,
			"branchName": "Filial Belo Horizonte - Fantasia",
			"courseCode": "1-1",
			"courseName": "Curso Tabela de Preços",
			"curriculumGridCode": "1",
			"curriculumGridName": "Matriz Tabela de Preços",
			"majorCode": "1",
			"majorName": "Habilitação  Tabela de Preços",
			"classShiftCode": 11,
			"classShiftName": "INTEGRAL",
			"status": 0,
			"actionState": 0
		}
	],
	"terms": [],
	"termBranches": [
		{
			"branchCode": 1
		}
	]
}


1.2 - POST


1.2.1 - Post (Inserir uma Tabela de preços)


A inclusão de uma nova tabela de preços será feita contendo os seus dados e os dados das suas matrizes aplicadas vinculadas. Não sendo possível inserir a tabela de preços com suas matrizes aplicadas contendo suas disciplinas, e os períodos letivos de ingresso dessa tabela de preço. Essas informações serão inseridas em outras api's com essa responsabilidade.

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable

Domínio: localhost

Porta: 8051

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable

{
	"companyCode": 1,
	"levelEducationCode": 1,
	"code": "00005",
	"name": "Tabela de Precos via Postman",
	"active": false,
	"appliedMatrixes": []
}
ou 
{
	"companyCode": 1,
	"levelEducationCode": 1,
	"code": "00005",
	"name": "Tabela de Precos via Postman",
	"active": false,
	"appliedMatrixes": [
		{
			"companyCode": 1,
			"branchCode": 1,
			"levelEducationCode": 1,
			"appliedMatrixCode": 132,
			"priceTableCode": 3,
			"branchName": "Filial Belo Horizonte - Fantasia",
			"courseCode": "1-1",
			"courseName": "Curso Tabela de Preços",
			"curriculumGridCode": "1",
			"curriculumGridName": "Matriz Tabela de Preços",
			"majorCode": "1",
			"majorName": "Habilitação  Tabela de Preços",
			"classShiftCode": 11,
			"classShiftName": "INTEGRAL",
			"status": 0,
			"actionState": 0
		}
	]
}
{
	"companyCode": 1,
	"levelEducationCode": 1,
	"id": 12,
	"internalId": "1|1|12",
	"code": "00005",
	"name": "Tabela de Precos via Postman",
	"active": false,
	"priceTableInUse": false,
	"appliedMatrixes": [
		{
			"companyCode": 1,
			"branchCode": 1,
			"levelEducationCode": 1,
			"appliedMatrixCode": 132,
			"priceTableCode": 12,
			"branchName": "Filial Belo Horizonte - Fantasia",
			"courseCode": "1-1",
			"courseName": "Curso Tabela de Preços",
			"curriculumGridCode": "1",
			"curriculumGridName": "Matriz Tabela de Preços",
			"majorCode": "1",
			"majorName": "Habilitação  Tabela de Preços",
			"classShiftCode": 11,
			"classShiftName": "INTEGRAL",
			"status": 0,
			"actionState": 0
		}
	]
}
{
	"code": null,
	"message": "Não foi possível incluir/editar a tabela de preços. Código do nível de ensino está inválido.",
	"detailedMessage": null,
	"helpUrl": null,
	"details": null
}

1.3 - PUT


1.3.1 - Put (Atualização de uma Tabela de preços)


A atualização da nova tabela de preços será feita contendo os seus dados e os dados das suas matrizes aplicadas vinculadas, e dos períodos letivos de ingresso. Não sendo possível inserir a tabela de preços com suas matrizes aplicadas contendo suas disciplinas. Essas informações serão inseridas em outras api's com essa responsabilidade.

Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable/{internalId}

Domínio: localhost

Porta: 8051

internalId: 1|1|14

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable/1|1|14

{
	"companyCode": 1,
	"levelEducationCode": 1,
	"id": 14,
	"internalId": "1|1|14",
	"code": "00003",
	"name": "Tabela de Precos via Postman ALT",
	"active": false,
	"appliedMatrixes": [],
	"terms": []
}
{
    "companyCode": 1,
    "levelEducationCode": 1,
    "id": 14,
    "internalId": "1|1|14",
    "code": "00003",
    "name": "Tabela de Precos via Postman ALT",
    "active": false,
    "priceTableInUse": false,
    "appliedMatrixes": [],
    "terms": []
}
{
	"code": null,
	"message": "Não foi possível incluir/editar a tabela de preços. Código do nível de ensino está inválido.",
	"detailedMessage": null,
	"helpUrl": null,
	"details": null
}


1.4 - DELETE


1.4.1 - Delete (Exclui uma Tabela de preços)


Máscara de Url: http://{domínio}:{porta}/api/educational/financial/v1/pricetable/{internalId}

Domínio: localhost

Porta: 8051

internalId: 1|1|20

Url Utilizada: http://localhost:8051/api/educational/financial/v1/pricetable/1|1|20

Obs.: Em caso de sucesso, será retornado o respondeCode = 204 e a resposta em branco.

{
    "code": null,
    "message": "Não existe um cadastro da tabela de preços informada para exclusão.",
    "detailedMessage": null,
    "helpUrl": null,
    "details": null
}


1.4.2 - Delete (Exclui um Prospect da Prospecção)


Máscara de Url: http://{domínio}:{porta}/api/educational/v1/prospection/prospect/{prospectionCode}|{prospectCode}

Domínio: localhost

Porta: 8051

prospectionCode: 3

prospectCode: 141

Url Utilizada: http://localhost:8051/api/educational/v1/prospection/prospect/3|141

Obs.: Em caso de sucesso, será retornado o respondeCode = 204 e a resposta em branco.

{
    "code": null,
    "message": "O id do prospect não foi informado ou é inválido",
    "detailedMessage": null,
    "helpUrl": null,
    "details": null
}


1.4.3 - Delete (Exclui um Plano de Pagamento do Prospect da Prospecção)


Máscara de Url: http://{domínio}:{porta}/api/educational/v1/prospect/paymentplan/{prospectionCode}|{prospectCode}|{prospectPaymentPlanCode}

Domínio: localhost

Porta: 8051

prospectionCode: 3

prospectCode: 133

prospectPaymentPlanCode: 101

Url Utilizada: http://localhost:8051/api/educational/v1/prospect/paymentplan/3|133|101

Obs.: Em caso de sucesso, será retornado o respondeCode = 204 e a resposta em branco.

{
    "code": null,
    "message": "O id do plano de pagamento do prospect não foi informado ou é inválido",
    "detailedMessage": null,
    "helpUrl": null,
    "details": null
}

1.4.4 - Delete (Exclui uma Bolsa do Prospect da Prospecção)


Máscara de Url: http://{domínio}:{porta}/api/educational/v1/prospect/scholarship/{prospectionCode}|{prospectCode}|{prospectSchoolshipCode}

Domínio: localhost

prospectionCode: 3

prospectCode: 128

prospectSchoolshipCode: 80

Url Utilizada: http://localhost:8051/api/educational/v1/prospect/scholarship/3|128|80

Obs.: Em caso de sucesso, será retornado o respondeCode = 204 e a resposta em branco.

{
    "code": null,
    "message": "O id da bolsa do prospect não foi informado ou é inválido",
    "detailedMessage": null,
    "helpUrl": null,
    "details": null
}


2 - Descrição dos campos JSON de entrada/retorno


Prospeção


Prospects


Planos de pagamento do prospect


Bolsas do prospect