Zinc Search engine API documents https://docs.zincsearch.com
This API client was generated by the OpenAPI Generator project. By using the OpenAPI-spec from a remote server, you can easily generate an API client.
Install the following dependencies:
go get github.com/stretchr/testify/assert
go get golang.org/x/oauth2
go get golang.org/x/net/context
Put the package under your project folder and add the following in import:
import client "github.com/zinclabs/sdk-go-zincsearch"
To use a proxy, set the environment variable HTTP_PROXY
:
os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")
Default configuration comes with Servers
field that contains server objects as defined in the OpenAPI specification.
For using other server than the one defined on index 0 set context value sw.ContextServerIndex
of type int
.
ctx := context.WithValue(context.Background(), client.ContextServerIndex, 1)
Templated server URL is formatted using default variables from configuration or from context value sw.ContextServerVariables
of type map[string]string
.
ctx := context.WithValue(context.Background(), client.ContextServerVariables, map[string]string{
"basePath": "v2",
})
Note, enum values are always validated and all unused variables are silently ignored.
Each operation can use different server URL defined using OperationServers
map in the Configuration
.
An operation is uniquely identified by "{classname}Service.{nickname}"
string.
Similar rules for overriding default operation server index and variables applies by using sw.ContextOperationServerIndices
and sw.ContextOperationServerVariables
context maps.
ctx := context.WithValue(context.Background(), client.ContextOperationServerIndices, map[string]int{
"{classname}Service.{nickname}": 2,
})
ctx = context.WithValue(context.Background(), client.ContextOperationServerVariables, map[string]map[string]string{
"{classname}Service.{nickname}": {
"port": "8443",
},
})
All URIs are relative to http://localhost:4080
Class | Method | HTTP request | Description |
---|---|---|---|
Default | Healthz | Get /healthz | Get healthz |
Default | Version | Get /version | Get version |
Document | Bulk | Post /api/_bulk | Bulk documents |
Document | Bulkv2 | Post /api/_bulkv2 | Bulkv2 documents |
Document | Delete | Delete /api/{index}/_doc/{id} | Delete document |
Document | ESBulk | Post /es/_bulk | ES bulk documents |
Document | Index | Post /api/{index}/_doc | Create or update document |
Document | IndexWithID | Put /api/{index}/_doc/{id} | Create or update document with id |
Document | Multi | Post /api/{index}/_multi | Multi documents |
Document | Update | Post /api/{index}/_update/{id} | Update document with id |
Index | AddOrRemoveESAlias | Post /es/_aliases | Add or remove index alias for compatible ES |
Index | Analyze | Post /api/_analyze | Analyze |
Index | AnalyzeIndex | Post /api/{index}/_analyze | Analyze |
Index | Create | Post /api/index | Create index |
Index | CreateTemplate | Post /es/_index_template | Create update index template |
Index | Delete | Delete /api/index/{index} | Delete index |
Index | DeleteTemplate | Delete /es/_index_template/{name} | Delete template |
Index | ESCreateIndex | Put /es/{index} | Create index for compatible ES |
Index | ESGetMapping | Get /es/{index}/_mapping | Get index mappings for compatible ES |
Index | EsExists | Head /es/{index} | Checks if the index exists for compatible ES |
Index | Exists | Head /api/index/{index} | Checks if the index exists |
Index | GetESAliases | Get /es/{target}/_alias/{target_alias} | Get index alias for compatible ES |
Index | GetIndex | Get /api/index/{index} | Get index metadata |
Index | GetMapping | Get /api/{index}/_mapping | Get index mappings |
Index | GetSettings | Get /api/{index}/_settings | Get index settings |
Index | GetTemplate | Get /es/_index_template/{name} | Get index template |
Index | IndexNameList | Get /api/index_name | List index Name |
Index | List | Get /api/index | List indexes |
Index | ListTemplates | Get /es/_index_template | List index teplates |
Index | Refresh | Post /api/index/{index}/refresh | Resfresh index |
Index | SetMapping | Put /api/{index}/_mapping | Set index mappings |
Index | SetSettings | Put /api/{index}/_settings | Set index Settings |
Index | UpdateTemplate | Put /es/_index_template/{name} | Create update index template |
Search | DeleteByQuery | Post /es/{index}/_delete_by_query | Searches the index and deletes all matched documents |
Search | MSearch | Post /es/_msearch | Search V2 MultipleSearch for compatible ES |
Search | Search | Post /es/{index}/_search | Search V2 DSL for compatible ES |
Search | SearchV1 | Post /api/{index}/_search | Search V1 |
User | Create | Post /api/user | Create user |
User | Delete | Delete /api/user/{id} | Delete user |
User | List | Get /api/user | List user |
User | Login | Post /api/login | Login |
User | Update | Put /api/user | Update user |
Example
auth := context.WithValue(context.Background(), client.ContextBasicAuth, client.BasicAuth{
UserName: "username",
Password: "password",
})
r, err := client.Service.Operation(auth, args)
Due to the fact that model structure members are all pointers, this package contains a number of utility functions to easily obtain pointers to values of basic types. Each of these functions takes a value of the given basic type and returns a pointer to it:
PtrBool
PtrInt
PtrInt32
PtrInt64
PtrFloat
PtrFloat32
PtrFloat64
PtrString
PtrTime