API reformatting
This commit is contained in:
47
src/routes/private/api/google/README.md
Normal file
47
src/routes/private/api/google/README.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# Google API Integration
|
||||
|
||||
This directory contains unified endpoints for Google API integration, all protected under the `/private` route to ensure only authenticated users can access them.
|
||||
|
||||
## Auth Endpoints
|
||||
|
||||
### `/private/api/google/auth/refresh`
|
||||
|
||||
- **Method**: POST
|
||||
- **Purpose**: Refreshes an access token using a refresh token
|
||||
- **Body**: `{ "refreshToken": "your-refresh-token" }`
|
||||
- **Response**: `{ "accessToken": "new-access-token", "expiresIn": 3600 }`
|
||||
|
||||
### `/private/api/google/auth/userinfo`
|
||||
|
||||
- **Method**: GET
|
||||
- **Purpose**: Gets information about the authenticated user
|
||||
- **Headers**: Authorization: Bearer `access_token`
|
||||
- **Response**: `{ "email": "user@example.com", "name": "User Name", "picture": "profile-pic-url" }`
|
||||
|
||||
### `/private/api/google/auth/revoke`
|
||||
|
||||
- **Method**: POST
|
||||
- **Purpose**: Revokes an access token
|
||||
- **Body**: `{ "accessToken": "token-to-revoke" }`
|
||||
- **Response**: `{ "success": true }`
|
||||
|
||||
## Sheets Endpoints
|
||||
|
||||
### `/private/api/google/sheets/recent`
|
||||
|
||||
- **Method**: GET
|
||||
- **Purpose**: Gets a list of recent spreadsheets
|
||||
- **Headers**: Authorization: Bearer `refresh_token`
|
||||
- **Response**: Array of spreadsheet objects
|
||||
|
||||
### `/private/api/google/sheets/[sheetId]/data`
|
||||
|
||||
- **Method**: GET
|
||||
- **Purpose**: Gets data from a specific spreadsheet
|
||||
- **Headers**: Authorization: Bearer `refresh_token`
|
||||
- **URL Parameters**: sheetId - The ID of the spreadsheet
|
||||
- **Response**: Spreadsheet data including values array
|
||||
|
||||
## Client Usage
|
||||
|
||||
Use the utility functions in `$lib/google.ts` to interact with these endpoints.
|
||||
Reference in New Issue
Block a user