Eshway Education API
The Education API from Eshway — 3 operation(s) for education.
The Education API from Eshway — 3 operation(s) for education.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/eshway-com:eshway-com-education-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Fast Education API
version: 0.1.0
tags:
- name: Education
paths:
/v1/users/{username}/education:
get:
tags:
- Education
summary: Get User Education By Username
description: 'Get all education records for a user by username.
This is for public profile pages.
Respects privacy settings.'
operationId: get_user_education_by_username_v1_users__username__education_get
parameters:
- name: username
in: path
required: true
schema:
type: string
title: Username
- name: authorization
in: header
required: false
schema:
type: string
title: Authorization
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PublicEducationResponse'
title: Response Get User Education By Username V1 Users Username Education Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- Education
summary: Create Education
description: 'Create a new education record for a user.
Sort order is automatically assigned.'
operationId: create_education_v1_users__username__education_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: username
in: path
required: true
schema:
type: string
title: Username
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EducationCreate'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/EducationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/users/{username}/education/{education_id}:
put:
tags:
- Education
summary: Update Education
description: 'Update an education record.
Users can manually change sort_order to reorder entries.'
operationId: update_education_v1_users__username__education__education_id__put
security:
- OAuth2PasswordBearer: []
parameters:
- name: username
in: path
required: true
schema:
type: string
title: Username
- name: education_id
in: path
required: true
schema:
type: integer
title: Education Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EducationUpdate'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/EducationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Education
summary: Delete Education
description: Delete an education record.
operationId: delete_education_v1_users__username__education__education_id__delete
security:
- OAuth2PasswordBearer: []
parameters:
- name: username
in: path
required: true
schema:
type: string
title: Username
- name: education_id
in: path
required: true
schema:
type: integer
title: Education Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/users/{username}/education/swap-order:
post:
tags:
- Education
summary: Reorder Education
description: Swap the sort order of two education records.
operationId: reorder_education_v1_users__username__education_swap_order_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: username
in: path
required: true
schema:
type: string
title: Username
- name: education_id_1
in: query
required: true
schema:
type: integer
description: First education ID
title: Education Id 1
description: First education ID
- name: education_id_2
in: query
required: true
schema:
type: integer
description: Second education ID
title: Education Id 2
description: Second education ID
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
EducationResponse:
properties:
degree:
$ref: '#/components/schemas/DegreeType'
program:
anyOf:
- type: string
- type: 'null'
title: Program
specialization:
anyOf:
- type: string
- type: 'null'
title: Specialization
institution_name:
type: string
title: Institution Name
location:
anyOf:
- type: string
- type: 'null'
title: Location
start_year:
type: integer
title: Start Year
end_year:
anyOf:
- type: integer
- type: 'null'
title: End Year
grade_type:
anyOf:
- $ref: '#/components/schemas/GradeType'
- type: 'null'
grade_value:
anyOf:
- type: number
- type: 'null'
title: Grade Value
achievements:
anyOf:
- type: string
- type: 'null'
title: Achievements
id:
type: integer
title: Id
user_id:
type: integer
title: User Id
sort_order:
type: integer
title: Sort Order
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
type: object
required:
- degree
- institution_name
- start_year
- id
- user_id
- sort_order
- created_at
- updated_at
title: EducationResponse
EducationCreate:
properties:
degree:
$ref: '#/components/schemas/DegreeType'
program:
anyOf:
- type: string
- type: 'null'
title: Program
specialization:
anyOf:
- type: string
- type: 'null'
title: Specialization
institution_name:
type: string
title: Institution Name
location:
anyOf:
- type: string
- type: 'null'
title: Location
start_year:
type: integer
title: Start Year
end_year:
anyOf:
- type: integer
- type: 'null'
title: End Year
grade_type:
anyOf:
- $ref: '#/components/schemas/GradeType'
- type: 'null'
grade_value:
anyOf:
- type: number
- type: 'null'
title: Grade Value
achievements:
anyOf:
- type: string
- type: 'null'
title: Achievements
type: object
required:
- degree
- institution_name
- start_year
title: EducationCreate
GradeType:
type: string
enum:
- CGPA
- Percentage
title: GradeType
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
PublicEducationResponse:
properties:
id:
type: integer
title: Id
degree:
$ref: '#/components/schemas/DegreeType'
program:
anyOf:
- type: string
- type: 'null'
title: Program
specialization:
anyOf:
- type: string
- type: 'null'
title: Specialization
institution_name:
type: string
title: Institution Name
location:
anyOf:
- type: string
- type: 'null'
title: Location
start_year:
type: integer
title: Start Year
end_year:
anyOf:
- type: integer
- type: 'null'
title: End Year
grade_type:
anyOf:
- $ref: '#/components/schemas/GradeType'
- type: 'null'
grade_value:
anyOf:
- type: number
- type: 'null'
title: Grade Value
achievements:
anyOf:
- type: string
- type: 'null'
title: Achievements
sort_order:
type: integer
title: Sort Order
type: object
required:
- id
- degree
- institution_name
- start_year
- sort_order
title: PublicEducationResponse
description: Public education response for profile pages - excludes user_id and internal fields
EducationUpdate:
properties:
degree:
anyOf:
- $ref: '#/components/schemas/DegreeType'
- type: 'null'
program:
anyOf:
- type: string
- type: 'null'
title: Program
specialization:
anyOf:
- type: string
- type: 'null'
title: Specialization
institution_name:
anyOf:
- type: string
- type: 'null'
title: Institution Name
location:
anyOf:
- type: string
- type: 'null'
title: Location
start_year:
anyOf:
- type: integer
- type: 'null'
title: Start Year
end_year:
anyOf:
- type: integer
- type: 'null'
title: End Year
grade_type:
anyOf:
- $ref: '#/components/schemas/GradeType'
- type: 'null'
grade_value:
anyOf:
- type: number
- type: 'null'
title: Grade Value
achievements:
anyOf:
- type: string
- type: 'null'
title: Achievements
sort_order:
anyOf:
- type: integer
- type: 'null'
title: Sort Order
type: object
title: EducationUpdate
DegreeType:
type: string
enum:
- High School
- Diploma
- Bachelors
- Masters
- PhD
title: DegreeType
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
securitySchemes:
OAuth2PasswordBearer:
type: oauth2
flows:
password:
scopes: {}
tokenUrl: token