{"id":16577584,"url":"https://github.com/proddata/node-red-contrib-cratedb","last_synced_at":"2026-02-17T01:02:33.193Z","repository":{"id":233104136,"uuid":"395956539","full_name":"proddata/node-red-contrib-cratedb","owner":"proddata","description":"Query and ingest data with CrateDB directly from within Node-RED","archived":false,"fork":false,"pushed_at":"2025-02-23T20:09:35.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-06T16:35:48.404Z","etag":null,"topics":["cratedb","cratedb-client","node-red"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/proddata.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-14T09:21:57.000Z","updated_at":"2025-02-23T20:09:36.000Z","dependencies_parsed_at":"2024-04-13T22:08:21.417Z","dependency_job_id":"ab6a1eb0-2a9d-4403-b1c3-ee09bdba5f11","html_url":"https://github.com/proddata/node-red-contrib-cratedb","commit_stats":null,"previous_names":["proddata/node-red-contrib-cratedb"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/proddata/node-red-contrib-cratedb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/proddata%2Fnode-red-contrib-cratedb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/proddata%2Fnode-red-contrib-cratedb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/proddata%2Fnode-red-contrib-cratedb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/proddata%2Fnode-red-contrib-cratedb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/proddata","download_url":"https://codeload.github.com/proddata/node-red-contrib-cratedb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/proddata%2Fnode-red-contrib-cratedb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29528242,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T00:57:22.232Z","status":"ssl_error","status_checked_at":"2026-02-17T00:54:25.811Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cratedb","cratedb-client","node-red"],"created_at":"2024-10-11T22:11:29.904Z","updated_at":"2026-02-17T01:02:33.104Z","avatar_url":"https://github.com/proddata.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-red-contrib-cratedb\n\nnode-red-contrib-cratedb is a [**Node-RED**](https://nodered.org/) node designed\nto interface with the [**CrateDB**](https://crate.io/) 🐐 through its [**HTTP\nendpoint**](https://cratedb.com/docs/crate/reference/en/5.6/interfaces/http.html) (port 4200). There are nodes for general queries and for bulk ingestion.\n\n\n\u003e [!WARNING]\n\u003e This project is currently under development and should not be used in production\n\u003e environments. It is not an official CrateDB project and is developed\n\u003e independently from Crate.io.\n\n\nThere are two types of nodes:\n\n## Query Node\n\nYou can run any kind of query against a CrateDB Cluster. Queries can be configured\nin the node configuration or passed in as a message property.\n\n```json\n{\n    \"stmt\": \"SELECT * FROM my_table WHERE id = ?\",\n    \"args\": [1]\n}\n```\n\nif you want to use bulk args you can pass\n    \n```json\n{\n    \"stmt\": \"INSERT INTO my_table (id, name) VALUES (?, ?)\",\n    \"bulk_args\": [[1, \"Alice\"], [2, \"Bob\"]]\n}\n ```\n\n## Ingest Node\n\nDesigned for data ingestion, this node accepts `msg.payload` containing the data\nto be inserted into a CrateDB table. The payload can be either a single object\nor an array of objects.\n\n- Single object:\n    ```json\n    {\n        \"id\": 1,\n        \"name\": \"Alice\"\n    }\n    ```\n\n- Array of objects:\n    ```json\n    [\n        {\n            \"id\": 1,\n            \"name\": \"Alice\"\n        },\n        {\n            \"id\": 2,\n            \"name\": \"Bob\"\n        }\n    ]\n    ```\n\nData insertion defaults to the table specified in the node configuration, but \ncan be overridden with `msg.table`.\n\n\n### Override Table:\n\n```json\n{\n    \"table\": \"my_table\",\n    \"payload\": {\n        \"id\": 1,\n        \"name\": \"Alice\"\n    }\n}\n```\n\n### Disable Mapping:\n\nThis can be disabled by setting the `msg.map` property to `false` or in the\nnode settings. In this case the object is inserted into the `payload` column as\na JSON object.\n\n```json\n{\n    \"table\": \"my_table\",\n    \"map\": false,\n    \"payload\": {\n        \"id\": 1,\n        \"name\": \"Alice\"\n    }\n}\n```\n\n### Schema Preparation:\n\nFor direct mapping, ensure your table schema is predefined:\n\n```sql\nCREATE TABLE IF NOT EXISTS my_table (\n    id INTEGER,\n    name STRING,\n    ts GENERATED ALWAYS AS CURRENT_TIMESTAMP\n);\n```\n\nFor storing in a single payload column:\n\n```sql\nCREATE TABLE IF NOT EXISTS my_table (\n    payload OBJECT(DYNAMIC),\n    ts GENERATED ALWAYS AS CURRENT_TIMESTAMP\n);\n```\n\n\n# Develop\n\nTo installsthe node-red-contrib-cratedb node, navigate to your Node-RED installation directory and run:\n\n```\ncd ~/.node-red\nnpm install \u003cpath_to_repo\u003e/node-red-contrib-cratedb\n```\n\n\n\u003e [!NOTE] \n\u003e CrateDB and the CrateDB logo are trademarks of Crate.io. All rights reserved.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fproddata%2Fnode-red-contrib-cratedb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fproddata%2Fnode-red-contrib-cratedb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fproddata%2Fnode-red-contrib-cratedb/lists"}