Single Sign-On API coding - Python Django Rest
- or -
Post a project like this£25/hr(approx. $31/hr)
- Posted:
- Proposals: 20
- Remote
- #4169896
- Expired
⭐ TOP RATED ⭐ Graphic Designer| WordPress / WIX |2D Animator| Video Editing |Photoshop Expert
Karachi
Software Developer|Website|Mobile App-Android,iOS,Hybrid|E-commerce|WordPress|PLC|HMI|AI Solutions|UI/UX
Munich
#Web Design #Web Development #Mobile Application Design #Mobile Application Development #UI Design #UX Design #Graphic Design
Ahmedabad
Designer and Developer|WordPress|Shopify|PSD|PHP HTML, JavaScript|WIX| PowerPoint/Keynote| Logo Designing
Berlin
www.moweb.com | 500+ Mobile Apps, Websites, Ecommerce, ERP/CRM, MERN, Python, ReactJS, NodeJS
Ahmedabad
330617411137928110114571074983010575776102783219603337826248460310203811478126253114743
Description
Experience Level: Expert
I'm looking for a freelance dev to help with some work on single sign-on APIs in Django Rest. The partner we want to integrate with is an aggregator of edtech solutions selling to schools. They want to present our online learning platform (https://www.persona-life.com/persona-life-skills/) to their customers in a window inside their own platform. Instructions from our partner [PARTNER] pasted below. Note, we will need the optional "Classroom Learning Functionality" mentioned at the end. I can share the PDF doc and put you in touch with our partner directly, when we start working together.
Let me know if you could help and if so, estimated time and hourly rate. Thanks in advance.
Pete Read
Single Sign-On (SSO) Integration with [PARTNER] Application - Technical Documentation for Learning Partners
1. Introduction
This technical documentation provides detailed steps for learning partners to integrate their applications with the [PARTNER] platform using Single Sign-On (SSO) with encryption through a secret key. By following this integration process, users will log in to the [PARTNER] platform and access your application seamlessly through SSO authentication using the encrypted key.
2. [PARTNER] Platform Integration Overview
Step 1: Apis to get verification of user at [PARTNER] platform ● EndPoint:
https://stage-partner.[PARTNER].com/api2/user/login
http://method:post
Request params
{
email:”example@gmail.com”
password:”123456”
}
Note: We will provide the email Id and password for login, once the partner registration is completed from [PARTNER] end.
● Purpose:
This api will check the existence of a partner in [PARTNER] db and return a token. Pass this token inside the headers of the api which is mentioned in the next step , with the key named as “Authorization” then the 2nd api will return you the user list.
Step 2: Retrieve Users of Course
● Method : get
The SSO flow for the integration involves the following steps:
● API Endpoint: https://stage-partner.[PARTNER].com/api2/partner/get-all-users-of-partners?cou rseId=641ab8f183aaf4403ea7dd8bNote: Here CourseId will be provided by the [PARTNER] team after the course creation is completed from [PARTNER].
● Purpose:
This API retrieves users who have purchased the specified course on [PARTNER]. It includes information about schools, teachers, and students. These users must also be registered on the partner's platform.
Step 3: Webhook Registration
To initiate the SSO integration process, the learning partner needs to follow these steps:
● Webhook Endpoint:
● Method: POST
https://stage-partner.[PARTNER].com/api2/partner/user-register/:email/:courseId ?isRegistered=false
Example: https://stage-partner.[PARTNER].com/api2/partner/user-register/example@gm http://ail.com/641ab8f183aaf4403ea7dd8b?isRegistered=false
● Purpose:
Partners need to register users from their end using this webhook. For each user registration, pass the user's email, and set the isRegistered query parameter to true. By default, the value is false until explicitly set to true. When a user is registered and the webhook is triggered, it automatically removes the user from the list obtained in Step 1.
Note : please make sure the user email you are passing in params is correct and belongs to the user that you have registered.
and make isRegistered query params to be true once you registered the user. After that only the user will be remove from the user list you are getting from above apis
Step 4: Play Course API
● API Endpoint:
Provided by the partners
● Request: Method: POST Body: {
"email": "user@example.com",
“role”: “student” }
● Response: {
"url": "https://partner-platform.com/token=TOKEN_ID"; }
● Purpose:
Partners provide an API for playing courses. When called with a user's email, it checks if the user is registered. If registered, it returns a URL directly linking to the platform instead of the login page. This ensures a seamless course access experience for the user.
Additional Steps:
● Get User Progress details:
We will require Api to get each user course progress details if the users make any progress in the course. After registration at [PARTNER] platform and at partner platform we both have one unique field which is “email”, so the api which is created by a partner to get the user course progress at [PARTNER] platform can take email in request params.
● Requests: Method: GET
"url": "https://partner-platform.com/:email";
If you need any more details to get user details we can send those details from [PARTNER] platform to partner platform using query params only but the base url we won’t be able to change.
Example:
"url": "https://partner-platform.com/:email?value1 =&value2="
● Classroom Learning Functionality:
This feature is applicable if the course is integrated for teachers and students and teacher adds student in class/group. In this Case we will require the parameters to be passed in query params.
Let me know if you could help and if so, estimated time and hourly rate. Thanks in advance.
Pete Read
Single Sign-On (SSO) Integration with [PARTNER] Application - Technical Documentation for Learning Partners
1. Introduction
This technical documentation provides detailed steps for learning partners to integrate their applications with the [PARTNER] platform using Single Sign-On (SSO) with encryption through a secret key. By following this integration process, users will log in to the [PARTNER] platform and access your application seamlessly through SSO authentication using the encrypted key.
2. [PARTNER] Platform Integration Overview
Step 1: Apis to get verification of user at [PARTNER] platform ● EndPoint:
https://stage-partner.[PARTNER].com/api2/user/login
http://method:post
Request params
{
email:”example@gmail.com”
password:”123456”
}
Note: We will provide the email Id and password for login, once the partner registration is completed from [PARTNER] end.
● Purpose:
This api will check the existence of a partner in [PARTNER] db and return a token. Pass this token inside the headers of the api which is mentioned in the next step , with the key named as “Authorization” then the 2nd api will return you the user list.
Step 2: Retrieve Users of Course
● Method : get
The SSO flow for the integration involves the following steps:
● API Endpoint: https://stage-partner.[PARTNER].com/api2/partner/get-all-users-of-partners?cou rseId=641ab8f183aaf4403ea7dd8bNote: Here CourseId will be provided by the [PARTNER] team after the course creation is completed from [PARTNER].
● Purpose:
This API retrieves users who have purchased the specified course on [PARTNER]. It includes information about schools, teachers, and students. These users must also be registered on the partner's platform.
Step 3: Webhook Registration
To initiate the SSO integration process, the learning partner needs to follow these steps:
● Webhook Endpoint:
● Method: POST
https://stage-partner.[PARTNER].com/api2/partner/user-register/:email/:courseId ?isRegistered=false
Example: https://stage-partner.[PARTNER].com/api2/partner/user-register/example@gm http://ail.com/641ab8f183aaf4403ea7dd8b?isRegistered=false
● Purpose:
Partners need to register users from their end using this webhook. For each user registration, pass the user's email, and set the isRegistered query parameter to true. By default, the value is false until explicitly set to true. When a user is registered and the webhook is triggered, it automatically removes the user from the list obtained in Step 1.
Note : please make sure the user email you are passing in params is correct and belongs to the user that you have registered.
and make isRegistered query params to be true once you registered the user. After that only the user will be remove from the user list you are getting from above apis
Step 4: Play Course API
● API Endpoint:
Provided by the partners
● Request: Method: POST Body: {
"email": "user@example.com",
“role”: “student” }
● Response: {
"url": "https://partner-platform.com/token=TOKEN_ID"; }
● Purpose:
Partners provide an API for playing courses. When called with a user's email, it checks if the user is registered. If registered, it returns a URL directly linking to the platform instead of the login page. This ensures a seamless course access experience for the user.
Additional Steps:
● Get User Progress details:
We will require Api to get each user course progress details if the users make any progress in the course. After registration at [PARTNER] platform and at partner platform we both have one unique field which is “email”, so the api which is created by a partner to get the user course progress at [PARTNER] platform can take email in request params.
● Requests: Method: GET
"url": "https://partner-platform.com/:email";
If you need any more details to get user details we can send those details from [PARTNER] platform to partner platform using query params only but the base url we won’t be able to change.
Example:
"url": "https://partner-platform.com/:email?value1 =&value2="
● Classroom Learning Functionality:
This feature is applicable if the course is integrated for teachers and students and teacher adds student in class/group. In this Case we will require the parameters to be passed in query params.
Pete R.
0% (0)Projects Completed
-
Freelancers worked with
-
Projects awarded
0%
Last project
27 Apr 2024
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies