/
Single Sourcing - Contribution reusability

Single Sourcing - Contribution reusability

This wiki explains how we can leverage Open-saber APIs for contribution reuse in single sourcing.

Program_Collection_Map Schema:

Columns

DataType

Values

programId

varchar

 

collectionId

varchar

 

collectionInfo

json

name, board, gradeLevel, medium, subject, chapterCount

primaryCategory

varchar

 

hierarchyInfo

array

 

status

enum

Active, inActive

osCreatedAt

varchar

 

createdBy

time without time zone

 

osUpdatedAt

varchar

 

updatedBy

time without time zone

 

Contribution_Info Schema:

Columns

DataType

Values

ContributionId

varchar

 

programId

varchar

 

contentId

varchar

 

collectionId

varchar

 

unitId

varchar

 

hierarchyInfo

array

 

status

enum

Draft, Submitted, Approved, Rejected, RequestChanges

publishComment

text

 

rejectComment

text

 

requestChanges

text

 

createdBy

varchar

 

osCreatedAt

time without time zone

 

updatedOn

varchar

 

osUpdatedAt

time without time zone

 

Review_Info Schema:

Columns

DataType

Values

id

varchar

 

ContributionId

varchar

foreign key

userId

varchar

 

userName

varchar

 

organizationId

varchar

 

organizationName

varchar

 

status

enum

Pending, Accepted, NotAccepted, SentForCorrections

publishComment

text

 

rejectComment

text

 

requestChanges

text

 

createdBy

varchar

 

osCreatedAt

time without time zone

 

updatedOn

varchar

 

osUpdatedAt

time without time zone

 

 

API Spec:

 

Create program_collection mapping entry:

Method: POST

Path: https://dock.sunbirded.org/api/program/v1/collection/create

Request Header: Authorization: <api-key>

Request Payload:

{ "id": "open-saber.registry.create", "ver": "1.0", "ets": "11234", "params": { "did": "", "key": "", "msgid": "" }, "request": { "Program_Collection_Map": { "program_id": "9ee6e230-49bd-11eb-aae1-fb99d9fb6737", "collection_id": "do_123456", "collection_info": { "name": "English - I", "board": "CBSE", "gradeLvel": [ "Class 1" ], "subject": [ "English" ], "medium": [ "English" ], "chapterCount": 4 }, "primary_category": "Digital Textbook", "hierarchy_info": [ "do_11316452299618713611218", "do_11316452299638374411248", "do_11316452299614617611212", "do_11316452299605606411198" ], "status": "Active", "createdBy": "1d866fdf-a664-48c1-9fa8-1222c1cb47ad" } } }

Response:

{ "id": "open-saber.registry.create", "ver": "1.0", "ets": 1612197779279, "params": { "resmsgid": "", "msgid": "606a7c96-1343-4e1c-9a61-f9cde6e676d8", "err": "", "status": "SUCCESSFUL", "errmsg": "" }, "responseCode": "OK" }

 

Update program_collection mapping :

Method: POST

Path: https://dock.sunbirded.org/api/program/v1/collection/update

Request Header: Authorization: <api-key>

Request Payload:

{ "id": "open-saber.registry.update", "ver": "1.0", "ets": "11234", "params": { "did": "", "key": "", "msgid": "" }, "request": { "Program_Collection_Map": { "program_id": "9ee6e230-49bd-11eb-aae1-fb99d9fb6737", "collection_id": "do_123456", "collection_info": { "name": "English - I", "board": "CBSE", "gradeLvel": [ "Class 1" ], "subject": [ "English" ], "medium": [ "English" ], "chapterCount": 5 }, "hierarchy_info": [ "do_11316452299618713611218", "do_11316452299638374411248", "do_11316452299614617611212", "do_11316452299605606411198", "do_11316452299605606411211" ], "updatedBy": "1d866fdf-a664-48c1-9fa8-1222c1cb47ad" } } }

Response:

Read program_collection mapping:

Method: POST

Path: https://dock.sunbirded.org/api/program/v1/collection/read

Request Header: Authorization: <api-key>

Request Payload:

Response:

Search program_collection mapping:

Method: POST

Path: https://dock.sunbirded.org/api/program/v1/collection/search

Request Header: Authorization: <api-key>

Request Payload:

Response:

 

Create contribution entry:

Method: POST
Path: https://dock.sunbirded.org/api/program/v1/contribution/create

Request Payload:

 

Request Header:
Authorization: <api-key>

Response:

Update contribution entry:

Method: POST
Path: https://dock.sunbirded.org/api/program/v1/contribution/update

Request Payload:

Request Header:
Authorization: <api-key>

Response:

Read contribution:

Method: POST
Path: https://dock.sunbirded.org/api/program/v1/contribution/read/:contributionId

Request Payload:

Request Header:
Authorization: <api-key>

Response:

Lsi of contributions:

Method: POST
Path: https://dock.sunbirded.org/api/program/v1/contribution/list

Request Payload:

 

Request Header:
Authorization: <api-key>

Response:

 

Related content

How to configure forms in primaryCategory
How to configure forms in primaryCategory
Read with this
Program-service: wrapper API for open-saber to reduce API calls
Program-service: wrapper API for open-saber to reduce API calls
More like this
Single Sourcing: Question Set Editor Integration
Single Sourcing: Question Set Editor Integration
Read with this
Program Design Documentation
Program Design Documentation
More like this
Design: Consumption and Sourcing Repos
Design: Consumption and Sourcing Repos
More like this
[Design] - Viewer Service
[Design] - Viewer Service
More like this