{"id":15437979,"url":"https://github.com/rayokota/kafka-connect-jsonata","last_synced_at":"2025-04-19T18:48:33.938Z","repository":{"id":248455732,"uuid":"828635368","full_name":"rayokota/kafka-connect-jsonata","owner":"rayokota","description":"Kafka Connect JSONata Transform","archived":false,"fork":false,"pushed_at":"2025-02-24T02:29:04.000Z","size":41,"stargazers_count":10,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-16T15:14:21.886Z","etag":null,"topics":["connect","jsonata","kafka","transform"],"latest_commit_sha":null,"homepage":"","language":"Java","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/rayokota.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,"zenodo":null}},"created_at":"2024-07-14T18:26:40.000Z","updated_at":"2025-04-15T07:46:54.000Z","dependencies_parsed_at":"2025-04-16T12:48:24.643Z","dependency_job_id":"bd156df8-12b3-4538-920e-a7e46bb97bdd","html_url":"https://github.com/rayokota/kafka-connect-jsonata","commit_stats":null,"previous_names":["rayokota/kafka-connect-jsonata"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rayokota%2Fkafka-connect-jsonata","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rayokota%2Fkafka-connect-jsonata/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rayokota%2Fkafka-connect-jsonata/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rayokota%2Fkafka-connect-jsonata/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rayokota","download_url":"https://codeload.github.com/rayokota/kafka-connect-jsonata/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249769336,"owners_count":21323065,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["connect","jsonata","kafka","transform"],"created_at":"2024-10-01T19:00:14.461Z","updated_at":"2025-04-19T18:48:33.920Z","avatar_url":"https://github.com/rayokota.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kafka Connect JSONata Transform\n\nA [Kafka Connect][connect] plugin that uses a [JSONata][jsonata] expression\nto transform the Kafka Connect record.\n\n## Installation\n\nYou can install or download the latest version of the plugin from\n[Confluent Hub][confluent-hub].\n\n### Configuration Examples\n\nSkip tombstone records:\n\n```\n\"transforms\": \"jsonata\",\n\"transforms.jsonata.type\": \"io.yokota.kafka.connect.transform.jsonata.JsonataTransformation\",\n\"transforms.jsonata.expr\": \"value = null ? null : $\"\n```\n\nDrop the record key and it's schema:\n\n```\n\"transforms\": \"jsonata\",\n\"transforms.jsonata.type\": \"io.yokota.kafka.connect.transform.jsonata.JsonataTransformation\",\n\"transforms.jsonata.expr\": \"$sift($, function($v, $k) {$k != 'keySchema' and $k != 'key'})\"\n```\n\nFor more examples, see this [blog](https://yokota.blog/2024/07/15/jsonata-the-missing-declarative-language-for-kafka-connect/).\n\n### Configuration Reference\n\n#### `expr`\n\nThe JSONata expression to apply to the Kafka Connect record.\n\n#### `timeout.ms`\n\nThe maximum amount of time to wait (in ms) for the JSONata transformation to complete.  Default is 5000.\n\n#### `max.depth`\n\nThe maximum number of recursive calls allowed for the JSONata transformation.  Default is 1000.\n\n## License\n\nThis codebase is licensed under the Apache License 2.0. See the\n`LICENSE` file for more details.\n\n[confluent-hub]: https://www.confluent.io/hub/rayokota/kafka-connect-jsonata\n[jsonata]: https://jsonata.org\n[connect]: https://docs.confluent.io/platform/current/connect/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frayokota%2Fkafka-connect-jsonata","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frayokota%2Fkafka-connect-jsonata","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frayokota%2Fkafka-connect-jsonata/lists"}