✨ Add NocoDB block (#1365)
#970 #997 Fully integrate NocoDB. Added all API Functions: - List Table Records - Create Table Records - Update Table Records - Delete Table Records - Read Table Record - Count Table Records - List Linked Records - Link Records - Unlink Records Optional Todo: - Save responses of non-get requests in a variable (error validation try-catch is added and logged so i do not think so it is much needed) You are free to implement any extra validation/function :D --------- Co-authored-by: Baptiste Arnaud <baptiste.arnaud95@gmail.com>
This commit is contained in:
committed by
GitHub
parent
3e4e7531f6
commit
a17781dfa6
@@ -2,11 +2,6 @@
|
||||
title: Anthropic
|
||||
---
|
||||
|
||||
<Warning>
|
||||
There is an ongoing issue with Anthropic block streaming capabilities. We are
|
||||
working on a fix and will update this page once the issue is resolved.
|
||||
</Warning>
|
||||
|
||||
## Create Message
|
||||
|
||||
With the Anthropic block, you can create chat messages based on your user queries and display the answer back to your typebot using Claude AI.
|
||||
|
||||
31
apps/docs/editor/blocks/integrations/nocodb.mdx
Normal file
31
apps/docs/editor/blocks/integrations/nocodb.mdx
Normal file
@@ -0,0 +1,31 @@
|
||||
---
|
||||
title: NocoDB
|
||||
---
|
||||
|
||||
With the NocoDB block, you can create, update or get data from your NocoDB tables.
|
||||
|
||||
## How to find my `Table ID`?
|
||||
|
||||
To find your `Table ID`, you need to go to your NocoDB dashboard and click on the 3 dots button next to your table name.
|
||||
|
||||
<Frame>
|
||||
<img
|
||||
src="/images/blocks/integrations/nocodb-table-id.jpg"
|
||||
alt="NocoDB table ID"
|
||||
/>
|
||||
</Frame>
|
||||
|
||||
## Search Records
|
||||
|
||||
This action allows you to search for existing records in a table. It requires your `Table ID` and can optionally take a `View ID` to search in a specific view.
|
||||
|
||||
<Frame>
|
||||
<img
|
||||
src="/images/blocks/integrations/nocodb.jpg"
|
||||
alt="NocoDB block example"
|
||||
/>
|
||||
</Frame>
|
||||
|
||||
You can configure the filter to return `All`, `First`, `Last` or `Random` found records.
|
||||
|
||||
Then all you need to do is to map the found fields to variables that you can re-use on your bot.
|
||||
BIN
apps/docs/images/blocks/integrations/nocodb-table-id.jpg
Normal file
BIN
apps/docs/images/blocks/integrations/nocodb-table-id.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 79 KiB |
BIN
apps/docs/images/blocks/integrations/nocodb.jpg
Normal file
BIN
apps/docs/images/blocks/integrations/nocodb.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 110 KiB |
@@ -126,7 +126,8 @@
|
||||
"editor/blocks/integrations/mistral",
|
||||
"editor/blocks/integrations/elevenlabs",
|
||||
"editor/blocks/integrations/anthropic",
|
||||
"editor/blocks/integrations/dify-ai"
|
||||
"editor/blocks/integrations/dify-ai",
|
||||
"editor/blocks/integrations/nocodb"
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
@@ -20532,6 +20532,242 @@
|
||||
"id",
|
||||
"type"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"outgoingEdgeId": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"nocodb"
|
||||
]
|
||||
},
|
||||
"options": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Search Records"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"viewId": {
|
||||
"type": "string"
|
||||
},
|
||||
"returnType": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"All",
|
||||
"First",
|
||||
"Last",
|
||||
"Random"
|
||||
]
|
||||
},
|
||||
"filter": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"comparisons": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"input": {
|
||||
"type": "string"
|
||||
},
|
||||
"operator": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Equal to",
|
||||
"Not equal",
|
||||
"Contains",
|
||||
"Greater than",
|
||||
"Less than",
|
||||
"Is set",
|
||||
"Is empty",
|
||||
"Starts with",
|
||||
"Ends with"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"joiner": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AND",
|
||||
"OR"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"comparisons"
|
||||
]
|
||||
},
|
||||
"responseMapping": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fieldName": {
|
||||
"type": "string"
|
||||
},
|
||||
"variableId": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Create Record"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"fields": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"key": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Update Existing Record"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"viewId": {
|
||||
"type": "string"
|
||||
},
|
||||
"filter": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"comparisons": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"input": {
|
||||
"type": "string"
|
||||
},
|
||||
"operator": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Equal to",
|
||||
"Not equal",
|
||||
"Contains",
|
||||
"Greater than",
|
||||
"Less than",
|
||||
"Is set",
|
||||
"Is empty",
|
||||
"Starts with",
|
||||
"Ends with"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"joiner": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AND",
|
||||
"OR"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"comparisons"
|
||||
]
|
||||
},
|
||||
"updates": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fieldName": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
],
|
||||
"title": "Block"
|
||||
|
||||
@@ -11513,6 +11513,242 @@
|
||||
"id",
|
||||
"type"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"outgoingEdgeId": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"nocodb"
|
||||
]
|
||||
},
|
||||
"options": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Search Records"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"viewId": {
|
||||
"type": "string"
|
||||
},
|
||||
"returnType": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"All",
|
||||
"First",
|
||||
"Last",
|
||||
"Random"
|
||||
]
|
||||
},
|
||||
"filter": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"comparisons": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"input": {
|
||||
"type": "string"
|
||||
},
|
||||
"operator": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Equal to",
|
||||
"Not equal",
|
||||
"Contains",
|
||||
"Greater than",
|
||||
"Less than",
|
||||
"Is set",
|
||||
"Is empty",
|
||||
"Starts with",
|
||||
"Ends with"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"joiner": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AND",
|
||||
"OR"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"comparisons"
|
||||
]
|
||||
},
|
||||
"responseMapping": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fieldName": {
|
||||
"type": "string"
|
||||
},
|
||||
"variableId": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Create Record"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"fields": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"key": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"credentialsId": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Update Existing Record"
|
||||
]
|
||||
},
|
||||
"tableId": {
|
||||
"type": "string"
|
||||
},
|
||||
"viewId": {
|
||||
"type": "string"
|
||||
},
|
||||
"filter": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"comparisons": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"input": {
|
||||
"type": "string"
|
||||
},
|
||||
"operator": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"Equal to",
|
||||
"Not equal",
|
||||
"Contains",
|
||||
"Greater than",
|
||||
"Less than",
|
||||
"Is set",
|
||||
"Is empty",
|
||||
"Starts with",
|
||||
"Ends with"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"joiner": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"AND",
|
||||
"OR"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"comparisons"
|
||||
]
|
||||
},
|
||||
"updates": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fieldName": {
|
||||
"type": "string"
|
||||
},
|
||||
"value": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"action"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"type"
|
||||
]
|
||||
}
|
||||
],
|
||||
"title": "Block"
|
||||
|
||||
Reference in New Issue
Block a user