Not logged in - Login
< back

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