https://github.com/arnoob16/geeksforgeeksapi
Unofficial GeeksForGeeks API
https://github.com/arnoob16/geeksforgeeksapi
api data-structures flask-api geeksforgeeks unofficial-apis vercel-deployment
Last synced: 23 days ago
JSON representation
Unofficial GeeksForGeeks API
- Host: GitHub
- URL: https://github.com/arnoob16/geeksforgeeksapi
- Owner: arnoob16
- Created: 2020-12-29T09:29:14.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2025-02-11T03:20:04.000Z (3 months ago)
- Last Synced: 2025-04-02T10:37:23.191Z (about 1 month ago)
- Topics: api, data-structures, flask-api, geeksforgeeks, unofficial-apis, vercel-deployment
- Language: Python
- Homepage: https://geeks-for-geeks-api.vercel.app/arnoob16
- Size: 34.2 KB
- Stars: 67
- Watchers: 2
- Forks: 24
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![]()
Unofficial GFG API
An unofficial API for GeeksForGeeks for developers to make cool stuff using GFG profile data.
![]()
![]()
---
## Functionalities
- [x] Has all the relevant data from the GFG profile page.
- [x] Has the count of all the problems solved based on difficulties.
- [x] Has the links & names of all the problems solved by the user segregated based on difficulties.
- [x] Methods supported - `GET`---
## Endpoints
To access the API, there is only 1 endpoint, *https://geeks-for-geeks-api.vercel.app/yourGeeksForGeeksUsername*
`Sample URL` - https://geeks-for-geeks-api.vercel.app/arnoob16
## How was it built:
The API was built using Web Scraping the profile page and a server deployed on web.
![]()
![]()
![]()
---
## Instructions to run on your local system
* Pre-requisites:
- Python 3.x
- Install all the required libraries using the *requirements.txt* file.
``` pip install requirements.txt ```* Directions to execute
- ``` python app.py``` or ``` py app.py```
- Open the browser of your choice and visit your localhost, either *http://127.0.0.1:5000/yourGeeksForGeeksUsername* or *http://localhost:5000/yourGeeksForGeeksUsername*
- See the API Response, understand it and build something with it.---
### Sample API Responses
#### Success Response
```
{
"info": {
"userName": "arnoob16",
"profilePicture": "https://media.geeksforgeeks.org/img-practice/user_web-1598433228.svg",
"instituteRank": "415",
"currentStreak": "00",
"maxStreak": "929",
"institution": "SRM Institute of Science and Technology ",
"languagesUsed": "Java, C++, Python",
"codingScore": "224",
"totalProblemsSolved": "95",
"monthlyCodingScore": ""
},
"solvedStats": {
"school": {
"count": 0,
"questions": []
},
"basic": {
"count": 16,
"questions": [
{
"question": "Cyclically rotate an array by one",
"questionUrl": "https://practice.geeksforgeeks.org/problems/cyclically-rotate-an-array-by-one2614/0"
},
{
"question": "Union of two arrays",
"questionUrl": "https://practice.geeksforgeeks.org/problems/union-of-two-arrays3538/0"
},
{
"question": "Middle of Three",
"questionUrl": "https://practice.geeksforgeeks.org/problems/middle-of-three2926/0"
}
]
},
"hard": {
"count": 2,
"questions": [
{
"question": "Merge Without Extra Space",
"questionUrl": "https://practice.geeksforgeeks.org/problems/merge-two-sorted-arrays5135/0"
},
{
"question": "Return two prime numbers",
"questionUrl": "https://practice.geeksforgeeks.org/problems/return-two-prime-numbers2509/0"
}
]
}
}
}
```#### Failure Response
```
{
"error": "Profile Not Found"
}
```
---#### Notes
- If you are using this, do mention about this repository in your readme, I'll also mention your project here in this repository.
- A star to the repository would be massive boost to a NOOB like me.
![]()