---
title: "API Integration: Install Munetrix Infinite Campus Plugin"
description: Provides step-by-step guidance to install the Munetrix Infinite Campus plugin to share student, teacher and roster data with Munetrix.
---

[Skip to content](https://solutions.munetrix.com/en/knowledge/api_integration_install_munetrix_infinite_-campus_plugin#main-content)

English

Show submenu for translations

![Mx and SD.png\]](https://solutions.munetrix.com/hs-fs/hubfs/Mx%20and%20SD.png?height=40&name=Mx%20and%20SD.png)

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- Go to www.munetrix.com

 Go to www.munetrix.com

 How can we help you?

- There are no suggestions because the search field is empty.

1. [Help Desk](https://solutions.munetrix.com/en/knowledge?hsLang=en)
2. [School Edition](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en)
3. [ONBOARDING & SET-UP](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#onboarding-set-up)

# API Integration: Install Munetrix Infinite Campus Plugin

## Provides step-by-step guidance to install the Munetrix Infinite Campus plugin to share student, teacher and roster data with Munetrix.

This article provides guidance on how to set up the data extracts required for the Munetrix Academic Module and Early Warning Module integrations.  This article covers setting up a connection to our SFTP server, installing the queries we use to extract data from Infinite Campus and setting up nightly data extractions to Munetrix.  

For each table that Munetrix requires data from we will set up an extraction query that will be scheduled to run nightly.  Each of these extractions will be captured in it’s own Data Extract Utility Instance.  Excepting the SQL query each instance will be set up in the same manner.  First we will define the general settings used for all instance, then we will provide the specific details required for each individual instance. 

 

### General Instance Settings

The steps below define how to set up the generic Data Extract Utility Instance settings that will be used for all data extractions. Follow these steps each time a new extraction instance is being created for each query. Note: Some values defined below will be provided by Munetrix at the time of installation, such as, the username and password. 

 

- Log into the Infinite Campus portal and search for “data extract utility set up” in the in “search campus tools” search bar.
- Click on “new” to create new instance.

- Fill **all the fields** as follows:   
    - Extract Instance Name:  See next section.  Each instance has a unique name.
    - File Name:  See next section.  Each instance has a unique file name.
    - Delivery Mode:  SFTP
    - Column Delimiter:  TAB
    - Character Set:  UTF-8
    - Append Date to Filename:  No Date
    - Check the box for Include Header Row
    - Check the box for Include Double Quotes
    - Username:  To be provided by Munetrix
    - Password:  To be provided by Munetrix
    - Server:  sftp.dynamo.city
    - Port:  22
    - Path:  /raw/\<district name\>/
    - SQL Query:  See next section.  Each instance will have a unique SQL query.
    - Frequency:  Daily
    - Start Date:  Today
    - Start Time:  18:00
- After filling in the unique fields for each instance **(see next section)** save the new instance and data will be delivered as scheduled in the details above.

 

### Instance Settings for Each Table Extraction

This section will define the details needed for each individual table extraction to be scheduled from Infinite Campus.  Each sub-section below will include the following details unique to each instance:

- Extract Instance Name
- File Name
- SQL Query

*Note:  Any query using calendar ID’s will need to be updated to include the calendar ID’s used in your Infiinte Campus instance.* 

 

#### ***Address***

**Extract Instance Name:**  IC\_MUN\_address 

**File Name:**  address 

**SQL Query:** 

SELECT DISTINCT addressID, state, apt, city, zip, number, street, tag, prefix, dir, postOfficeBox, county FROM address; 

 

#### *Attendance*

**Extract Instance Name:**  IC\_MUN\_attendance 

**File Name:**  attendance 

**SQL Query:** 

SELECT DISTINCT 

    t1.personID, 

    t1.calendarID, 

    t1.attendanceID, 

    t1.status, 

    t1.excuse, 

    t1.comments, 

    t1.date, 

    t2.endYear, 

    t2.schoolID 

FROM 

    (SELECT DISTINCT 

        personID, 

        calendarID, 

        attendanceID, 

        status, 

        excuse, 

        comments, 

        date 

     FROM 

        attendance) AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.calendarID = t2.calendarID; 

 

#### *Attendance Detail*

**Extract Instance Name:**  IC\_MUN\_attendance\_detail 

**File Name:**  attendance\_detail 

**SQL Query:** 

SELECT DISTINCT personID, calendarID, termID, termName, courseNumber, sectionID 

FROM v\_AttendanceDetail  

WHERE v\_AttendanceDetail.calendarID IN (99, 100, 101, 102); 

 

#### *Behavior Event*

**Extract Instance Name:**  IC\_MUN\_behaviorEvent 

**File Name:**  behaviorEvent 

**SQL Query:** 

SELECT DISTINCT incidentID, typeID, calendarID, eventID from behaviorEvent; 

 

#### *Behavior Incident*

**Extract Instance Name:**  IC\_MUN\_behaviorIncident 

**File Name:**  behaviorIncident 

**SQL Query:** 

SELECT DISTINCT 

    t1.incidentID, 

    t1.calendarID, 

    t1.timestamp, 

    t1.location, 

    t1.description, 

    t1.referralPersonID, 

    t2.endYear, 

    t2.schoolID, 

    t2.districtID 

FROM 

    (SELECT DISTINCT 

        incidentID, 

        calendarID, 

        timestamp, 

        location, 

        description, 

        referralPersonID 

     FROM 

        behaviorIncident) AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID, 

        districtID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.calendarID = t2.calendarID; 

 

#### *Behavior Referral*

**Extract Instance Name:**  IC\_MUN\_behaviorReferral 

**File Name:**  behaviorReferral 

**SQL Query:** 

SELECT DISTINCT \* FROM behaviorReferral; 

 

#### *Behavior Type*

**Extract Instance Name:**  IC\_MUN\_behaviorType 

**File Name:**  behaviorType 

**SQL Query:** 

SELECT DISTINCT typeID, code, name, districtID from behaviorType; 

 

#### *Calendar*

**Extract Instance Name:**  IC\_MUN\_calendar 

**File Name:**  calendar 

**SQL Query:** 

SELECT  DISTINCT calendarID, endYear, schoolID, districtID from calendar;  

 

#### *Census Contact Summary*

**Extract Instance Name:**  IC\_MUN\_census\_contact\_summary 

**File Name:**  census\_contact\_summary 

**SQL Query:** 

SELECT DISTINCT personID, studentNumber, districtID, state, apt, city, zip from v\_CensusContactSummary;  

 

#### *Contact*

**Extract Instance Name:**  IC\_MUN\_contact 

**File Name:**  contact 

**SQL Query:** 

SELECT DISTINCT personID, email, secondaryEmail, homePhone, workPhone, cellPhone, pager from contact;  

 

### Course

**Extract Instance Name:**  IC\_MUN\_course 

**File Name:**  course 

**SQL Query:** 

SELECT DISTINCT 

    t1.courseID, 

    t1.calendarID, 

    t1.number, 

    t1.name, 

    t1.homeroom, 

    t1.honorsCode, 

    t1.scedSequenceMax, 

    t2.endYear, 

    t2.schoolID, 

    t2.districtID 

FROM 

   course AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID, 

        districtID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.calendarID = t2.calendarID; 

 

#### *Employment Assignment*

**Extract Instance Name:**  IC\_MUN\_employmentassignment 

**File Name:**  employmentassignment 

**SQL Query:** 

SELECT DISTINCT 

    t1.personID, 

    t1.schoolID, 

    t1.grade, 

    t1.teacher, 

    t1.specialed, 

    t1.assignmentID, 

    t1.startDate, 

    t1.endDate, 

    t1.districtID, 

    t2.calendarID, 

    t2.endYear 

FROM 

    (SELECT DISTINCT 

        personID, 

        schoolID, 

        grade, 

        teacher, 

        specialed, 

        assignmentID, 

        startDate, 

        endDate, 

        districtID 

     FROM 

        employmentassignment) AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID,  

        districtID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.schoolID = t2.schoolID AND t1.districtID = t2.districtID; 

 

#### *Employment Credential*

**Extract Instance Name:**  IC\_MUN\_employmentcredential 

**File Name:**  employmentcredential 

**SQL Query:** 

SELECT DISTINCT personID  from employmentcredential;  

 

#### *Enrollment*

**Extract Instance Name:**  IC\_MUN\_enrollment 

**File Name:**  enrollment 

**SQL Query:** 

SELECT DISTINCT 

    t1.personID, 

    t1.endYear, 

    t1.calendarID, 

    t1.enrollmentID, 

    t1.serviceType, 

    t1.endAction, 

    t1.disability1, 

    t1.disability2, 

    t1.homeless, 

    t1.migrant, 

    t1.immigrant, 

    t1.grade, 

    t1.mvUnaccompaniedYouth, 

    t1.homeSchooled, 

    t1.districtID, 

    t1.structureID, 

    t2.schoolID 

FROM 

    (SELECT DISTINCT 

        personID, 

        endYear, 

        calendarID, 

        enrollmentID, 

        serviceType, 

        endAction, 

        disability1, 

        disability2, 

        homeless, 

        migrant, 

        immigrant, 

        grade, 

        mvUnaccompaniedYouth, 

        homeSchooled, 

        districtID, 

        structureID 

     FROM 

        enrollment) AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID, 

        districtID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.calendarID = t2.calendarID AND t1.districtID = t2.districtID; 

 

#### *Enrollment End Status Type*

**Extract Instance Name:**  IC\_MUN\_enrollment\_endstatus\_type 

**File Name:**  enrollment\_endstatus\_type 

**SQL Query:** 

SELECT DISTINCT \* from EnrollmentEndStatusType; 

 

#### *Enrollment Start Status Type*

**Extract Instance Name:**  IC\_MUN\_enrollment\_startstatus\_type 

**File Name:**  enrollment\_startstatus\_type 

**SQL Query:** 

SELECT DISTINCT code, name from EnrollmentStartStatusType; 

 

#### *Evaluation*

**Extract Instance Name:**  IC\_MUN\_evaluation 

**File Name:**  evaluation 

**SQL Query:** 

SELECT DISTINCT  personID, type, assessmentCategory, grade from evaluation; 

 

#### *Grade Level*

**Extract Instance Name:**  IC\_MUN\_gradelevel 

**File Name:**  gradelevel 

**SQL Query:** 

SELECT DISTINCT calendarID, name from gradelevel; 

 

#### *Grading Task Credit*

**Extract Instance Name:**  IC\_MUN\_gradingtaskcredit 

**File Name:**  gradingtaskcredit 

**SQL Query:** 

SELECT DISTINCT taskID, courseID from gradingtaskcredit; 

 

#### *Graduation*

**Extract Instance Name:**  IC\_MUN\_graduation 

**File Name:**  graduation 

**SQL Query:** 

SELECT DISTINCT personID, cohortYearNCLB from graduation; 

 

#### *Household Location*

**Extract Instance Name:**  IC\_MUN\_householdlocation 

**File Name:**  householdlocation 

**SQL Query:** 

SELECT DISTINCT \* from householdlocation;  

 

#### *Household Member*

**Extract Instance Name:**  IC\_MUN\_householdmember 

**File Name:**  householdmember 

**SQL Query:** 

SELECT DISTINCT memberID, householdID, personID, startDate, endDate from HouseholdMember; 

 

#### *Identity*

**Extract Instance Name:**  IC\_MUN\_identity 

**File Name:**  identity 

**SQL Query:** 

SELECT DISTINCT personID, identityID, gender, firstName, suffix, lastName, middleName, raceEthnicity, hispanicEthnicity, dateEnteredUS from \[identity\];  

 

#### *Mailing Address*

**Extract Instance Name:**  IC\_MUN\_mailingaddress 

**File Name:**  mailingaddress 

**SQL Query:** 

SELECT DISTINCT personID, addressLine1, districtID from v\_MailingAddress; 

 

#### *Person*

**Extract Instance Name:**  IC\_MUN\_person 

**File Name:**  person 

**SQL Query:** 

SELECT DISTINCT personID, staffNumber, studentNumber from person; 

 

#### *Plan*

**Extract Instance Name:**  IC\_MUN\_plan 

**File Name:**  plan 

**SQL Query:** 

SELECT DISTINCT planID, personID, typeID, districtID from \[Plan\]; 

 

#### *Plan State*

**Extract Instance Name:**  IC\_MUN\_planstate 

**File Name:**  planstate 

**SQL Query:** 

SELECT  DISTINCT planID, disability1 , disability2, disability1Name, disability2Name from planstate; 

 

#### *Plan Type*

**Extract Instance Name:**  IC\_MUN\_plantype 

**File Name:**  plantype 

**SQL Query:** 

SELECT DISTINCT typeID, districtID, name From PlanType; 

 

#### *Program Participation*

**Extract Instance Name:**  IC\_MUN\_ProgramParticipation 

**File Name:**  ProgramParticipation 

**SQL Query:** 

SELECT DISTINCT personID, active, code, name, districtID from v\_ProgramParticipation; 

 

#### *Related Pair*

**Extract Instance Name:**  IC\_MUN\_relatedpair 

**File Name:**  relatedpair 

**SQL Query:** 

SELECT DISTINCT personID1, personID2, guardian, seq, name from relatedpair; 

 

#### *Roster*

**Extract Instance Name:**  IC\_MUN\_roster 

**File Name:**  roster 

**SQL Query:** 

SELECT DISTINCT sectionID, personID, trialID from roster; 

 

#### *School*

**Extract Instance Name:**  IC\_MUN\_school 

**File Name:**  school 

**SQL Query:** 

SELECT DISTINCT schoolID, gradeType, type, name, number, city, county, zip, physicalAddress, phone, districtID  from school; 

 

#### *Section*

**Extract Instance Name:**  IC\_MUN\_section 

**File Name:**  section 

**SQL Query:** 

SELECT DISTINCT sectionID, courseID, trialID from section;  

 

#### *Section Placement*

**Extract Instance Name:**  IC\_MUN\_sectionplacement 

**File Name:**  sectionplacement 

**SQL Query:** 

SELECT DISTINCT sectionID, termID, trialID from sectionplacement;  

 

#### *Section Staff Hisotry*

**Extract Instance Name:**  IC\_MUN\_sectionstaffhistory 

**File Name:**  sectionstaffhistory 

**SQL Query:** 

SELECT  DISTINCT personID, sectionID, startDate , endDate, role, trialID, assignmentID from sectionstaffhistory;  

 

#### *Staff Enrollment*

**Extract Instance Name:**  IC\_MUN\_staffEnrollment 

**File Name:**  staffEnrollment 

**SQL Query:** 

SELECT DISTINCT personID, endYear ,calendarID, enrollmentID, serviceType, endAction, disability1, disability2, homeless, migrant, immigrant, grade, mvUnaccompaniedYouth, homeSchooled, districtID, structureID from enrollment;  

 

#### *Staff Member*

**Extract Instance Name:**  IC\_MUN\_staffmember 

**File Name:**  staffmember 

**SQL Query:** 

SELECT DISTINCT personID, staffNumber, schoolID, gender, birthdate, firstName, suffix, lastName, middleName from staffmember;  

 

#### *State Grade Level Definition*

**Extract Instance Name:**  IC\_MUN\_StateGradeLevelDefinition 

**File Name:**  StateGradeLevelDefinition 

**SQL Query:** 

SELECT DISTINCT code, name, description from StateGradeLevelDefinition;  

 

#### *Student*

**Extract Instance Name:**  IC\_MUN\_student 

**File Name:**  student 

**SQL Query:** 

SELECT DISTINCT personID, identityID, studentNumber, gender, endYear, birthdate, birthCountry, firstName, lastName, middleName, suffix, legalFirstName, legalLastName, legalMiddleName, enrollmentID, calendarID, districtID, raceEthnicity, homePrimaryLanguage , hispanicEthnicity, schoolID, grade, startStatus, endStatus, startDate, endDate, structureID from Student WHERE calendarID IN (99, 100, 101, 102);  

 

#### *Term*

**Extract Instance Name:**  IC\_MUN\_term 

**File Name:**  term 

**SQL Query:** 

SELECT DISTINCT termID, name, startDate, endDate, seq from term;  

 

#### *Test*

**Extract Instance Name:**  IC\_MUN\_test 

**File Name:**  test 

**SQL Query:** 

SELECT DISTINCT testID, type, name, parentID from test; 

 

#### *Test Details*

**Extract Instance Name:**  IC\_MUN\_TestDetails 

**File Name:**  TestDetails 

**SQL Query:** 

select \* from v\_TestDetail; 

 

#### *Test Score*

**Extract Instance Name:**  IC\_MUN\_testScore 

**File Name:**  testScore 

**SQL Query:** 

SELECT DISTINCT \* from TestScore;  

 

#### *Trial*

**Extract Instance Name:**  IC\_MUN\_trial 

**File Name:**  trial 

**SQL Query:** 

SELECT DISTINCT 

    t1.trialID, 

    t1.calendarID, 

    t2.endYear, 

    t2.schoolID 

FROM 

    (SELECT DISTINCT 

        trialID, 

        calendarID 

     FROM 

        trial) AS t1 

INNER JOIN 

    (SELECT DISTINCT 

        calendarID, 

        endYear, 

        schoolID 

     FROM 

        calendar 

     WHERE 

        calendarID IN (99, 100, 101, 102)) AS t2 

ON 

    t1.calendarID = t2.calendarID; 

 

#### *Grading Scores*

**Extract Instance Name:**  IC\_MUN\_GradingScores 

**File Name:**  GradingScores 

**SQL Query:** 

SELECT \* FROM v\_GradingScores WHERE YEAR(date) \> 2023; 

- [Customer Support](https://solutions.munetrix.com/en/knowledge/customer-support?hsLang=en)
- [Early Warning Module](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#main-content)

    - [User Accounts/Login](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#user-accounts-login)
    - [Early Warning Module Dashboard](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#early-warning-module-dashboard)
    - [FAQ](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#faq)
    - [EWM Release Notes](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#ewm-release-notes)
    - [Onboarding & Set-up](https://solutions.munetrix.com/en/knowledge/early-warning-module?hsLang=en#onboarding-set-up)
- [School Edition](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#main-content)

    - [ONBOARDING & SET-UP](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#onboarding-set-up)
    - [GETTING STARTED](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#getting-started)
    - [FINANCIAL MODULE: HOMEPAGE](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#financial-module-homepage)
    - [FINANCIAL MODULE: APPS-DEBT MANAGER](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#financial-module-apps-debt-manager)
    - [FINANCIAL MODULE: APPS-PUBLIC SAFETY DRILLS](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#financial-module-apps-public-safety-drills)
    - [FINANCIAL MODULE: APPS-WEBMASTER TOOLS](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#financial-module-apps-webmaster-tools)
    - [ACADEMIC MODULE: ADMINISTRATION](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#academic-module-administration)
    - [ACADEMIC MODULE: IRIPS](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#academic-module-irips)
    - [ACADEMIC MODULE: 31A REPORTING](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#academic-module-31a-reporting)
    - [ACADEMIC MODULE: EDUCATOR EVALUATIONS](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#academic-module-educator-evaluations)
    - [DATA & TECHNICAL SPECIFICATIONS](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#data-technical-specifications)
    - [RELEASE NOTES](https://solutions.munetrix.com/en/knowledge/school-edition?hsLang=en#release-notes)
- [Municipal Edition](https://solutions.munetrix.com/en/knowledge/municipal-edition?hsLang=en#main-content)

    - [GETTING STARTED](https://solutions.munetrix.com/en/knowledge/municipal-edition?hsLang=en#getting-started)
    - [HOMEPAGE](https://solutions.munetrix.com/en/knowledge/municipal-edition?hsLang=en#homepage)
    - [RELEASE NOTES](https://solutions.munetrix.com/en/knowledge/municipal-edition?hsLang=en#release-notes)
- [Neighborhood Intel](https://solutions.munetrix.com/en/knowledge/neighborhood-intel?hsLang=en#main-content)

    - [GETTING STARTED](https://solutions.munetrix.com/en/knowledge/neighborhood-intel?hsLang=en#getting-started)
    - [METADATA VARIABLE DICTIONARY](https://solutions.munetrix.com/en/knowledge/neighborhood-intel?hsLang=en#metadata-variable-dictionary)
    - [PARCEL INFORMATION](https://solutions.munetrix.com/en/knowledge/neighborhood-intel?hsLang=en#parcel-information)
- [Video Library](https://solutions.munetrix.com/en/knowledge/video-library?hsLang=en#main-content)

    - [School Financial Module](https://solutions.munetrix.com/en/knowledge/video-library?hsLang=en#school-financial-module)
- [News](https://solutions.munetrix.com/en/knowledge/news?hsLang=en#main-content)

    - [Announcements](https://solutions.munetrix.com/en/knowledge/news?hsLang=en#announcements)
    - [Articles](https://solutions.munetrix.com/en/knowledge/news?hsLang=en#articles)

[![Munetrix + School Data Logos](https://solutions.munetrix.com/hs-fs/hubfs/Munetrix%20School%20Data%20logos%20stacked.png?width=600&height=200&name=Munetrix%20School%20Data%20logos%20stacked.png "Munetrix + School Data Logos")](https://www.munetrix.com/)

Copyright © 2026, Munetrix + SchoolData Solutions