🤝
Sunbird coKreat
release-6.0.0
release-6.0.0
  • Learn
    • Overview
    • Capabilities
      • Asset Sourcing
      • Rich & Diverse Assets
      • Organised Collections
      • Asset Lifecycle Management
      • Question Bank
      • Observability
      • Product & Developer Guide
        • Asset Sourcing
          • Different types of Sourcing
          • Creation of Sourcing Projects
          • Managing Sourcing Projects
          • Contribution Process
            • How to Enroll?
            • How to Nominate?
            • How to Contribute?
              • Asset Contribution Lifecycle
          • Workspace
          • Contribution Service
          • Contribution Registry
        • Rich & Diverse Assets
        • Organised Collections
        • Asset Lifecycle Management
        • Question Bank
        • Observability
    • Technical Architecture
    • Product Roadmap
      • Release Calendar
  • USE
    • Getting Started
      • Deployment
        • Deployment Diagram
      • System requirements
      • Install
    • Developer Guide
      • Reference coKreat Web APP
        • Architecture Component Diagram
        • Install Locally
          • Installation guide
            • Windows Installation
            • Ubuntu or Mac Installation
        • Configuration
        • Component Diagrams
      • Contribution Service
        • Architecture
        • Install Locally
        • Configuration
        • APIs
        • Data Models
          • Postgres
          • Redis
      • Contribution Registry
        • Install locally
      • Flink Jobs
    • Release Notes
    • Learn More
      • Dependencies
  • ENGAGE
    • Discuss
    • Issue tracker/Create Issue
    • Contribute To coKreat
  • Archived
    • Components
      • Terminology
      • Configuration of Editors
Powered by GitBook
On this page
  • System Context architecture
  • Flow Diagram
Edit on GitHub
  1. USE
  2. Developer Guide
  3. Contribution Service

Architecture

PreviousContribution ServiceNextInstall Locally

Last updated 1 year ago

System Context architecture

Flow Diagram

Contribution (Program) service, offers the APIs for creating and managing projects, their nominations, setting and reading user preferences, reading the configuration, getting the list of tenants and projects reports, etc. It stores information about the sourcing projects, their nominations, and configuration.

Routes It handles all the API routes triggering from portal with end point program/*

Request Middleware

Request middleware provide methods to validate the tokens passed through API headers, create and validate request body, create response object etc.

Then if required forwards the request to service file who performs the CRUD operations on underlying tables and send back response.

For some API calls, request middleware if required gets details from other BB services, and send Response back to coKreat Portal

Telemetry

Telemetry service from Sunbird Util services is used to generate telemetry logs.

Services From Other BBs

Contribution (Program) service is integrated with services from different BBs.

APIs which handles User Org data, utilised User org services to fecth user and org details. Organisation details are read using Org read API from UserOrg whereas User details are read using user Read or serch API.

Notification service is used to send out the email and sms notifications to the users. Content service is used to get the content or collection details, collection hierarchy, search the contents and collections with specific request.

Open Saber service is used to get the user, org, user_org details from the registry.

Datastore

Postgres is primary datastore for Programs, nominations, forms. Redis is used for caching the user preferences.

Kafka

Kafka events are generated for the question bulk creation APIs