{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"8953d266-620b-4706-a59e-ec96c38719e7","name":"UAC Advance API (Documentation)","description":"## RELEASE NOTES\n\n| **Date** | **API version** | **Changes** |\n| --- | --- | --- |\n| 17/03/2022 | \\- | Curriculum endpoints specification has been updated to the new data model. |\n| 06/04/2022 | \\- | Applicants, Applicants credentials, Users and Roles endpoints specifications updated.  <br>  <br>**Indicative specifications provided for Applications and Articulation Agreements endpoints. Please note these are subject to change.** |\n| 28/04/2022 | \\- | Final specification provided for Applications and Articulation Agreements endpoints (except for the get Application outcome). |\n| 05/05/2022 | \\- | CREATE/UPDATE Articulation Arrangements: added \"subjects_awarded\" field to define target subjects as a standalone array (independent of arrangement level required credentials). The mapping field (required credentials -> target subjects) is now optional. |\n| 12/05/2022 | \\- | CREATE Articulation Arrangements: status field is removed. New arrangements will have status = DRAFT. Use the UPDATE Articulation Arrangements endpoint to edit arrangement status.  <br>  <br>UPDATE Articulation Arrangements: status field is added  <br>  <br>Appendix 3.1 Credential data structure: added institution_code, institution_name and country to TERTIARY/SUBJECT/PROFESSIONAL credential type. Added completion_date, resultType, result to TERTIARY credential. Min_duration renamed to duration in EMPLOYMENT credential type. |\n| 18/05/2022 | \\- | CREATE Application: removed suggestions field. Applicant suggestions are now managed via a dedicated endpoint to make it easier for adding and updating suggestions to new and existing applications.  <br>  <br>added new endpoints: CREATE/UPDATE/GET/LIST Suggestions  <br>  <br>added new endpoints: CREATE/LIST Suggestions Comments |\n| 19/05/2022 | \\- | Appendix 2.2. Articulation arrangement status: READY status can move back to both DRAFT and ACTIVE state. INACTIVE status can no longer move back to ACTIVE status |\n| 06/06/2022 | \\- | UPDATE Applicant credential endpoint: field \"type\" is no longer editable  <br>  <br>CREATE articulation arrangement endpoint: removed \"exemption field\"  <br>  <br>UPDATE articulation arrangement endpoint: removed \"exemption field\"  <br>  <br>GET application outcome endpoint: added description for the response |\n| 09/06/2022 | \\- | Update _Appendix 3. Credential data structure:_ Credential field names are required to be in camelCase instead of snake_case. |\n| 08/08/2022 | 0.01 | Update _Appendix 3. Credential data structure  <br>\\-_ SUBJECT. TERTIARY and PROFESSIONAL credentials: \"institutionName\" and \"name\" fields now are optional  <br>\\- EMPLOYMENT credentials: \"name\" and \"duration\" fields are optional  <br>  <br>API version number is now included in the response body |\n| 31/08/2022 | 1.0.0 | CREATE Applicant credential endpoint: the parent field can only be set in \"SUBJECT\" type credentials  <br>  <br>UPDATE Applicant credential: The parent field can now be updated \"SUBJECT\" type credentials  <br>  <br>Added CREATE-SSO User endpoint to replace  <br>the CREATE User endpoint as local account creation will be disabled in the live environment. |\n| 17/04/2025 | 4.2.1 | GET /application:  <br>Now includes comments associated with applications and credit matches in the response.  <br>  <br>CREATE /applicant & UPDATE /applicant:  <br>Added support for the eligible_deliveries field (array of strings) to define which deliveries are visible to the applicant in the application portal.  <br>  <br>UPDATE /subject:  <br>The access attribute is now read-only and cannot be modified via this endpoint.  <br>  <br>GET Course/Program/Subject:  <br>Records can now be retrieved using the entity code, eliminating the need to first query for the Advance ID.  <br>  <br>LIST Endpoints:  <br>Details of sub-entities are now abstracted. For example, the LIST Course endpoint will not include the associated child programs and subjects. |\n| 06/05/2025 | 4.2.1 | Update Appendix 2.1 Application workflow to reflect the current workflow that is being used in Advance |\n| 18/02/2025 | 5.1.0 | 1\\. enhancements to post /applications  <br>  <br>Two new optional fields will be introduced:  <br>  <br>a) send_email (boolean, optional)  <br>  <br>When set to true, an automatic confirmation email will be triggered upon successful application creation via the api.  <br>  <br>If not provided, the default behaviour will remain unchanged (no email triggered).  <br>  <br>b) tags (array, optional)  <br>  <br>Allows tags to be assigned to an application at the time of creation.  <br>  <br>The value must be an array of valid tag identifiers.  <br>  <br>2\\. enhancement to post /applicants/credentials  <br>a) tags (array, optional)  <br>  <br>Allows tags to be assigned to credentials at the time of creation.  <br>  <br>The value must be an array of valid tag identifiers.  <br>  <br>3\\. enhancements to patch endpoints  <br>a) patch /applications  <br>  <br>Add support for updating the tags array.  <br>  <br>Allows adding, removing, or replacing tags on an existing application.  <br>  <br>b) patch /applications/credentials  <br>  <br>Add support for updating the tags array.  <br>  <br>Allows adding, removing, or replacing tags on existing credentials.  <br>  <br>4\\. new endpoint: get /tags  <br>  <br>A new endpoint will be introduced to:  <br>  <br>Retrieve the list of available tags.  <br>  <br>Enable api consumers to select valid tag values when creating or updating applications or credentials. |\n\n## **ABOUT THE API**\n\nThe Advance API is designed as a RESTful API. It requires authentication, accepts defined path parameters, provides structured responses, is capable of handling errors and utilises pagination for responses containing a large collection of records.\n\n#### **Single Item Response**\n\n| attribute | format | description |\n| --- | --- | --- |\n| environment | `string` | The environment the data is coming from. |\n| timestamp | `number` | The current timestamp of the response in Unix epoch time format. |\n| data | `array` | An `array` of records returned by the request or the records affected by the request. |\n\n###### Response\n\n``` json\n{\n    \"environment\": \"uac-dev\",\n    \"timestamp\": 1647219178500,\n    \"data\": {\n        \"id\": \"14e22504-ebbb-4592-a554-0ab4ebd7adc5\",\n        \"metadata\": {\n            \"created\": {\n                \"time\": 1646956014076,\n                \"user\": {\n                    \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n                    \"email_address\": \"system.user@x.edu.au\",\n                    \"first_name\": \"System\",\n                    \"last_name\": \"User\"\n                }\n            },\n            \"updated\": {\n                \"time\": 1646956014076,\n                \"user\": {\n                    \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n                    \"email_address\": \"system.user@x.edu.au\",\n                    \"first_name\": \"System\",\n                    \"last_name\": \"User\"\n                }\n            }\n        },\n        \"children\": [],\n        \"code\": \"SIT\",\n        \"custom_attributes\": {},\n        \"name\": \"School of I.T.\",\n        \"parent\": {\n            \"id\": \"c02e45e8-4357-4130-8a72-6c30a05d5222\"\n        },\n        \"type\": \"SCHOOL\"\n    }\n}\n\n ```\n\n#### **Collection Response**\n\n| attribute | format | description |\n| --- | --- | --- |\n| environment | `string` | The environment the data is coming from. |\n| timestamp | `number` | The current timestamp of the response in Unix epoch time format. |\n| total | `number` | The total amount of records of the entire collection. |\n| page_total | `number` | The total amount of records of this page slice of the collection. |\n| page_token | `string` | A token to be used in subsequent requests to get the next page of the collection. See pagination section for more details. |\n| data | `array` | An `array` of records returned by the request or the records affected by the request. |\n\n###### Response\n\n``` json\n{\n  \"environment\": \"uac-dev\",\n  \"timestamp\": 1629976722244,\n  \"total\": 146,\n  \"page_total\": 46,\n  \"page_token\": \"FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFEtYY3VnbnNCWFFvR2tVdWE3cTQzAAAAAAAAcboWaElLMG1BbllRa2VwZWd0RmVGRFFKUQ==\",\n  \"data\": [\n    {\n      \"id\": \"14e22504-ebbb-4592-a554-0ab4ebd7adc5\",\n      \"metadata\": {\n        \"created\": {\n          \"time\": 1646956014076,\n          \"user\": {\n            \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n            \"email_address\": \"system.user@x.edu.au\",\n            \"first_name\": \"System\",\n            \"last_name\": \"User\"\n          }\n        },\n        \"updated\": {\n          \"time\": 1646956014076,\n          \"user\": {\n            \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n            \"email_address\": \"system.user@x.edu.au\",\n            \"first_name\": \"System\",\n            \"last_name\": \"User\"\n          }\n        }\n      },\n      \"children\": [],\n      \"code\": \"TRUE\",\n      \"custom_attributes\": {},\n      \"name\": \"School of I.T.\",\n      \"parent\": {\n        \"id\": \"c02e45e8-4357-4130-8a72-6c30a05d5222\"\n      },\n      \"type\": \"SCHOOL\"\n    },\n    {\n      \"id\": \"485f5755-c6ce-4ecf-86e1-ff6398aa2fa6\",\n      \"metadata\": {\n        \"created\": {\n          \"time\": 1646955966863,\n          \"user\": {\n            \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n            \"email_address\": \"system.user@x.edu.au\",\n            \"first_name\": \"System\",\n            \"last_name\": \"User\"\n          }\n        },\n        \"updated\": {\n          \"time\": 1646955966863,\n          \"user\": {\n            \"id\": \"736820b7-b766-4212-99f9-0b372578c74f\",\n            \"email_address\": \"system.user@x.edu.au\",\n            \"first_name\": \"System\",\n            \"last_name\": \"User\"\n          }\n        }\n      },\n      \"children\": [],\n      \"code\": \"true\",\n      \"custom_attributes\": {},\n      \"name\": \"School of I.T.\",\n      \"parent\": {\n        \"id\": \"c02e45e8-4357-4130-8a72-6c30a05d5222\"\n      },\n      \"type\": \"SCHOOL\"\n    }\n  ]\n}\n\n ```\n\n### **Error Handling**\n\nAdvance responds to failed requests with the following error HTTP codes. Codes in the 400 range indicate an error from the user's request and codes in the 500 range indicate an issue with the server.\n\n| code | description |\n| --- | --- |\n| 400 Bad Request | The request parameters were not valid. |\n| 401 Unauthorized | The authorization token for the request was not valid or expired. |\n| 403 Forbidden | The user does not have access to the resource requested. |\n| 404 Not Found | The resource does not exist. |\n| 409 Conflict | The incoming parameters are conflicting with an existing resource. |\n| 500 Internal Server Error | There is a problem on the server. |\n| 503 Service Unavailable | The server is unavailable to respond in a timely manner. |\n\nExample response:\n\n``` json\n{\n  \"environment\": \"uac-dev\",\n  \"timestamp\": 1647219674336,\n  \"message\": \"ValidationError: Code is already in use by Subject 3261c118-8736-428e-8d3f-c89b757423e5 (Big Data Management)\"\n}\n\n ```\n\n### **Pagination**\n\nFor responses that contain a collection of records, a maximum of 100 records will be returned for any given request. To page through results, a page token will be given on the first request. The same page token will need to used as a query parameter on subsequent requests to page through results.\n\nIf there were body parameters supplied in the initial request (i.e. filter and sort query parameters), the same body parameters do not need to be supplied in subsequent request as the page token saves the initial body parameters.\n\nNote: The page token's validity is 1 minute between requests. You do not necessarily need to page through all the results within 1 minute, you simply need to make sure each page request is made within 1 minute of each-other.\n\n###### Request\n\n``` json\nGET\n/subjects\n\n ```\n\n###### Response\n\n``` json\n{\n  \"timestamp\": 1629977256682,\n  \"total\": 146,\n  \"page_total\": 100,\n  \"page_token\": \"FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFEtuYzNnbnNCWFFvR2tVdWFJcTdmAAAAAAAAcbsWaElLMG1BbllRa2VwZWd0RmVGRFFKUQ==\",\n  \"data\": [...100 subjects]\n}\n\n ```\n\n###### Subsequent Request\n\n``` json\nGET\n/subjects?page_token=FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFEtuYzNnbnNCWFFvR2tVdWFJcTdmAAAAAAAAcbsWaElLMG1BbllRa2VwZWd0RmVGRFFKUQ==\n\n ```\n\n###### Subsequent Response\n\n``` json\n{\n  \"timestamp\": 1629977259421,\n  \"total\": 146,\n  \"page_total\": 46,\n  \"page_token\": \"FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFEtuYzNnbnNCWFFvR2tVdWFJcTdmAAAAAAAAcbsWaElLMG1BbllRa2VwZWd0RmVGRFFKUQ==\",\n  \"data\": [...46 subjects]\n}\n\n ```\n\n## **ABOUT THIS DOCUMENTATION**\n\nThe Advance API Guide provides descriptions, URLs, methods, path parameters and example responses for each resource request supported by the Advance API. Requests are grouped by entity. Each entity has been logically classified as either a curriculum data resource or application data resource. Standard attributes of each entity are described. In addition to their standard attributes, entities have 'data' and 'metadata' attributes:\n\n### **Custom Attributes**\n\nAdditional attributes for entities can be provided in custom fields. These attributes will be displayed in the Advance UI beneath standard attributes. You should provide a label and value for the attribute.\n\n``` json\n{\n  \"custom_attributes\": {\n    \"label_1\": \"value 1\",\n    \"label_2\": \"value 2\",\n    \"label_3\": \"value 3\"\n  }\n}\n\n ```\n\n#### **Metadata**\n\n| attribute | format | description |\n| --- | --- | --- |\n| created.time | `number` | Date the object was created in milliseconds unix epoch format. |\n| created.user.id | `string` | User ID of the object's creator. |\n| created.user.email_address | `string` | Email address of the object's creator. |\n| created.user.first_name | `string` | First name of the object's creator. |\n| created.user.last_name | `string` | Last name of the object's creator. |\n| updated.time | `number` | Date the object was updated in milliseconds unix epoch format. |\n| updated.user.id | `string` | User ID of the object's updater. |\n| updated.user.email_address | `string` | Email address of the object's updater. |\n| updated.user.first_name | `string` | First name of the object's updater. |\n| updated.user.last_name | `string` | Last name of the object's updater. |\n\nThe Advance API Guide does not currently provide:\n\n- Resource request details for history (auditing of applications), comments, user or message entities\n    \n- Data schemas for professional, occupational or life experience credentials\n    \n- Details for the Advance messaging service, which publishes notifications (relating to changes in application workflow state) to which institution systems can subscribe and utilise as integration triggers","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"17835200","collectionId":"8953d266-620b-4706-a59e-ec96c38719e7","publishedId":"UVsJwSVT","public":true,"publicUrl":"https://docs.advance-uac.com","privateUrl":"https://go.postman.co/documentation/17835200-8953d266-620b-4706-a59e-ec96c38719e7","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"1968b1"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.0","publishDate":"2022-08-16T06:16:54.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/741ee45c885683cc4634dbc10a9ff599ff2f95690e659996813c692c3e4f0484","favicon":"https://advance-uac.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://docs.advance-uac.com/view/metadata/UVsJwSVT"}