SDK Provisioning Integration
Provisioning Integration
Limitations
SIMS ID does not provide all the data that exists within SIMS and it is not a replacement for the rich data available through the SIMS Partner programme’s APIs; SIMS ID can pass lightweight data suitable for user provisioning and group association; this data can also be passed securely using a range of protocols.
Approaches to Provisioning
SIMS ID has a provisioning API that exposes a subset of data; Access to this API is restricted to secure access using the SIMS ID STS.
The SIMS ID Provisioning API is defined by Swagger.
Swagger is a tool used to provide a list of SIMS ID APIs. This forms the API documentation and will be available on a public URL.
The following data (subject to the agreement of the data controller) will be available for sites that are aligned with your product.
User information
Name
Groups/class/house/year
Age range eg <13 / >16
Unique ID
Site information
Name
DFE
Unique ID
API endpoint
During SeptemberQ4 2017 a Swagger documented API will be available on the SIMS ID Partner Development Platform for Provisioning Integrators to develop against. A corresponding endpoint will be made available to Partners in the live environment.
Sample YAML
Sample YAML for the endpoint is as follows - inclusion here does not infer all data elements will be present.
Schools as the data controllers will need to give consent to transfer data to provisioning partnerspartners.
swagger: '2.0' info: description: This is a sample API definition for SIMS ID Resource and Provisioning API. version: 1.0.0 title: SIMS ID Resource and Provisioning API termsOfService: 'https://id.sims.co.uk/support/wiki/23/sdk-integrating-with-sims-id' contact: email: simsidteam@capita.co.uk license: name: SIMS ID Partner Licence host: *TO_BE_CONFIRMED basePath: /v1 tags: - name: School description: School domain information externalDocs: description: Find out more url: 'http://swagger.io' schemes: - https paths: '/organisation/{organisationId}': get: summary: Gets the organisation information operationId: getOrganisationInfo tags: - School parameters: - name: organisationId in: path type: string required: true description: 'The unique Organisation identifier, is a GUID' responses: '200': description: OK schema: $ref: '#/definitions/Organisation' '401': $ref: '#/responses/Unauthorized' '403': $ref: '#/responses/Forbidden' '404': $ref: '#/responses/NotFound' '/organisation/{organisationId}/staff': get: summary: Gets the organisation staff information operationId: getOrganisationStaffInfo tags: - School parameters: - name: organisationId in: path type: string required: true description: 'The unique Organisation identifier, is a GUID' responses: '200': description: OK schema: $ref: '#/definitions/Staff' '401': $ref: '#/responses/Unauthorized' '403': $ref: '#/responses/Forbidden' '404': $ref: '#/responses/NotFound' '/organisation/{organisationId}/students': get: summary: Gets the organisation student information operationId: getOrganisationStudentInfo tags: - School parameters: - name: organisationId in: path type: string required: true description: 'The unique Organisation identifier, is a GUID' responses: '200': description: OK schema: $ref: '#/definitions/Students' '401': $ref: '#/responses/Unauthorized' '403': $ref: '#/responses/Forbidden' '404': $ref: '#/responses/NotFound' responses: NotFound: description: The specified resource was not found schema: $ref: '#/definitions/Error' Unauthorized: description: Unauthorized schema: $ref: '#/definitions/Error' Forbidden: description: Forbidden schema: $ref: '#/definitions/Error' definitions: Organisation: type: object properties: name: type: string organisationId: type: string dfeCode: type: string description: The DfE Code deniNumber: type: string required: - organisationId Staff: type: array items: $ref: '#/definitions/StaffMember' Students: type: array items: $ref: '#/definitions/StudentMember' StaffMember: type: object properties: id: type: string title: type: string firstName: type: string lastName: type: string emailAddress: type: string required: - id - firstName - lastName StudentMember: type: object properties: id: type: string firstName: type: string middleName: type: string lastName: type: string emailAddress: type: string dateOfBirth: type: string gender: type: string pupilPremiumStatus: type: boolean yearGroup: $ref: '#/definitions/Group' registrationGroup: $ref: '#/definitions/Group' required: - id - firstName - lastName Group: type: object properties: id: type: string name: type: string groupType: type: string Error: type: object properties: code: type: string message: type: string required: - code - message
SDK Main Page | Authentication & SSO | Provisioning Integration | SIMS ID a stable integration platform