
Configuring Sponte BI as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Sponte BI option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need to provide your Sponte BI API credentials to authenticate. The following configurations are required:- API Key: The API key to authenticate against the Sponte BI API service. Contact Sponte support or your account representative to obtain your API key.
- Sponte Client Code(s): The code(s) of your client(s) in Sponte BI. This is used to filter the data for your specific institution(s). You can provide multiple client codes if you need to sync data from multiple units or branches.
- Start Date: The earliest date from which records will be synced. Records created or updated after this date will be extracted.
2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.Multiple Units: If you manage multiple educational units, you can provide multiple Sponte Client Codes. Each stream will be created with a suffix containing the client code (e.g.,
alunos_12345) to distinguish data from different units.Tip: The stream can be found more easily by typing its name.Select the streams and click Next.
3. Configure data streams
Customize how you want your data to appear in your catalog. Select a name for each table (which will contain the fetched data) and the type of sync.- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix and make this process faster!
-
Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
- Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
- Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can determine when to execute a full sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while. Once you are ready, click Next to finalize the setup.5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.Streams and Fields
Below you’ll find all available data streams from Sponte BI and their corresponding fields:Alunos (Students)
Alunos (Students)
Stream containing student master data including personal information, contact details, and enrollment status.Key Fields:
alunoID- Unique student identifiernome- Student’s namenumeroMatricula- Enrollment numbersituacaoAluno- Student status
sexo- Student’s gendercpf- CPF (Brazilian tax ID) of the studentdataNascimento- Birth date (ISO format)email- Student’s email address
foneResidencial- Residential phonefoneCelular- Cell phone
endereco- Street addressnumeroEndereco- Street numbercep- Postal code (CEP)cidade- Citybairro- Neighborhood
dataCadastro- Registration date (ISO format)midia- Media sourcetipoContato- Type of contactcampanha- CampaignmotivoNaoFechamento- Reason for not closing
responsavelDidaticoID- Didactic responsible person’s IDresponsavelFinanceiroID- Financial responsible person’s IDfuncionarioID- Employee ID
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Alunos Fato (Active Students Fact)
Alunos Fato (Active Students Fact)
Fact table containing active student data with contract and enrollment information. This stream provides a denormalized view of students with their current contract status.Key Fields:
alunoID- Unique student identifiersituacaoAluno- Student statusnumeroMatricula- Enrollment numbernome- Student’s name
cpf- CPF (Brazilian tax ID) of the studentsexo- Student’s genderdataNascimento- Birth date (ISO format)idade- Student’s age
foneCelular- Cell phonefoneResidencial- Residential phoneemail- Student’s email address
endereco- Street addressnumeroEndereco- Street numbercep- Postal code (CEP)cidade- Cityestado- State abbreviationbairro- Neighborhood
contratoID- Contract IDdataContrato- Contract datetime (ISO format)dataInicio- Contract start date (ISO format)dataTermino- Contract end date (ISO format)situacaoContrato- Contract statustipoContrato- Contract typecontratoAulaLivre- Free class contract flag
curso- Course nameestagio- Internship/level nameidioma- Languageturma- Class nameescola- School namelt- LT flag or value
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client code
Contratos (Contracts)
Contratos (Contracts)
Stream containing contract information linking students to courses and payment terms.Key Fields:
contratoID- Unique contract identifiernumeroContrato- Contract numbersituacaoContrato- Contract statustipoContrato- Contract type
alunoID- Student IDresponsavelID- Responsible person IDfuncionarioID- Employee ID who created the contractturmaID- Class ID
dataContrato- Contract creation datetime (ISO format)dataInicio- Contract start date (ISO format)dataTermino- Contract end date (ISO format)
motivoCancelamento- Cancellation reasonmotivoDesistencia- Withdrawal reasoncontratoAulaLivre- Free class contract flag
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Contratos Turmas Estágios (Contract-Class-Level Relationships)
Contratos Turmas Estágios (Contract-Class-Level Relationships)
Stream containing the relationship between contracts, classes, and course levels (estágios). This is a junction table linking contracts to specific class enrollments.Key Fields:
contratoTurmaID- Unique contract-class relationship identifiercontratoID- Contract IDsituacaoEstagio- Internship/level status
cursoID- Course IDestagioID- Internship/level (estágio) IDturmaID- Class ID
dataMatricula- Registration date (ISO format)inicioAtividades- Activity start date (ISO format)
contratoAulaLivre- Free class contract flag
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Cursos (Courses)
Cursos (Courses)
Stream containing course master data.Key Fields:
cursoID- Unique course identifiernome- Course namesigla- Course acronym/symbol
ativo- Active flag (0 = inactive, 1 = active)
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Estágios (Levels/Stages)
Estágios (Levels/Stages)
Stream containing course levels or stages (estágios) data. In the context of language schools, this typically represents proficiency levels (e.g., Basic, Intermediate, Advanced).Key Fields:
estagioID- Unique level/stage identifiernome- Level/stage nameidioma- Language
cursoID- Course IDestagioFranqueadorID- Franchisor level/stage ID
ativo- Active flag (0 = inactive, 1 = active)
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Funcionários (Employees)
Funcionários (Employees)
Stream containing employee master data including teachers, staff, and consultants.Key Fields:
funcionarioID- Unique employee identifiernome- Short namenomeCompleto- Full namecargo- Position/role
sexo- Gendercpf- CPF (Brazilian tax ID)rg- RG (Brazilian ID number)carteiraProfissional- Professional documentdataNascimento- Birth date (ISO format)estadoCivil- Marital status
email- Email addressfoneCelular- Mobile phonefoneResidencial- Home phone
endereco- AddressnumeroEndereco- Address numbercep- Postal code (CEP)cidade- Citybairro- Neighborhood
dataAdmissao- Admission date (ISO format)dataDemissao- Dismissal date (ISO format)salario- SalarydataCadastro- Registration date (ISO format)
professor- Professor flag (0 = no, 1 = yes)professorAulasLivres- Free class professor flagatendente- Attendant flagconsultor- Consultant flaggestorComercial- Commercial manager flag
ativo- Active flag (0 = inactive, 1 = active)
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Leads
Leads
Stream containing lead data for prospective students, including marketing attribution information.Key Fields:
integracaoLeadsCcaaID- Unique lead integration identifieralunoID- Student ID (if converted)aluno- Student namesituacaoAtual- Current situation/status
nome- Branch or unit nameemail- Email address
fonteDoLead- Lead sourcecanal- Acquisition channelveiculo- Vehicle/mediumoutroVeiculo- Other vehicleformato- FormatgoogleClickID- Google Click ID (GCLID)campanha- Campaigncriativo- Creativesegmento- Segment
curso- Course of interestidioma- Language of interestturno- Preferred shiftnivel- LeveltipoLead- Lead type
codSolicitacao- Request codedataInclusao- Inclusion datetime
dataExtracao- Extraction datetime (ISO format)cadun- Unified Cadastro Number (cadun)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Matrículas (Enrollments)
Matrículas (Enrollments)
Comprehensive enrollment stream that combines student, contract, class, and course information in a single denormalized view. This is useful for enrollment analysis and reporting.Key Fields:
contratoTurmaID- Unique class contract identifiersituacaoEstagio- Internship/level statusdataMatricula- Enrollment dateinicioAtividades- Activity start date
alunoID- Student IDnome- Student namecpf- Student CPFdataNascimento- Birth date (ISO format)foneCelular- Mobile phonefoneResidencial- Home phoneemail- Email addresssexo- GendersituacaoAluno- Student statusfuncionarioIDAluno- Student employee ID
endereco- AddressnumeroEndereco- Address numbercidade- Citybairro- Neighborhoodcep- Postal code (CEP)
responsavelDidaticoID- Didactic responsible IDresponsavelFinanceiroID- Financial responsible ID
integracaoLeadsCcaaID- Lead integration IDcodSolicitacao- Request code
cursoID- Course IDcurso- Course nameestagioID- Internship/level IDestagio- Internship/level namecontratoAulaLivre- Free class contract flag
contratoID- Contract IDdataContrato- Contract datetime (ISO format)situacaoContrato- Contract statustipoContrato- Contract typedataInicio- Contract start date (ISO format)dataTermino- Contract end date (ISO format)funcionarioIDContrato- Contract employee ID
turmaID- Class IDturma- Class nameano- Yearsemestre- SemesterdataInicioTurma- Class start date (ISO format)dataTerminoTurma- Class end date (ISO format)situacaoTurma- Class status
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client code
Responsáveis (Guardians/Responsible Persons)
Responsáveis (Guardians/Responsible Persons)
Stream containing data about responsible persons (parents, guardians) linked to students.Key Fields:
responsavelID- Unique responsible person identifiernome- Responsible person’s name
sexo- Responsible person’s gendercpf- CPF (Brazilian tax ID)dataNascimento- Birth date (ISO format)profissao- Profession
email- Email addressfoneResidencial- Residential phonefoneCelular- Cell phonefoneComercial- Commercial/work phone
endereco- Street addressnumeroEndereco- Street numbercep- Postal code (CEP)cidade- Citybairro- Neighborhood
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Turmas (Classes)
Turmas (Classes)
Stream containing class master data including scheduling and capacity information.Key Fields:
turmaID- Unique class identifiernome- Class namesituacaoTurma- Class status
dataInicio- Start date (ISO format)dataTermino- End date (ISO format)semestre- Semesterano- Yearmodalidade- Modality (e.g., in-person, online)
cursoID- Course IDestagioID- Internship/level (estágio) IDfuncionarioID- Employee/teacher ID
numeroAlunos- Number of students enrolled
turmaAulaLivre- Free class flag
dataExtracao- Extraction datetime (ISO format)codCliSponte- Sponte client codeexcluido- Excluded flag (0 = active, 1 = excluded)
Implementation Notes
Multi-Unit Support
Each stream will be created with a suffix containing the client code. For example, if you have client codes12345 and 67890, you’ll see streams like:
alunos_12345alunos_67890contratos_12345contratos_67890
Data Freshness
All streams support incremental sync using thedataExtracao (extraction datetime) field. This means that on subsequent extractions, only records that have been created or modified since the last extraction will be synced.
Soft Deletes
Most streams include anexcluido (excluded) field that indicates whether a record has been soft-deleted in the source system:
0= Active record1= Excluded/deleted record