{"id":16679263,"url":"https://github.com/ryan-gordon/elasticsearch-crud-openapi","last_synced_at":"2025-10-25T12:22:34.963Z","repository":{"id":79095854,"uuid":"141835742","full_name":"Ryan-Gordon/elasticsearch-crud-openapi","owner":"Ryan-Gordon","description":"OpenAPI documented REST API for contacting ElasticSearch. ","archived":false,"fork":false,"pushed_at":"2018-11-11T15:41:36.000Z","size":13,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-02T17:22:30.026Z","etag":null,"topics":["connexion","crud","elasticsearch","elasticsearch-client","openapi","python","rest-api","swagger-ui","tornado"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ryan-Gordon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2018-07-21T18:10:56.000Z","updated_at":"2024-05-12T06:52:15.000Z","dependencies_parsed_at":"2023-07-03T13:31:00.710Z","dependency_job_id":null,"html_url":"https://github.com/Ryan-Gordon/elasticsearch-crud-openapi","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ryan-Gordon%2Felasticsearch-crud-openapi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ryan-Gordon%2Felasticsearch-crud-openapi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ryan-Gordon%2Felasticsearch-crud-openapi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ryan-Gordon%2Felasticsearch-crud-openapi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ryan-Gordon","download_url":"https://codeload.github.com/Ryan-Gordon/elasticsearch-crud-openapi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254121302,"owners_count":22018140,"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":["connexion","crud","elasticsearch","elasticsearch-client","openapi","python","rest-api","swagger-ui","tornado"],"created_at":"2024-10-12T13:34:24.868Z","updated_at":"2025-10-25T12:22:34.883Z","avatar_url":"https://github.com/Ryan-Gordon.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![All Contributors](https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square)](#contributors)\n\n# ElasticSearch CRUD OpenAPI\n\nThe repo lets you visually send HTTP requests to your ElasticSearch Datastore using its REST API.\n\nAlternatively you can use it to relay requets from your ElasticSearch as a Gateway\n\n#### Supported Functions\n##### CRUD\nCreate, Read, Update, Delete --\u003e All 4 are supported. Most of these require an index,doc_type and ID.\n\nQuery Functions:\nSearch --\u003e search the elastic db for documents which match your provided query\nDeleteByQuery --\u003e delete documents in the elastic db using a search query rather than specifying an ID \n\n\n## Contributors\n\nThanks goes to these wonderful people ([emoji key](https://github.com/kentcdodds/all-contributors#emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START --\u003e\n\u003c!-- prettier-ignore --\u003e\n| [\u003cimg src=\"https://avatars1.githubusercontent.com/u/11082710?v=4\" width=\"100px;\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRyan Gordon\u003c/b\u003e\u003c/sub\u003e](https://github.com/Ryan-Gordon)\u003cbr /\u003e[💻](https://github.com/Ryan-Gordon/elasticsearch-crud-openapi/commits?author=Ryan-Gordon \"Code\") [📖](https://github.com/Ryan-Gordon/elasticsearch-crud-openapi/commits?author=Ryan-Gordon \"Documentation\") |\n| :---: |\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!\nPlease see CONTRIBUTING.md for more info.\n\n## Installation\nYou have two options in how you want to run this application. Standalone with python 3 or through a Docker container\n\n### Setting up with Docker:\nThe repo comes with a Dockerfile which is a great way to get set up quickly with a container you can destroy when done.\n\nTo build an image from Dockerfile  \n`docker build -t ryangordon/elasticsearch-crud-api . `  \nThen run your image :  \n`docker run -p 2025:2025 -e ELASTICSEARCH_URL=\"\u003cYOUR_ES_URL\u003e\"  ryangordon/elasticsearch-crud-api`  \n\n*NOTE* If you are running your ES instance on localhost you may need to do one of the steps in the Notes section.\n\n### Setting up with just python\n\nIf you are running with python by itself, you may need to specify the location of the Elasticsearch instance. The default is `http://localhost:9200` which is also the default used by Elastic. Not specifying will mean the API will try to use this.\nTo set a different a different instance run this in terminal :  \n\n```bash\nexport ELASTICSEARCH_URL=\"\u003cYOUR_ES_URL\u003e\"\n```\n\n\n### Notes:\nIf you are connecting to an Elasticsearch instance on your `localhost` and using docker you may need to do one of the following:\n\n+ Connect to your machines IP instead of localhost -\u003e this involves connecting to some IP like `192.168.1.X`. You can find your IP with `ifconfig`\n+ Use the arguement `--net=\"host\"` in your docker run command. Then [your docker container will point to your docker host.](https://stackoverflow.com/questions/24319662/from-inside-of-a-docker-container-how-do-i-connect-to-the-localhost-of-the-mach)\n+ Connect to the special DNS name `host.docker.internal` which should point to your machines localhost. You still need to specify port\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryan-gordon%2Felasticsearch-crud-openapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryan-gordon%2Felasticsearch-crud-openapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryan-gordon%2Felasticsearch-crud-openapi/lists"}