Using Google Sheets as a database.
Installation
Install: npm install --save @sheetbase/database
Usage:
// 1. import module
import { DatabaseModule } from "@sheetbase/database";
// 2. create an instance
export class App {
// the object
databaseModule: DatabaseModule;
// initiate the instance
constructor() {
this.databaseModule = new DatabaseModule(/* options */);
}
}
Options
Name | Type | Description |
---|---|---|
databaseId | string |
|
keyFields? | undefined | object |
|
security? | boolean | object |
|
securityHelpers? | SecurityHelpers |
Lib
The Lib
class.
Lib properties
Lib methods
Function | Returns type | Description |
---|---|---|
registerRoutes(routeEnabling?, middlewares?) | RouterService<> |
Expose the module routes |
registerRoutes(routeEnabling?, middlewares?)
Expose the module routes
Parameters
Param | Type | Description |
---|---|---|
routeEnabling | true | DisabledRoutes |
|
middlewares | Middlewares | RouteMiddlewares |
Returns
RouterService<>
Routing
DatabaseModule provides REST API endpoints allowing clients to access server resources. Theses enpoints are not exposed by default, to expose the endpoints:
DatabaseModule.registerRoutes(routeEnabling?);
Errors
DatabaseModule returns these routing errors, you may use the error code to customize the message:
database/content-no-id
: No doc id.database/no-input
: No path/table/sheet.Routes
Routes overview
Route | Method | Disabled | Description |
---|---|---|---|
/database/content | GET |
Get doc content | |
/database | DELETE |
true |
Delete an item from the database (proxy to: post /database) |
/database | GET |
true |
Get data from the database |
/database | PATCH |
true |
Update an item from the database (proxy to: post /database) |
/database | POST |
true |
Add/update/delete data from database |
/database | PUT |
true |
Add a new item do the database (proxy to: post /database) |
Routes detail
GET
/database/content
Get doc content
Request query
Name | Type | Description |
---|---|---|
docId | string |
|
style? | DocsContentStyles |
Response
object
DELETE
/database
DISABLED
Delete an item from the database (proxy to: post /database)
Request body
Name | Type | Description |
---|---|---|
path | string |
|
table? | string |
|
sheet? | string |
|
id? | string |
|
key? | string |
Response
void
GET
/database
DISABLED
Get data from the database
Request query
Name | Type | Description |
---|---|---|
path? | string |
|
table? | string |
|
sheet? | string |
|
id? | string |
|
key? | string |
|
type? | 'object' |
|
query? | string |
|
segment? | string |
|
order? | string |
|
orderBy? | string |
|
limit? | number |
|
offset? | number |
Response
Record<string, unknown> | unknown[]
PATCH
/database
DISABLED
Update an item from the database (proxy to: post /database)
Request body
Name | Type | Description |
---|---|---|
path | string |
|
table? | string |
|
sheet? | string |
|
id? | string |
|
key? | string |
|
data? | unknown |
Response
void
POST
/database
DISABLED
Add/update/delete data from database
Request body
Name | Type | Description |
---|---|---|
path | string |
|
table? | string |
|
sheet? | string |
|
id? | string |
|
key? | string |
|
data? | unknown |
|
increasing? | Record |
|
clean? | boolean |
Response
void
PUT
/database
DISABLED
Add a new item do the database (proxy to: post /database)
Request body
Name | Type | Description |
---|---|---|
path | string |
|
table? | string |
|
sheet? | string |
|
id? | string |
|
key? | string |
|
data? | unknown |
Response
void
@sheetbase/database is released under the MIT license.
Generated using TypeDoc