ZDrive API

Public API reference for ZDrive - secure cloud storage. Authenticate by logging in via POST /auth/login, which sets an httpOnly session cookie sent automatically on subsequent requests.

Version 1.4.1 · 62 endpoints · base URL https://zhdrive.in/api

Open interactive Swagger UI

Authentication

Most endpoints require an active session. Call POST /auth/login with an email and password - on success the response sets an httpOnly session cookie that your browser or HTTP client sends automatically on every subsequent request to this API. There is no separate API key or bearer token to manage. Endpoints marked Public work without a session; everything else needs one.

Auth

post/api/auth/register Requires session

Request body

FieldTypeRequired
emailstring (email)yes
passwordstringyes
namestringno
post/api/auth/login Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes

Request body

FieldTypeRequired
emailstring (email)yes
passwordstringyes
post/api/auth/login/2fa Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes

Request body

FieldTypeRequired
challengeTokenstringyes
codestringyes
post/api/auth/google/token Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes

Request body

FieldTypeRequired
idTokenstringyes
get/api/auth/me Requires session
post/api/auth/logout Requires session
post/api/auth/change-password Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes

Request body

FieldTypeRequired
currentPasswordstringyes
newPasswordstringyes
get/api/auth/sessions Requires session
delete/api/auth/sessions/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes
post/api/auth/2fa/setup Requires session
post/api/auth/2fa/verify Requires session

Request body

FieldTypeRequired
codestringyes
post/api/auth/2fa/disable Requires session

Request body

FieldTypeRequired
passwordstringyes
post/api/auth/forgot-password Requires session

Request body

FieldTypeRequired
emailstring (email)yes
post/api/auth/reset-password Requires session

Request body

FieldTypeRequired
tokenstringyes
passwordstringyes
post/api/auth/verify-email Requires session

Request body

FieldTypeRequired
tokenstringyes
post/api/auth/resend-verification Requires session

Request body

FieldTypeRequired
emailstring (email)yes

Users

get/api/users/me Requires session
get/api/users/profile Requires session
patch/api/users/profile Requires session

Request body

FieldTypeRequired
namestringno
post/api/users/avatar Requires session
get/api/users/storage Requires session
get/api/users/activity Requires session
delete/api/users/account Requires session

Folders

post/api/folders Requires session

Request body

FieldTypeRequired
namestringyes
parentIdstringno
get/api/folders Requires session
get/api/folders/all Requires session
get/api/folders/{id}/children Requires session

Parameters

NameInTypeRequired
idpathstringyes
get/api/folders/{id}/explorer Requires session

Parameters

NameInTypeRequired
idpathstringyes
get/api/folders/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes
patch/api/folders/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes

Request body

FieldTypeRequired
namestringyes
delete/api/folders/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes

Files

get/api/files/share/{token} Requires session

Parameters

NameInTypeRequired
tokenpathstringyes
get/api/files/share/{token}/content Requires session

Parameters

NameInTypeRequired
tokenpathstringyes
get/api/files/bulk-download/content Requires session

Parameters

NameInTypeRequired
ticketquerystringyes
get/api/files/{id}/content Requires session

Parameters

NameInTypeRequired
idpathstringyes
ticketquerystringyes
dispositionquerystringyes
get/api/files Requires session
get/api/files/search-semantic/{query} Requires session

Parameters

NameInTypeRequired
querypathstringyes
user-agentheaderstringyes
get/api/files/search-semantic-documents/{query} Requires session

Parameters

NameInTypeRequired
querypathstringyes
user-agentheaderstringyes
get/api/files/trash Requires session
get/api/files/folder/{folderId} Requires session

Parameters

NameInTypeRequired
folderIdpathstringyes
get/api/files/shared Requires session
delete/api/files/share/{shareId} Requires session

Parameters

NameInTypeRequired
shareIdpathstringyes
user-agentheaderstringyes
get/api/files/{id}/versions Requires session

Parameters

NameInTypeRequired
idpathstringyes
post/api/files/{id}/version Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes
get/api/files/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes
patch/api/files/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes

Request body

FieldTypeRequired
namestringyes
delete/api/files/{id} Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes
get/api/files/{id}/download Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes
post/api/files/bulk-download-ticket Requires session

Request body

FieldTypeRequired
fileIdsstring[]no
folderIdsstring[]no
patch/api/files/{id}/move Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes

Request body

FieldTypeRequired
folderIdstringno
post/api/files/{id}/share Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes
patch/api/files/{id}/restore Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes
delete/api/files/{id}/permanent Requires session

Parameters

NameInTypeRequired
idpathstringyes
user-agentheaderstringyes

Storage

post/api/storage/upload Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes
post/api/storage/upload/bulk Requires session

Parameters

NameInTypeRequired
user-agentheaderstringyes

Dashboard

get/api/dashboard/stats Requires session

Billing

get/api/billing/plans Requires session

Parameters

NameInTypeRequired
audiencequerystringno
get/api/billing/subscription Requires session
post/api/billing/razorpay/create-order Requires session

Request body

FieldTypeRequired
planCodestringyes
post/api/billing/razorpay/verify Requires session

Request body

FieldTypeRequired
razorpayOrderIdstringyes
razorpayPaymentIdstringyes
razorpaySignaturestringyes