Skip to content

The Hoody Notes: Databases API provides endpoints for managing individual records within a notebook database. Use these endpoints to list, retrieve, search, create, update, and delete database records, and to filter and sort records by custom field values.

Returns a paginated list of records in a database. Supports JSON-encoded filters and sorts.

GET /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records

NameInTypeRequiredDescription
filtersquerystringNoJSON-encoded filter expression applied to records
sortsquerystringNoJSON-encoded sort expression
pagequeryintegerNoPage number (default: 1)
countqueryintegerNoRecords per page (default: 50)
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
Terminal window
curl -G "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records" \
-H "Authorization: Bearer <token>" \
--data-urlencode 'filters=[{"field":"status","op":"eq","value":"active"}]' \
--data-urlencode 'page=1' \
--data-urlencode 'count=50'

Returns a single record by ID from a database.

GET /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records/{recordId}

NameInTypeRequiredDescription
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
recordIdpathstringYesID of the record to retrieve
Terminal window
curl "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records/rec_a1b2c3d4e5f6789012345678" \
-H "Authorization: Bearer <token>"

Searches records in a database by name. Supports excluding specific record IDs.

GET /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records/search

NameInTypeRequiredDescription
qquerystringNoName query string (default: "")
excludequerystringNoJSON array of record IDs to exclude from results
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
Terminal window
curl -G "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records/search" \
-H "Authorization: Bearer <token>" \
--data-urlencode 'q=Acme' \
--data-urlencode 'exclude=["rec_a1b2c3d4e5f6789012345678"]'

Creates a new record in a database with a name and custom field values.

POST /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records

NameInTypeRequiredDescription
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
FieldTypeRequiredDescription
idstringNoOptional client-supplied record ID
namestringNoRecord name (default: "Untitled")
avatarstring | nullNoAvatar URL or null
fieldsobjectNoMap of custom field names to values (default: {})
Terminal window
curl -X POST "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "New Vendor",
"avatar": null,
"fields": {
"status": "prospect",
"tags": ["q1", "outbound"]
}
}'

Updates a record name, avatar, or field values. Fields are merged with existing values.

PATCH /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records/{recordId}

NameInTypeRequiredDescription
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
recordIdpathstringYesID of the record to update
FieldTypeRequiredDescription
namestringNoNew record name
avatarstring | nullNoNew avatar URL or null
fieldsobjectNoMap of field names to typed { type, value } objects to merge into the existing record

Each entry in fields must specify a type and a matching value. Supported type values are boolean, string, string_array, number, and text.

Terminal window
curl -X PATCH "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records/rec_a1b2c3d4e5f6789012345678" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Acme Corp - Enterprise",
"fields": {
"status": { "type": "string", "value": "closed-won" },
"priority": { "type": "number", "value": 1 }
}
}'

Permanently deletes a record from a database.

DELETE /api/v1/notes/notebooks/{notebookId}/databases/{databaseId}/records/{recordId}

NameInTypeRequiredDescription
notebookIdpathstringYesID of the parent notebook
databaseIdpathstringYesID of the target database
recordIdpathstringYesID of the record to delete
Terminal window
curl -X DELETE "https://api.hoody.com/api/v1/notes/notebooks/nb_5f8e7d6c5b4a39281706f5e4/databases/db_1a2b3c4d5e6f7890abcdef12/records/rec_a1b2c3d4e5f6789012345678" \
-H "Authorization: Bearer <token>"