{"id":16612908,"url":"https://github.com/ttys3/elastic-wrapper-go","last_synced_at":"2025-06-26T01:37:45.062Z","repository":{"id":151007967,"uuid":"621333928","full_name":"ttys3/elastic-wrapper-go","owner":"ttys3","description":"a better elastic search sdk wrapper for golang (with response struct support)","archived":false,"fork":false,"pushed_at":"2023-10-25T22:33:18.000Z","size":87,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-17T15:42:38.197Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ttys3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.go","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":"2023-03-30T13:05:41.000Z","updated_at":"2023-03-30T13:30:16.000Z","dependencies_parsed_at":"2025-01-17T15:36:53.014Z","dependency_job_id":"75c78dd7-6759-410e-bad1-deb80d7a2572","html_url":"https://github.com/ttys3/elastic-wrapper-go","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/ttys3%2Felastic-wrapper-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Felastic-wrapper-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Felastic-wrapper-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttys3%2Felastic-wrapper-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ttys3","download_url":"https://codeload.github.com/ttys3/elastic-wrapper-go/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242917698,"owners_count":20206515,"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":[],"created_at":"2024-10-12T01:45:17.935Z","updated_at":"2025-03-10T19:47:45.893Z","avatar_url":"https://github.com/ttys3.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# elastic-wrapper-go\n\nA tiny golang wrapper for elasticsearch-go client SDK, supporting common operations with friendly interfaces.\n\n1. tracing support\n2. typed api call\n3. response struct included\n\n## documentation\n\nhttps://www.elastic.co/guide/en/elasticsearch/reference/8.4/api-conventions.html\n\n### JSON encoding\n\n\u003e Elasticsearch only supports UTF-8-encoded JSON.\n\u003e Elasticsearch ignores any other encoding headings sent with a request.\n\u003e Responses are also UTF-8 encoded.\n\n\n### tracing\n\n\u003e Elasticsearch also supports a traceparent HTTP header using the official W3C trace context spec.\n\u003e You can use the `traceparent` header to trace requests across Elastic products and other services.\n\u003e Because it’s only used for traces, you can safely generate a unique `traceparent` header for each request.\n\n\u003e If provided, Elasticsearch surfaces the header’s trace-id value as `trace.id` in the:\n\n[JSON Elasticsearch server logs](https://www.elastic.co/guide/en/elasticsearch/reference/8.4/logging.html)\n[Slow logs](https://www.elastic.co/guide/en/elasticsearch/reference/8.4/index-modules-slowlog.html#_identifying_search_slow_log_origin)\n[Deprecation logs](https://www.elastic.co/guide/en/elasticsearch/reference/8.4/logging.html#deprecation-logging)\n\n### GET and POST requests\n\u003e A number of Elasticsearch GET APIs—​most notably the search API—​support a request body.\n\u003e While the GET action makes sense in the context of retrieving information, GET requests with a body are not supported by all HTTP libraries.\n\u003e All Elasticsearch GET APIs that require a body can also be submitted as POST requests.\n\u003e Alternatively, you can pass the request body as the source query string parameter when using GET.\n\n### REST API version compatibility\n\nelasticsearch server REST API version compatibility\n\nhttps://www.elastic.co/guide/en/elasticsearch/reference/8.4/api-conventions.html#api-compatibility\n\n### Number Values\nAll REST APIs support providing numbered parameters as string on top of supporting the native JSON number types.\n\n### Distance Units\n\nWherever distances need to be specified, such as the distance parameter\nin the [Geo-distance](https://www.elastic.co/guide/en/elasticsearch/reference/8.4/query-dsl-geo-distance-query.html),\nthe default unit is meters if none is specified. Distances can be specified in other units, such as \"1km\" or \"2mi\" (2 miles).\n\nThe full list of units is listed below:\n\nhttps://www.elastic.co/guide/en/elasticsearch/reference/8.4/api-conventions.html#distance-units\n\n### client SDK compatibility\n\nhttps://www.elastic.co/guide/en/elasticsearch/client/go-api/current/installation.html#_elasticsearch_version_compatibility\n\nElasticsearch Version Compatibility\n\nLanguage clients are forward compatible; meaning that clients support communicating with greater or equal minor versions of Elasticsearch.\n\nElasticsearch language clients are only backwards compatible with default distributions and without guarantees made.\n\n### Typed API\n\nhttps://www.elastic.co/guide/en/elasticsearch/client/go-api/current/typedapi.html\n\n* go sdk v8 begin support Typed API\n\n\u003e The goal for this API is to provide a strongly typed, fluent-like Golang API for Elasticsearch.\n\n\u003e This was designed with structures and the Golang runtime in mind, following as closely as possible the API and its objects.\n\n\u003e The first version focuses on the requests and does not yet include [NDJSON](http://ndjson.org/) endpoints such as bulk or msearch.\n\u003e These will be added later on along with typed responses and error handling.``\n\nNDJSON and JSON streaming （https://en.wikipedia.org/wiki/JSON_streaming）\n\n[Newline delimited JSON is awesome](https://medium.com/@kandros/newline-delimited-json-is-awesome-8f6259ed4b4b)\n\n* All the available endpoints are generated in separate packages and assembled in the client. The core namespace is duplicated at the root of the client for convenient access.\n\nEach endpoint follows a factory pattern which returns a pointer to a new instance each time. This leads to a builder pattern allowing to directly chain the options before running your query.\n\n* `Do` need `context`, For body-empty endpoints such as `core.Exists`, an additional method `IsSuccess` is available.\n\n* Responsese: While not part of the initial release responses will be added at a later date.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttys3%2Felastic-wrapper-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fttys3%2Felastic-wrapper-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttys3%2Felastic-wrapper-go/lists"}