{"id":23175182,"url":"https://github.com/5d-jh/school-menu-api","last_synced_at":"2025-08-18T10:31:18.381Z","repository":{"id":33262799,"uuid":"142867308","full_name":"5d-jh/school-menu-api","owner":"5d-jh","description":"🏫 학교 API - 초·중·고등학교 식단 및 학교정보 쉽게 불러오기","archived":false,"fork":false,"pushed_at":"2023-07-04T15:54:26.000Z","size":3222,"stargazers_count":46,"open_issues_count":22,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-07-04T16:36:10.586Z","etag":null,"topics":["firebase-functions","monorepo","nodejs","rest-api","school-api"],"latest_commit_sha":null,"homepage":"https://school-api.xyz/api","language":"HTML","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/5d-jh.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}},"created_at":"2018-07-30T11:37:23.000Z","updated_at":"2023-07-04T15:53:19.000Z","dependencies_parsed_at":"2023-01-15T00:10:41.123Z","dependency_job_id":null,"html_url":"https://github.com/5d-jh/school-menu-api","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5d-jh%2Fschool-menu-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5d-jh%2Fschool-menu-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5d-jh%2Fschool-menu-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/5d-jh%2Fschool-menu-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/5d-jh","download_url":"https://codeload.github.com/5d-jh/school-menu-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230224715,"owners_count":18192957,"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":["firebase-functions","monorepo","nodejs","rest-api","school-api"],"created_at":"2024-12-18T05:36:04.068Z","updated_at":"2024-12-18T05:36:04.771Z","avatar_url":"https://github.com/5d-jh.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 학교식단 API\n**[학교식단 API, 학교정보 API는 2023년 8월 1일부로 종료됩니다. \n](https://github.com/5d-jh/school-menu-api/issues/216)**\n## 개요 및 특징\n**더욱 정확한 정보를 보장하는 [나이스 교육정보 개방포털](https://open.neis.go.kr/portal/mainPage.do) 사용을 권장합니다.**\n\n[HTTP GET 요청](https://opentutorials.org/course/3385/21674)을 통해 학교 식단을 [JSON](https://opentutorials.org/course/1375/6844)으로 받아 어떤 플랫폼에서든 쉽게 불러올 수 있습니다.\n[school-api](https://github.com/agemor/school-api) 프로젝트가 제작에 큰 도움이 되었습니다.\n\n식단을 한 번 이상 요청 시 요청한 학교, 년, 월별로 식단이 서버에 저장되어 응답 속도가 대폭 개선됩니다.\n\n초등학교, 중학교, 고등학교를 지원합니다.\n\n## 학교 유형\n * 초등학교: `elementary`\n * 중학교: `middle`\n * 고등학교: `high`\n\n## 학교 코드\n[여기](https://school-api.xyz/code/app)에서 학교 코드를 확인할 수 있습니다.\n\n## 식단 불러오기\n`https://school-api.xyz/api/[학교유형]/[학교코드]`로 현재 달의 식단을 불러올 수 있습니다. 응답 데이터는 JSON 입니다.\n\n### 매개변수(선택사항)\n다음과 같이 주소 끝에 변수명과 값을 적어 사용합니다.\n\n\u003ccode\u003ehttps://\u003cspan\u003e\u003c/span\u003eschool-api.\u003cspan\u003e\u003c/span\u003exyz/api/[학교유형]/[학교코드]\u003cstrong\u003e?[변수명1]=[값1]\u0026[변수명2]=[값2]\u003c/strong\u003e\u003c/code\u003e\n\n| 변수명 | 설명 | 기본값 |\n| :------: | ------ | ------ |\n| year | 특정한 년도를 지정하여 해당 년도에 해당하는 식단을 불러옵니다. | 현재 날짜의 연도 | \n| month | 특정한 달을 지정하여 해당 달에 해당하는 식단을 불러옵니다. | 현재 날짜의 월 |\n| date | 특정한 일을 지정하여 해당 날짜에 해당하는 식단을 불러옵니다. | 현재 날짜의 일 |\n| allergy | `hidden`으로 설정하면 알레르기 정보가 표시되지 않으며, `formed`로 설정하면 정보가 구조화되어 표시됩니다. | 없음 |\n\n## 예시\n \u003e Node.js\n```javascript\nconst request = require('request');\n\nconst url = 'https://school-api.xyz/api/high/X123456789?date=23';\nrequest(url, (err, res, body) =\u003e {\n    var json = JSON.parse(body);\n    console.log(json);\n});\n```\n \u003e Python\n```python\nimport requests\nimport json\n\nurl = 'https://school-api.xyz/api/middle/X123456789?year=2018\u0026month=5'\nresponse = requests.get(url)\nschool_menu = json.loads(response.text)\nprint(school_menu)\n```\n\n### 응답\n```\n{\n    menu: [\n        ...,\n        {\n            date:\"5\",\n            breakfast:[\"찹쌀밥\",\"홍합미역국5.6.\",\"닭갈비5.6.13.\",\"김구이13.\",\"배추김치9.13.\",\"방울토마토12.\"],\n            lunch:[\"흑미밥\",\"콩나물국5.13.\",\"돼지등뼈김치찜9.10.13.\",\"도토리묵무침5.6.13.\",\"총각김치9.13.\",\"청포도\"],\n            dinner:[\"찹쌀밥\",\"오징어짬뽕국5.6.\",\"배추겉절이13.\",\"포도쥬스5.13.\",\"만두오꼬노미야끼1.5.6.10.12.13.\"]\n        },\n        ...\n    ],\n    server_message: [\"foo\", \"bar\", ...]\n}\n```\n\n## 기타 사항\n### 직접 빌드 및 배포하기\n준비사항\n* Node.js 16\n* Firebase CLI\n* Firebase Console에서 생성한 프로젝트\n\n프로젝트 루트에 위치한 `.firebaserc` 파일에서 firebase project id를 수정한 후, 다음과 같이 명령어를 실행하면 배포할 수 있습니다.\n```sh\nfirebase deploy\n```\n\n### 저작권\n해당 프로젝트는 MIT 라이선스 하에 배포되며, 수정, 복제, 2차 창작, 영리적 사용, 다른 라이선스 하에 재배포 등이 가능합니다. 다만 해당 프로젝트와 관련된 피해에 대해 책임지지 않습니다.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5d-jh%2Fschool-menu-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F5d-jh%2Fschool-menu-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F5d-jh%2Fschool-menu-api/lists"}