{"id":23703362,"url":"https://github.com/scholarx-assesment/api-gateway","last_synced_at":"2026-05-10T03:13:38.839Z","repository":{"id":268680482,"uuid":"903222863","full_name":"scholarX-Assesment/api-gateway","owner":"scholarX-Assesment","description":"API gateway to manage the inter service communication","archived":false,"fork":false,"pushed_at":"2024-12-18T08:56:51.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-22T23:11:30.442Z","etag":null,"topics":["api-gateway","docker","fastapi","microservices-architecture","swagger"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scholarX-Assesment.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-14T03:18:48.000Z","updated_at":"2024-12-18T08:56:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"dbf4bee0-0b4d-443d-aa23-60cc884fdf4d","html_url":"https://github.com/scholarX-Assesment/api-gateway","commit_stats":null,"previous_names":["scholarx-assesment/api-gateway"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/scholarX-Assesment/api-gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scholarX-Assesment%2Fapi-gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scholarX-Assesment%2Fapi-gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scholarX-Assesment%2Fapi-gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scholarX-Assesment%2Fapi-gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scholarX-Assesment","download_url":"https://codeload.github.com/scholarX-Assesment/api-gateway/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scholarX-Assesment%2Fapi-gateway/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261205690,"owners_count":23124813,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-gateway","docker","fastapi","microservices-architecture","swagger"],"created_at":"2024-12-30T13:01:32.409Z","updated_at":"2026-05-10T03:13:38.793Z","avatar_url":"https://github.com/scholarX-Assesment.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# API Gateway\n\nThis API Gateway routes requests to the appropriate microservices: Student Service, Class Schedule Service, and Notification Service.\n\n## Microservices\n\n- **Student Service**: Runs on port `5001`\n- **Class Schedule Service**: Runs on port `5002`\n- **Notification Service**: Runs on port `5003`\n\n## Endpoints\n\n### Students\n\n- **Create Student**\n  - **POST** `/students/`\n  - Request Body:\n    ```json\n    {\n      \"name\": \"string\",\n      \"email\": \"string\",\n      \"address\": \"string\",\n      \"contactNo\": \"string\",\n      \"cgpa\": 0\n    }\n    ```\n\n- **Get Student by ID**\n  - **GET** `/students/{student_id}`\n\n- **Get All Students**\n  - **GET** `/students/`\n\n- **Delete Student**\n  - **DELETE** `/students/{student_id}`\n\n### Class Schedules\n\n- **Create Class Schedule**\n  - **POST** `/class_schedules/`\n  - Request Body:\n    ```json\n    {\n      \"teacher_id\": \"int\",\n      \"student_id\": \"int\",\n      \"time_slot\": \"string\",\n      \"schedule_name\": \"string\"\n    }\n    ```\n\n- **Get Class Schedule by ID**\n  - **GET** `/class_schedules/{schedule_id}`\n\n- **Get All Class Schedules**\n  - **GET** `/class_schedules/`\n\n### Teachers\n\n- **Create Teacher**\n  - **POST** `/teachers/`\n  - Request Body:\n    ```json\n    {\n      \"name\": \"string\",\n      \"email\": \"string\",\n      \"address\": \"string\",\n      \"contactNo\": \"string\"\n    }\n    ```\n\n- **Get Teacher by ID**\n  - **GET** `/teachers/{teacher_id}`\n\n- **Get All Teachers**\n  - **GET** `/teachers/`\n\n- **Update Teacher**\n  - **PUT** `/teachers/{teacher_id}`\n  - Request Body:\n    ```json\n    {\n      \"name\": \"string\",\n      \"email\": \"string\",\n      \"address\": \"string\",\n      \"contactNo\": \"string\"\n    }\n    ```\n\n- **Delete Teacher**\n  - **DELETE** `/teachers/{teacher_id}`\n\n## Notification\n\n- **Send Email**\n  - **POST** `/send-email/`\n  - Request Body:\n    ```json\n    {\n      \"recipient\": \"string\",\n      \"content\": \"string\"\n    }\n    ```\n\n## Running the API Gateway\n\n1. Install dependencies:\n   ```sh\n   pip install -r requirements.txt","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscholarx-assesment%2Fapi-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscholarx-assesment%2Fapi-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscholarx-assesment%2Fapi-gateway/lists"}