HUB App Launcher

App Launcher

The App Launcher is an Api of the HUB.Educational that uses the LTI protocol (Learning Tool Interoperability) created by the organization IMS Global Learning Consortium, includes a standard protocol to establish a relationship of trust between the tool provider and the Learning Management System.

Request Signature

Call to sign return a signed LTI package

POST https://apihub.educacional.com/hub/qa/v1/external/lti/signature

Headers:

{
  "X-Api-Key": "",
  "Hub-App-Id": "",
  "Hub-User-Code": "",
  "Custom-Activity-Id": "",
  "launch_method": null, // Optional - Get or Post example
  "redirect_uri": null, // Optional
}
  • X-Api-Key: Unique identifier provided by the HUB.Educational team used to authenticate the api call.

  • Custom-Activity-Id: Identifier of the page where the activities are to be performed by the user.

  • Hub-User-Code: Unique user identifier in the HUB.Educational

  • Hub_App_id: unique identifier of the App provided by the HUB.Educational team, this identifier must be linked to the task of the track.

  • lanch_method: is the method of the form used GET or POST, if informed it overwrites the original.

  • redirect_uri: is the application uri (Action do Formulario), if informed it overwrites the original.

Request example:

Example below is returning an LTI package validation.

  • Code 200
  • Status OK
{
  "data": {
    "action": "https:/apihub.educacional.com/qa/v1/validate",
    "method": "POST",
    "params": {
      "lti_message_type": "basic-lti-launch-request",
      "lti_version": "LTI-1p0",
      "resource_link_id": "LTI-usage",
      "user_id": "F8FFC022-2D25-11EB-BDBD-0A190BAE2C86",
      "custom_product": "app name",
      "lis_person_name_given": "GABRIEL",
      "lis_person_contact_email_primary": "[email protected]",
      "lis_person_name_family": "CESÁRIO",
      "roles": "aluno",
      "custom_school_user_id": "20180131",
      "custom_school_hub_id": "89cd3b7b-7e2e-4309-b192-41a807bb6b0d",
      "app_id": "4BDA0C2F-452A-11EB-BDBD-0A190BAE2C86",
      "custom_activity_id": null,
      "oauth_nonce": 1613756961,
      "oauth_timestamp": 1613756961,
      "oauth_body_hash": "2jmj7l5rSw0yVb/vlWAYkK/YBwk=",
      "oauth_consumer_key": "hub.educacional.com",
      "oauth_token": "",
      "oauth_signature_method": "HMAC-SHA1",
      "oauth_signature": "z+fENfdD6fEj0/yR9fcKBJANWVc="
    }
  }
}
  • user_id : Unique user ID in the HUB.Educational

  • custom_activity_id : Activity ID in which the app can be opened

  • custom_school_user_id : User code sent by the school

  • Code 403:

    • Error validating the LTI package
  • Code 422:

    • Unsigned LTI package
  • Code 401:

    • Unauthorized.
  • Code 422:

    • Application does not exist
    • HUB.Educational user does not exist
    • Institution does not exist
    • Error signing LTI package

Request

POST https://apihub.educacional.com/hub/qa/v1/external/lti/validate

With the result of the response from the endpont "https://apihub.educacional.com/hub/qa/v1/external/lti/signature" The data must be sent in the format below.

  Content-Type    multipart/form-data