API & SDK
Application programming interface (API) endpoints are like building blocks, which schools and third party partners can use to expand the capabilities of their software applications. Many of Blackbaud's solutions are extendable with Blackbaud's SKY API endpoints.
Discuss your current projects related to SKY API in the User community for developers.
To enable a user to create and maintain connected apps as a developer, a platform manager should enable the SKY API Basic and SKY API Data Sync role. See Role membership for instructions.
Most employees who are responsible for keeping user profile data updated should have the contact card manager role instead of platform manager role (and its clones).
Learn how to manage roles and tasks for users.
Contact card managers can handle personal data common to any user (including contact information, demographics, relationships, emergency contacts, business, and education information).
-
From Core, you can use the People finder to go to a user's profile and Contact card to make changes.
-
From Core, Users, you can also select Handle profile changes to review the changes users have made or that other administrators made on a user’s behalf.
We recommend schools also use the contact card manager role to grant API access to any of our third party partners who rely on accessing or updating Contact card data. It ensures that the API access is limited strictly to the data they need.
We recommend schools grant the platform manager role sparingly.
Schools should avoid granting users a clone of the platform manager role, even when they remove unwanted tasks to limit the clone's access (as much as possible) to only contact card functionality. If your school relies on clones, consider replacing them with the contact card manager role instead.
When platform managers receive new tasks or an existing task it updated, schools with clones must review the clones to ensure their access is still appropriated limited (not too little nor too much power).
We recommend you use SKY UX ensure a consistent, cohesive experience between customizations and applications from third party developers and Blackbaud solutions.
SKY UX explains the user experience and design principles for new product developments and enhancements to Blackbaud solutions. It provides guidelines and tooling for the entire application life cycle.
This resource is open source and hosted on GitHub.
We continue to support both of our REST APIs. The REST APIs enable two applications to talk to each other, such as Blackbaud Education Edge and Connect Raiser’s Edge, a third party partner integration, or a custom app for your school.
-
SKY API
-
We recommend all new development SKY API for schools instead of the "legacy” ON API.
If you have applications or integrations based on "legacy" APIs, consider migrating to SKY API.
-
The SKY API has parity with the “legacy” ON API and is being expanded with new development.
-
We support this REST API. For documentation about SKY API endpoints and more, please visit Blackbaud's SKY API website.
-
-
"Legacy" ON API
-
The "legacy” ON API is no longer being expanded. As we update Blackbaud Education Edge with new features, endpoints won’t be added to this “legacy” ON API. Thus, we discourage new development from using the “legacy” ON API, even though we continue to support the “legacy” ON API for older integrations and applications.
-
Additionally, if users log into a “legacy” ON API app you built with their “legacy” username and password, you will need to switch to SKY API and Blackbaud ID to maintain that kind of authentication and to limit the data the user can access.
-
We support this REST API. For documentation about "ON" API endpoints and more, please visit Blackbaud's Education Management Products "ON" API website.
-
We haven’t yet determined a specific date for when this legacy offering will reach “end of life.”
-
To continue using the “legacy” ON API, you must update to use authentication tokens (generated in Core) by June 30, 2021.
-
-
Software Development Kit (SDK)
-
The Software Development Kit (SDK) was created to enable developers at schools and third party partners to create tighter integrations with Blackbaud Education Management (originally known as "Whipple Hill" and the "ON" products).
-
The SDK enables read and write access to Blackbaud Education Management data via the ON API.
-
The SDK also provides SQL Reporting views for read only ODBC access via VPN connection. This provides read-only access to many of the tables and columns in the database.
-
Like advanced lists, this requires us to make a change to the view every time we add new columns/data. Although the view doesn’t include 100% coverage, it’s very comprehensive. Like advanced lists, users must understand the underlying database structure to build queries.
-
Schools can use many tools (such as Crystal Reports or Microsoft Excel) to read the data that they access through ODBC.
-
Discuss your current projects related to the SDK or "ON" APIs in the K-12 User Community.
Please contact your Account Executive for details about installing this integration.
-
We haven’t yet determined a specific date for when this legacy offering will reach “end of life.”
-
Although ON API will be replaced by SKY API, we don’t currently have any plans eliminate the ODBC SQL View access. Thus, ODBC SQL View access remains valuable for the SDK and related costs.
-
If your school has the SDK, you can use Crystal Reports to access SQL views via ODBC. Then, you can upload Custom Reports to the Reports area of the 'Blackbaud's Education Management' products, if these criteria are also met:
-
Custom reports are created in Crystal Reports.
-
They are saved as .rpt files.
-
The .rpt doesn't tie to a local database. Instead, build .rpt files that point to an OLE DB (ADO) connection and use the Blackbaud K-12 Data Access Objects correctly.
-
The .rpt is built pointing to an OLE DB (ADO) connection instead of an ODBC DSN connection.
-
Create each query using the view you want. (Do not use the Crystal Database Expert and select a view.)
-
Never select Save Data with Report. Instead, ensure you pull the latest data with every view of the report.
For details, refer to this document.