Eshway Users API
The users API from Eshway — 10 operation(s) for users.
The users API from Eshway — 10 operation(s) for users.
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-users-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 Users API
version: 0.1.0
tags:
- name: Users
paths:
/v1/users/me:
get:
tags:
- Users
summary: Get Profile
operationId: get_profile_v1_users_me_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
security:
- OAuth2PasswordBearer: []
patch:
tags:
- Users
summary: Update Profile
operationId: update_profile_v1_users_me_patch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UserUpdate'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- OAuth2PasswordBearer: []
/v1/users/public/{username}:
get:
tags:
- Users
summary: Get Public Profile
description: 'Get public profile information by username.
Returns user''s basic info, organizations, and projects.
Respects privacy settings and filters content accordingly.'
operationId: get_public_profile_v1_users_public__username__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:
$ref: '#/components/schemas/PublicProfileResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/users/me/privacy:
get:
tags:
- Users
summary: Get Privacy Settings
description: Get current user's privacy settings
operationId: get_privacy_settings_v1_users_me_privacy_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PrivacyResponse'
security:
- OAuth2PasswordBearer: []
patch:
tags:
- Users
summary: Update Privacy Settings Partial
description: Update specific privacy settings fields without sending the entire object
operationId: update_privacy_settings_partial_v1_users_me_privacy_patch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PrivacyUpdateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PrivacyResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- OAuth2PasswordBearer: []
/v1/users/:
post:
tags:
- Users
summary: Create User
operationId: create_user_v1_users__post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UserCreate'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/User'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- OAuth2PasswordBearer: []
/v1/users/{user_id}:
get:
tags:
- Users
summary: Get User
operationId: get_user_v1_users__user_id__get
security:
- OAuth2PasswordBearer: []
parameters:
- name: user_id
in: path
required: true
schema:
type: integer
title: User Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/User'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
patch:
tags:
- Users
summary: Update User
operationId: update_user_v1_users__user_id__patch
security:
- OAuth2PasswordBearer: []
parameters:
- name: user_id
in: path
required: true
schema:
type: integer
title: User Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserUpdate'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/User'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/users/{user_id}/resend-verification:
post:
tags:
- Users
summary: Resend Verification
operationId: resend_verification_v1_users__user_id__resend_verification_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: user_id
in: path
required: true
schema:
type: integer
title: User Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/:
get:
tags:
- Users
summary: List Users
operationId: list_users_v1__get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/UserResponse'
type: array
title: Response List Users V1 Get
security:
- OAuth2PasswordBearer: []
/v1/manage:
get:
tags:
- Users
summary: Manage Users
operationId: manage_users_v1_manage_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/UserResponse'
type: array
title: Response Manage Users V1 Manage Get
security:
- OAuth2PasswordBearer: []
/v1/users/{user_id}/performance:
get:
tags:
- Users
summary: Get User Performance
operationId: get_user_performance_v1_users__user_id__performance_get
security:
- OAuth2PasswordBearer: []
parameters:
- name: user_id
in: path
required: true
schema:
type: integer
title: User Id
- name: organization_id
in: query
required: true
schema:
type: integer
title: Organization Id
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Start Date
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: End Date
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/users/{user_id}/avatar:
post:
tags:
- Users
summary: Upload Avatar
operationId: upload_avatar_v1_users__user_id__avatar_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: user_id
in: path
required: true
schema:
type: integer
title: User Id
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Body_upload_avatar_v1_users__user_id__avatar_post'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AvatarUploadResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
User:
properties:
email:
type: string
format: email
title: Email
username:
type: string
title: Username
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
is_active:
anyOf:
- type: boolean
- type: 'null'
title: Is Active
default: true
role:
anyOf:
- type: string
- type: 'null'
title: Role
default: user
skills:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Skills
default: []
bio:
anyOf:
- type: string
- type: 'null'
title: Bio
gender:
anyOf:
- $ref: '#/components/schemas/GenderEnum'
- type: 'null'
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
id:
type: integer
title: Id
external_ids:
anyOf:
- $ref: '#/components/schemas/UserExternalIds'
- type: 'null'
type: object
required:
- email
- username
- id
title: User
UserResponse:
properties:
email:
type: string
format: email
title: Email
username:
type: string
title: Username
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
is_active:
anyOf:
- type: boolean
- type: 'null'
title: Is Active
default: true
role:
anyOf:
- type: string
- type: 'null'
title: Role
default: user
skills:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Skills
default: []
bio:
anyOf:
- type: string
- type: 'null'
title: Bio
gender:
anyOf:
- $ref: '#/components/schemas/GenderEnum'
- type: 'null'
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
id:
type: integer
title: Id
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
external_ids:
anyOf:
- $ref: '#/components/schemas/UserExternalIds'
- type: 'null'
type: object
required:
- email
- username
- id
- created_at
- updated_at
title: UserResponse
PrivacySettings:
properties:
profile:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
bio:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
skills:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
gender:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
organizations:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
education:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
certificates:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
default: public
organization_specific:
anyOf:
- additionalProperties:
$ref: '#/components/schemas/PrivacyLevel'
type: object
- type: 'null'
title: Organization Specific
default: {}
project_specific:
anyOf:
- additionalProperties:
$ref: '#/components/schemas/PrivacyLevel'
type: object
- type: 'null'
title: Project Specific
default: {}
type: object
title: PrivacySettings
description: Privacy settings for user profile sections
AvatarUploadResponse:
properties:
avatar:
type: string
title: Avatar
message:
type: string
title: Message
default: Avatar updated successfully
type: object
required:
- avatar
title: AvatarUploadResponse
description: Response model for avatar upload endpoint
PrivacyLevel:
type: string
enum:
- public
- organization
- private
title: PrivacyLevel
PublicProjectResponse:
properties:
id:
type: integer
title: Id
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
skills_applied:
items:
type: string
type: array
title: Skills Applied
default: []
team_size:
type: integer
title: Team Size
joined_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Joined At
left_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Left At
type: object
required:
- id
- name
- team_size
title: PublicProjectResponse
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
PublicOrganizationResponse:
properties:
id:
type: integer
title: Id
name:
type: string
title: Name
industry:
anyOf:
- type: string
- type: 'null'
title: Industry
role:
type: string
title: Role
joined_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Joined At
left_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Left At
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
projects:
items:
$ref: '#/components/schemas/PublicProjectResponse'
type: array
title: Projects
default: []
type: object
required:
- id
- name
- role
title: PublicOrganizationResponse
PublicProfileResponse:
properties:
username:
type: string
title: Username
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
bio:
anyOf:
- type: string
- type: 'null'
title: Bio
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
gender:
anyOf:
- $ref: '#/components/schemas/GenderEnum'
- type: 'null'
skills:
items:
type: string
type: array
title: Skills
default: []
organizations:
items:
$ref: '#/components/schemas/PublicOrganizationResponse'
type: array
title: Organizations
default: []
created_at:
type: string
format: date-time
title: Created At
external_ids:
anyOf:
- $ref: '#/components/schemas/UserExternalIds'
- type: 'null'
type: object
required:
- username
- created_at
title: PublicProfileResponse
UserUpdate:
properties:
email:
anyOf:
- type: string
format: email
- type: 'null'
title: Email
username:
anyOf:
- type: string
- type: 'null'
title: Username
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
bio:
anyOf:
- type: string
- type: 'null'
title: Bio
password:
anyOf:
- type: string
- type: 'null'
title: Password
skills:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Skills
gender:
anyOf:
- $ref: '#/components/schemas/GenderEnum'
- type: 'null'
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
privacy_settings:
anyOf:
- type: object
- type: 'null'
title: Privacy Settings
external_ids:
anyOf:
- $ref: '#/components/schemas/UserExternalIds'
- type: 'null'
type: object
title: UserUpdate
PrivacyUpdateRequest:
properties:
profile:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
bio:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
skills:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
gender:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
organizations:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
education:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
certificates:
anyOf:
- $ref: '#/components/schemas/PrivacyLevel'
- type: 'null'
organization_specific:
anyOf:
- additionalProperties:
$ref: '#/components/schemas/PrivacyLevel'
type: object
- type: 'null'
title: Organization Specific
project_specific:
anyOf:
- additionalProperties:
$ref: '#/components/schemas/PrivacyLevel'
type: object
- type: 'null'
title: Project Specific
type: object
title: PrivacyUpdateRequest
description: Request model for updating specific privacy settings fields
PrivacyResponse:
properties:
privacy_settings:
$ref: '#/components/schemas/PrivacySettings'
type: object
required:
- privacy_settings
title: PrivacyResponse
description: Response model for privacy settings
Body_upload_avatar_v1_users__user_id__avatar_post:
properties:
file:
type: string
format: binary
title: File
type: object
required:
- file
title: Body_upload_avatar_v1_users__user_id__avatar_post
UserCreate:
properties:
email:
type: string
format: email
title: Email
username:
type: string
title: Username
full_name:
anyOf:
- type: string
- type: 'null'
title: Full Name
is_active:
anyOf:
- type: boolean
- type: 'null'
title: Is Active
default: true
role:
anyOf:
- type: string
- type: 'null'
title: Role
default: user
skills:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Skills
default: []
bio:
anyOf:
- type: string
- type: 'null'
title: Bio
gender:
anyOf:
- $ref: '#/components/schemas/GenderEnum'
- type: 'null'
avatar:
anyOf:
- type: string
- type: 'null'
title: Avatar
password:
anyOf:
- type: string
- type: 'null'
title: Password
type: object
required:
- email
- username
title: UserCreate
GenderEnum:
type: string
enum:
- Male
- Female
- Other
title: GenderEnum
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
UserExternalIds:
properties: {}
type: object
title: UserExternalIds
securitySchemes:
OAuth2PasswordBearer:
type: oauth2
flows:
password:
scopes: {}
tokenUrl: token