Overview
Overview of entity types and template URL for each HTTP method
Each example for creating a record shows the JSON document to send as the HTTP body. Any text in highlighted in green (at least) should be reviewed and edited per HTTP call to create a record.
...
Code Block | ||
---|---|---|
| ||
POST https://{host}.edu.net.au/api/rest/v1/Program
POST https://{host}.edu.net.au/api/rest/v1/Unit
POST https://{host}.edu.net.au/api/rest/v1/ProgramUnitConstraint
POST https://{host}.edu.net.au/api/rest/v1/ScheduledUnit
POST https://{host}.edu.net.au/api/rest/v1/ScheduledUnitFee
POST https://{host}.edu.net.au/api/rest/v1/UnitAssessment
POST https://{host}.edu.net.au/api/rest/v1/UnitCompetency
POST https://{host}.edu.net.au/api/rest/v1/Competency
POST https://{host}.edu.net.au/api/rest/v1/CodeItem
POST https://{host}.edu.net.au/api/rest/v1/StatusItem |
Update an entity record (HTTP PUT method) (template URL for each relevant API entity type)
...
Code Block | ||
---|---|---|
| ||
PUT https://{host}.edu.net.au/api/rest/v1/Program/{eduProgramId}
PUT https://{host}.edu.net.au/api/rest/v1/Unit/{eduUnitId}
PUT https://{host}.edu.net.au/api/rest/v1/ProgramUnitConstraint/{eduProgramUnitConstraintId}
PUT https://{host}.edu.net.au/api/rest/v1/ScheduledUnit /{eduScheduledUnitId}
PUT https://{host}.edu.net.au/api/rest/v1/ScheduledUnitFee/{eduScheduledUnitId}
PUT https://{host}.edu.net.au/api/rest/v1/UnitAssessment /{eduAssessmentId}
PUT https://{host}.edu.net.au/api/rest/v1/UnitCompetency /{eduAssessmentId}
PUT https://{host}.edu.net.au/api/rest/v1/Competency /{competencyId}
PUT https://{host}.edu.net.au/api/rest/v1/CodeItem/{codeId}
PUT https://{host}.edu.net.au/api/rest/v1/StatusItem/{statusId} |
Retrieve an entity record (HTTP GET Method) (template URL for each relevant API entity type)
...
Status Item
Code Block | ||
---|---|---|
| ||
GET https://{host}.edu.net.au/api/rest/v1/Program/{eduProgramId}
GET https://{host}.edu.net.au/api/rest/v1/Unit/{eduUnitId}
GET https://{host}.edu.net.au/api/rest/v1/ProgramUnitConstraint/{eduProgramUnitConstraintId}
GET https://{host}.edu.net.au/api/rest/v1/ScheduledUnit /{eduScheduledUnitId}
GET https://{host}.edu.net.au/api/rest/v1/ScheduledUnitFee/{eduScheduledUnitId}
GET https://{host}.edu.net.au/api/rest/v1/UnitAssessment /{eduAssessmentId}
GET https://{host}.edu.net.au/api/rest/v1/UnitCompetency /{eduAssessmentId}
GET https://{host}.edu.net.au/api/rest/v1/Competency /{competencyId}
GET https://{host}.edu.net.au/api/rest/v1/CodeItem/{codeId}
GET https://{host}.edu.net.au/api/rest/v1/StatusItem/{statusId} |
Find entity records matching criteria (HTTP GET method) (template URL for each relevant API entity type)
...
Examples for Unit entity and related entities
Each example for creating a record shows the JSON document to send as the HTTP body. Any text in highlighted in green (at least) should be reviewed and edited per HTTP call to create a record
Create a new Unit entity record
...
POST https://{host}.edu.net.au/api/rest/v1/Unit
...
Code Block | ||
---|---|---|
| ||
POST https://{host}.edu.net.au/api/rest/v1/Unit
{
"eduUnitId": "ICX1234", Unit Code (Primary key, fixed)
"eduOtherUnitId": "ICX1234",
"eduProviderOtherUnitId": "ICX1234",
"unitName": "Example Unit Name",
"unitCategory": "2",
"unitStatusId": "UNIT_ACTIVE",
"providerPartyId": "10000",
"creditStatement": "",
"pgradEftsuLoad": "0.0",
"ugradEftsuLoad": "0.0625",
"description": "Example Unit description ",
"requirements": "Example Unit requirements ",
"destDiscipline": "80300",
"destWorkExperienceIndicator": "0",
"method": "ONLINE",
"avet018": "20",
"avet040": "60",
"avet058": "60",
"avet078": "N"
} |
SCHEDULED UNIT: If a value for any of the following data fields are NOT specified when creating a ScheduledUnit entity record then the value will default to the corresponding data field on the existing Unit entity record referenced by the "eduUnitId" field: "eduOtherUnitId", "eduProviderOtherUnitId", "unitName", "unitStatusId", "providerPartyId"
Update an existing Unit entity record
...
Code Block | ||
---|---|---|
| ||
PUT https://{host}.edu.net.au/api/rest/v1/Unit/{eduUnitId}
{
"eduProviderOtherUnitId": "ICX1234",
"unitName": "Example Unit Name",
"unitCategory": "2",
"unitStatusId": "UNIT_ACTIVE",
"pgradEftsuLoad": "0.0",
"ugradEftsuLoad": "0.0625",
"description": "Example Unit description ",
"requirements": "Example Unit requirements ",
"destDiscipline": "80300",
"destWorkExperienceIndicator": "0",
"method": "ONLINE",
"avet018": "20",
"avet040": "60",
"avet058": "60",
"avet078": "N"
} |
Create a new ScheduledUnitFee entity record (new API entity to simplify unit fee management)
ScheduledUnit and ScheduledFee wrapper
...
"eduUnitId": "ICX1234",
...
Unit Code (FK to Unit.eduUnitId)
...
"eduOtherUnitId": "ICX1234",
...
Unit Code (required, updateable)
...
"eduProviderOtherUnitId": "ICX1234",
...
Unit Code (optional, updateable)
...
"unitName": "Example Unit Name",
...
Unit Name (optional)
...
"unitStatusId": "UNIT_ACTIVE",
...
Status (ACTIVE/INACTIVE)
...
"providerPartyId": "10000",
...
Provider (DEFAULT=10000)
...
"startDate" : "20150101T00:00:00",
...
Start Date (YYYYMMDD)
...
"endDate" : "20151231T00:00:00",
...
End Date (YYYYMMDD)
...
"fee": "1000.00",
...
Unit Fee Amount (AUD)
...
"feeTypeId": "STANDARD_FEE",
...
Fee Type (Code=FEE_TYPE)
...
"description": "Standard Fee",
...
Fee Description (optional)
...
"modeOfDelivery": "ONLINE",
...
Mode of Delivery (ONLINE)
...
"flexibleLearning": "Y",
...
Flexible Learning (Y/N)
...
"maximumParticipants": "10000"
...
Maximum allowed enrolments
...
}
Code Block | ||
---|---|---|
| ||
POST https://{host}.edu.net.au/api/rest/v1/ScheduledUnitFee
{
"eduUnitId": "ICX1234",
"eduOtherUnitId": "ICX1234",
"eduProviderOtherUnitId": "ICX1234",
"unitName": "Example Unit Name",
"unitStatusId": "UNIT_ACTIVE",
"providerPartyId": "10000",
"startDate" : "20150101T00:00:00",
"endDate" : "20151231T00:00:00",
"fee": "1000.00",
"feeTypeId": "STANDARD_FEE",
"description": "Standard Fee",
"modeOfDelivery": "ONLINE",
"flexibleLearning": "Y",
"maximumParticipants": "10000"
} |
SCHEDULED UNIT FEE: When a POST call is made to the API to create a ScheduledUnitFee entity it actually creates a ScheduledUnit entity record and also create attached ScheduledFee and ScheduledAssessment entity records matching the specification associated with the Unit record.
...
Update an existing ScheduledUnitFee entity record (new API entity to simplify unit fee management)
ScheduledUnit and ScheduledFee wrapper
...
Code Block | ||
---|---|---|
| ||
PUT https://{host}.edu.net.au/api/rest/v1/ScheduledUnitFee/{eduScheduledUnitId}
{
"eduProviderOtherUnitId": "ICX1234",
"unitName": "Example Unit Name",
"unitStatusId": "UNIT_ACTIVE",
"providerPartyId": "10000",
"startDate" : "20150101T00:00:00",
"endDate" : "20151231T00:00:00",
"fee": "1000.00",
"feeTypeId": "STANDARD_FEE",
"description": "Standard Fee",
"modeOfDelivery": "ONLINE",
"flexibleLearning": "Y",
"maximumParticipants": "10000"
} |
Further reading
...
Objective
This article outlines how to use the Paradigm API to perform specific tasks through a series of sample POSTMAN commands.
Complexity:
Status | ||||
---|---|---|---|---|
|
Note |
---|
Be AdvisedThe 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 |
Info |
---|
Advanced programmers that 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 on 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 |
---|---|---|
apiUser | This is the username of the user you wish to use the API with. |
|
apiPw | The password for the user |
|
host | The hostname of your site | https://abc.edu.net.au |
Logging In
Note |
---|
BE ADVISED Do not use online tools to generate your base64 encoded logins as these 3rd party sites may store the login credential 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:
Code Block | ||
---|---|---|
| ||
powershell "[convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes(\"username:password\")) |
Windows PowerShell:
Code Block | ||
---|---|---|
| ||
[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("username:password")) |
Linux Bash:
Code Block | ||
---|---|---|
| ||
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:
Code Block | ||
---|---|---|
| ||
curl --location -g --request GET 'https://host/api/rest/EduNoteData/?partyId={{sampleStudentPartyId}}' \
--header 'Content-Type: application/json' |