Software Update: Wednesday 9th October 2024 7am to 7:30am

On Wednesday, we're updating OneFile Eportfolio, to introduce a new enhancement.  

Please ensure all data is saved and your Eportfolio account is logged out before 7am to avoid any data loss.

Release notes can be found here.


Help centre

Submit a ticket Log in

Initial data download using API

This series of guides, will provide information on how to build a data integration with a 3rd party system, using the OneFile API:

  1. Initial data download using API
  2. Creating and managing users via the API
  3. Assigning users to learners via the API
  4. Assigning Framework Templates, Standards and Units via the API


When developing an integration with the OneFile API, once authenticated via the API, you may want to download the existing data from OneFile.

To do this, follow the guidance below:

Get CustomerID

GET https://wsapibeta.onefile.co.uk/api/v2.1/Customer
Response:
{
"ID": 2070,
"Name": "Example Beta Customer"
}

Get Organisations linked to the Customer

POST https://wsapibeta.onefile.co.uk/api/v2.1/Organisation/search

Body:
{
"CustomerID": 2070
}
Response:
[
{
"ID": 5740,
"Name": "Example Organisation - Business",
"KeychainCreationForNewUserActive": false,
"KeychainEmailSuppression": false
},
{
"ID": 5741,
"Name": "Example Organisation - Care",
"KeychainCreationForNewUserActive": false,
"KeychainEmailSuppression": false
}
]

Multiple Organisations

Most customers will only have one organisation linked to their customer record. However, some may have multiple centres, where they require complete separation of data and access.

Get Assessors in an Organisation

POST https://wsapibeta.onefile.co.uk/api/v2.1/User/Search/1/10

Body:
{
"OrganisationID": 5740
"Role": 5,
}
Response:
[
{
"ID": 122762,
"FirstName": "James",
"LastName": "Fayre"
"MISID": "JFAYE51P"
},
{
"ID": 132757,
"FirstName": "Kate",
"LastName": "Anderson"
"MISID": "KANDREWS142"
}
]

Get Classes in an Organisation

POST https://wsapibeta.onefile.co.uk/api/v2.1/Classroom/Search

Body:
{
"OrganisationID": 5740
}
Response:
[
{
"ID": 15379,
"Name": "Business Admin L2",
"MISID": "BAD1"
},
{
"ID": 15381,
"Name": "Business Admin L3",
"MISID": "BAD2"
},
]

Get Placements in an Organisation

POST https://wsapibeta.onefile.co.uk/api/v2.1/Placement/Search

Body:
{
"OrganisationID": 5740
}
Response:
[
{
"ID": 18928,
"Name": "BT - Manchester"
"MISID": "BT54810A"
},
{
"ID": 18929,
"Name": "Vodaphone - Salford",
"MISID": "VP0491045X"
}
]

Get Learners in an Organisation

POST https://wsapibeta.onefile.co.uk/api/v2.1/User/Search

Body:
{
"OrganisationID": 5740
"Role": 1
}
Response:
[
{
"ID": 137945,
"FirstName": "Gemma"
"LastName": "Hall"
"MISID": "GHALL391"
},
{
"ID": 137946,
"FirstName": "Chloe"
"LastName": "Henshall"
"MISID": "CHENSHALL194"
},
]

When you have this base data, you can use this to identify existing records that exist in both systems. It may be beneficial to used the paged searches to get additional information, for example, with the paged user search, this will return the ULN, NINO, email and other fields, if they contain data in OneFile for each learner. For these records, it may be worth adding or updating the MISIDs, so they match the IDs in the other system, by calling the "Update" endpoints

Next Guide - Creating/Managing Users

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.