---
title: "Choose an import method: API, SFTP, or CSV"
description: Compare API, SFTP, and CSV upload for importing roster data into SchoolDay, with the requirements and trade-offs of each method.
---

[Skip to content](https://help.schoolday.com/knowledge/choose-an-import-method#main-content)

English

Show submenu for translations

[More support](https://help.schoolday.com/knowledge/kb-tickets/new?hsLang=en) [Customer portal](https://help.schoolday.com/support?hsLang=en)

![gg4l logo](https://help.schoolday.com/hs-fs/hubfs/Automated%20emails/gg4l%20logo.png?width=100&height=33&name=gg4l%20logo.png)

- [Go to Knowledge Base](https://help.schoolday.com/knowledge)

Open main navigation

Close main navigation

- [Go to Knowledge Base](https://help.schoolday.com/knowledge)
- English
  
  Show submenu for translations
- [More support](https://help.schoolday.com/knowledge/kb-tickets/new)
- [Customer portal](https://help.schoolday.com/support)

 What are you looking for?

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

1. [SchoolDay Help Center](https://help.schoolday.com/knowledge?hsLang=en)
2. [Roster Integrations](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en)
3. [Introduction](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#introduction)

November 7, 2026

# Choose an import method: API, SFTP, or CSV

## Compare the three ways to get roster data into SchoolDay and pick the one your student information system (SIS) and your team can maintain.

**In this article**

> [The three methods](https://help.schoolday.com/knowledge/choose-an-import-method#the-three-methods)
> 
> [How to decide](https://help.schoolday.com/knowledge/choose-an-import-method#how-to-decide)
> 
> [Points that change the answer](https://help.schoolday.com/knowledge/choose-an-import-method#points-that-change-the-answer)
> 
> [Related concepts](https://help.schoolday.com/knowledge/choose-an-import-method#related-concepts)

SchoolDay imports roster data three ways. The right one depends on what your student information system (SIS) can expose, how much automation you need, and who maintains the connection after setup.

### The three methods

|  | **API integration** | **SFTP with CSV files** | **CSV Upload** |
| --- | --- | --- | --- |
| How data moves | SchoolDay calls your SIS rostering API. | Your SIS or staff place CSV files on an SFTP server, and SchoolDay collects them. | An admin uploads CSV files in the browser. |
| Automation | Full. Runs on a schedule. | Full, once file delivery is automated. | None. Every import is manual. |
| What you need | An SIS with a rostering API, plus the Service URL, Client ID, and Client Secret | An SIS that can export CSV, plus an SFTP server and credentials | CSV files in a supported format |
| File format | None. Records come over the API. | OneRoster (recommended) or Basic Roster | OneRoster (recommended) or Basic Roster |
| Ongoing work | Rotate credentials when they change. | Keep the export job and file format working. | Repeat the upload for every change. |
| Supported by | 16 SISes, including Aeries, Infinite Campus, PowerSchool, and Skyward | Any SIS that can export CSV to SFTP | Any source that can produce the required files |

### How to decide

Work down this list and stop at the first match.

1. **Your SIS is on the list of API-supported SISes.** Use an API integration. It's the only method where nobody has to maintain files, and the only one that supports incremental sync and 2-way sync. See Supported SISes Overview for the list, then [Import data via API integration](https://help.schoolday.com/knowledge/import-data-via-api-integration?hsLang=en).
2. **Your SIS isn't on the API list but can export CSV on a schedule.** Use SFTP. SchoolDay can integrate with any SIS that exports CSV to SFTP. See Configure an SFTP integration.
3. **You need data in SchoolDay once, or as a one-off correction.** Use CSV Upload. CSV Upload doesn't support automated import, so every run is a manual upload. See Import data via CSV upload.

### Points that change the answer

- **Write-back.** Only API integrations support 2-way sync, and only for Aeries, Infinite Campus, Lumen Touch, PowerSchool, and Skyward. If data must flow back to your SIS, no file-based method can do it.
- **Sync frequency.** Incremental sync transfers only changed records. It's available for PowerSchool API integrations and needs activation by SchoolDay Support. Every other setup runs a full sync.
- **More than one source.** You can combine methods, for example an SIS over API plus Active Directory for staff. Turn on multi-source handling and set a SIS ID prefix for each source so records with matching SIS IDs aren't merged. See [Delivery configuration settings](https://help.schoolday.com/knowledge/delivery-config-settings?hsLang=en).
- **Who maintains it.** An API connection breaks when credentials change. An SFTP connection breaks when an export job or a file header changes. Choose the kind of problem your team can spot and fix.
- **Format choice.** For SFTP and CSV Upload, SchoolDay recommends OneRoster over Basic Roster. Use Basic Roster only if your source system can't produce OneRoster CSV files. See Prepare CSV files for import.

### Related concepts

- [How API roster imports work](https://help.schoolday.com/knowledge/how-api-roster-imports-work?hsLang=en)
- [Sync modes in SchoolDay](https://help.schoolday.com/knowledge/sync-modes?hsLang=en)
- [Supported SISes Overview](https://help.schoolday.com/knowledge/supported-sises-overview?hsLang=en)

- [Getting Started](https://help.schoolday.com/knowledge/getting-started?hsLang=en#main-content)

    - [Introduction](https://help.schoolday.com/knowledge/getting-started?hsLang=en#introduction)
    - [Getting Started by Role](https://help.schoolday.com/knowledge/getting-started?hsLang=en#getting-started-by-role)
    - [Get Support](https://help.schoolday.com/knowledge/getting-started?hsLang=en#get-support)
    - [Legal](https://help.schoolday.com/knowledge/getting-started?hsLang=en#legal)
- [Data Management (Connect)](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#main-content)

    - [Introduction](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#introduction)
    - [Applications](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#applications)
    - [Data Mapping](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#data-mapping)
    - [Data Synchronization](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#data-synchronization)
    - [Data-Sharing Requests](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#data-sharing-requests)
    - [Data Quality](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#data-quality)
    - [Data Privacy (Privacy Shield)](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#data-privacy-privacy-shield)
    - [Grade Sync Service](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#grade-sync-service)
    - [Miscellaneous](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#miscellaneous)
    - [Governance](https://help.schoolday.com/knowledge/data-management-connect?hsLang=en#governance)
- [Roster Integrations](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#main-content)

    - [Introduction](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#introduction)
    - [SFTP Integration](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#sftp-integration)
    - [API Integration](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#api-integration)
    - [Import Integrations](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#import-integrations)
    - [PowerSchool Integration](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#powerschool-integration)
    - [Export Integrations](https://help.schoolday.com/knowledge/roster-integrations?hsLang=en#export-integrations)
- [Administration & Account Settings](https://help.schoolday.com/knowledge/administration-account-settings?hsLang=en#main-content)

    - [Account Settings](https://help.schoolday.com/knowledge/administration-account-settings?hsLang=en#account-settings)
    - [Organization Management](https://help.schoolday.com/knowledge/administration-account-settings?hsLang=en#organization-management)
- [SSO](https://help.schoolday.com/knowledge/sso?hsLang=en#main-content)

    - [Introduction](https://help.schoolday.com/knowledge/sso?hsLang=en#introduction)
    - [Identity provider (IdP) Setup](https://help.schoolday.com/knowledge/sso?hsLang=en#identity-provider-idp-setup)
    - [SSO Applications](https://help.schoolday.com/knowledge/sso?hsLang=en#sso-applications)
    - [SSO Resources](https://help.schoolday.com/knowledge/sso?hsLang=en#sso-resources)
    - [MFA for Administrators](https://help.schoolday.com/knowledge/sso?hsLang=en#mfa-for-administrators)
    - [MFA for Users (SchoolDay Login)](https://help.schoolday.com/knowledge/sso?hsLang=en#mfa-for-users-schoolday-login)
    - [ID Card Login](https://help.schoolday.com/knowledge/sso?hsLang=en#id-card-login)
    - [SSO Troubleshooting](https://help.schoolday.com/knowledge/sso?hsLang=en#sso-troubleshooting)
- [LMS Integrations](https://help.schoolday.com/knowledge/lms-integrations?hsLang=en#main-content)

    - [Coursera Integration Video Guides](https://help.schoolday.com/knowledge/lms-integrations?hsLang=en#coursera-integration-video-guides)
    - [Coursera Platform Integration](https://help.schoolday.com/knowledge/lms-integrations?hsLang=en#coursera-platform-integration)
    - [Qwiklabs Platform Integration](https://help.schoolday.com/knowledge/lms-integrations?hsLang=en#qwiklabs-platform-integration)
    - [LMS Integrations instructions](https://help.schoolday.com/knowledge/lms-integrations?hsLang=en#lms-integrations-instructions)
- [Resource Management (App Store)](https://help.schoolday.com/knowledge/resource-management-app-store?hsLang=en#main-content)

    - [Users & Classes](https://help.schoolday.com/knowledge/resource-management-app-store?hsLang=en#users-classes)
    - [Resources](https://help.schoolday.com/knowledge/resource-management-app-store?hsLang=en#resources)
    - [Access & Security](https://help.schoolday.com/knowledge/resource-management-app-store?hsLang=en#access-security)
- [Privacy Governance Console (PGC)](https://help.schoolday.com/knowledge/privacy-governance-console-pgc?hsLang=en#main-content)

    - [Get Started](https://help.schoolday.com/knowledge/privacy-governance-console-pgc?hsLang=en#get-started)
    - [Monitor and Report](https://help.schoolday.com/knowledge/privacy-governance-console-pgc?hsLang=en#monitor-and-report)
    - [Govern Apps](https://help.schoolday.com/knowledge/privacy-governance-console-pgc?hsLang=en#govern-apps)
- [For Parents/Students](https://help.schoolday.com/knowledge/for-parents-students?hsLang=en)
- [For Vendors](https://help.schoolday.com/knowledge/for-vendors?hsLang=en)
- [Updates](https://help.schoolday.com/knowledge/updates?hsLang=en#main-content)

    - [2026](https://help.schoolday.com/knowledge/updates?hsLang=en#2026)
    - [2025](https://help.schoolday.com/knowledge/updates?hsLang=en#2025)
    - [2024](https://help.schoolday.com/knowledge/updates?hsLang=en#2024)
    - [2023](https://help.schoolday.com/knowledge/updates?hsLang=en#2023)
    - [2022](https://help.schoolday.com/knowledge/updates?hsLang=en#2022)
- [Reference](https://help.schoolday.com/knowledge/reference?hsLang=en#main-content)

    - [APIs](https://help.schoolday.com/knowledge/reference?hsLang=en#apis)
    - [CSV File Formats](https://help.schoolday.com/knowledge/reference?hsLang=en#csv-file-formats)

[![SchoolDay logo](https://help.schoolday.com/hs-fs/hubfs/schoolday-logo%20(300%20x%20100%20px)%20(1).png?width=300&height=100&name=schoolday-logo%20(300%20x%20100%20px)%20(1).png "SchoolDay logo")](http://schoolday.com)

<https://www.linkedin.com/company/schooldayinc> <https://x.com/schooldayinc> <http://facebook.com/schooldayinc> [mailto:support@schoolday.com](mailto:support@schoolday.com)

Copyright © 2025, SchoolDay, Inc.