API Integration

This page will provide you with an overview and examples of how to use the Paradigm API to perform specific tasks through a series of sample POSTMAN commands.

Paradigm API Documentation

The Paradigm API examples calls may be viewed in the format of a Postman Collection available via this link (https://documenter.getpostman.com/view/541303/TVRpz4qD)

Advanced programmers who are familiar with connecting to APIs are welcome to dive straight in using the Postman documentation for reference.

Getting Started

When reading the documentation youโ€™ll notice contents such as {{apiUser}} , these will need to be populated with values that would exist only in your Paradigm system. If you are making use of Postman to test call executions, this is how Postman represents environment variables.

Common Variables

Variable Name

Description

Example Content

host

The hostname of your site

https://abc.edu.net.au

apiUser

This is the username of the user you wish to use the API with. This username can be any user login in your system.

YourApplicationName.API

apiPw

The password for the user

*********

Logging In

BE ADVISED:

Do not use online tools to generate your base64 encoded logins as these 3rd party sites may store the login credentials resulting in a significant risk to the security of your Paradigm site.

To use the API you will need to set the HTTP Authorization header as โ€œBasic {{encodedPassString}}โ€. The encoded pass string is a base64 encoded form of the following information: username:password

Use the following examples as a guide on how to correctly generate a base64 encoded text string. Replace the parameters username and password with the values, you want to use on your Paradigm site.

Windows Command Prompt:

powershell "[convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes(\"username:password\"))

Windows PowerShell:

[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("username:password"))

Linux Bash:

echo  'username:password' | base64

Example Requests

In the top menu, you have the option to select the LANGUAGE - as in the programming language or method that you will be using to connect to the API. By default this is curl:

curl --location -g --request GET 'https://host/api/rest/EduNoteData/?partyId={{sampleStudentPartyId}}' \
--header 'Content-Type: application/json'

If you use curl and replace the values in <> you should get data returned.

curl --location --request GET 'https://host/api/rest/Unit/<edu_unit_id>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic <base64 encoded string>'

The following should also work in a web browser then prompted to login in.

https://host/api/rest/Unit/<edu_unit_id>

The following should also work in a web browser no login prompt

https://<username>:<password>@host/api/rest/Unit/<edu_unit_id>

URL Encoding

The part after the first question mark is called a Query String. The query string needs special characters to be encoded because itโ€™s already using some characters such as:

&?=

That needs to be treated as different from the full URL. Thereโ€™s a handy document on it here https://www.tutorialspoint.com/html/html_url_encoding.htm Depending on the software platform that youโ€™re using to transmit the request, there are different methods available to do this for you. PHP:

urlencode($variable)

JavaScript:

encodeURIComponent(vraiable)

Last updated