api.go 55 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package elasticsearchservice provides a client for Amazon Elasticsearch Service.
  3. package elasticsearchservice
  4. import (
  5. "fmt"
  6. "time"
  7. "github.com/aws/aws-sdk-go/aws/awsutil"
  8. "github.com/aws/aws-sdk-go/aws/request"
  9. "github.com/aws/aws-sdk-go/private/protocol"
  10. "github.com/aws/aws-sdk-go/private/protocol/restjson"
  11. )
  12. const opAddTags = "AddTags"
  13. // AddTagsRequest generates a "aws/request.Request" representing the
  14. // client's request for the AddTags operation. The "output" return
  15. // value can be used to capture response data after the request's "Send" method
  16. // is called.
  17. //
  18. // Creating a request object using this method should be used when you want to inject
  19. // custom logic into the request's lifecycle using a custom handler, or if you want to
  20. // access properties on the request object before or after sending the request. If
  21. // you just want the service response, call the AddTags method directly
  22. // instead.
  23. //
  24. // Note: You must call the "Send" method on the returned request object in order
  25. // to execute the request.
  26. //
  27. // // Example sending a request using the AddTagsRequest method.
  28. // req, resp := client.AddTagsRequest(params)
  29. //
  30. // err := req.Send()
  31. // if err == nil { // resp is now filled
  32. // fmt.Println(resp)
  33. // }
  34. //
  35. func (c *ElasticsearchService) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) {
  36. op := &request.Operation{
  37. Name: opAddTags,
  38. HTTPMethod: "POST",
  39. HTTPPath: "/2015-01-01/tags",
  40. }
  41. if input == nil {
  42. input = &AddTagsInput{}
  43. }
  44. req = c.newRequest(op, input, output)
  45. req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler)
  46. req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
  47. output = &AddTagsOutput{}
  48. req.Data = output
  49. return
  50. }
  51. // Attaches tags to an existing Elasticsearch domain. Tags are a set of case-sensitive
  52. // key value pairs. An Elasticsearch domain may have up to 10 tags. See Tagging
  53. // Amazon Elasticsearch Service Domains for more information. (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-awsresorcetagging"
  54. // target="_blank)
  55. func (c *ElasticsearchService) AddTags(input *AddTagsInput) (*AddTagsOutput, error) {
  56. req, out := c.AddTagsRequest(input)
  57. err := req.Send()
  58. return out, err
  59. }
  60. const opCreateElasticsearchDomain = "CreateElasticsearchDomain"
  61. // CreateElasticsearchDomainRequest generates a "aws/request.Request" representing the
  62. // client's request for the CreateElasticsearchDomain operation. The "output" return
  63. // value can be used to capture response data after the request's "Send" method
  64. // is called.
  65. //
  66. // Creating a request object using this method should be used when you want to inject
  67. // custom logic into the request's lifecycle using a custom handler, or if you want to
  68. // access properties on the request object before or after sending the request. If
  69. // you just want the service response, call the CreateElasticsearchDomain method directly
  70. // instead.
  71. //
  72. // Note: You must call the "Send" method on the returned request object in order
  73. // to execute the request.
  74. //
  75. // // Example sending a request using the CreateElasticsearchDomainRequest method.
  76. // req, resp := client.CreateElasticsearchDomainRequest(params)
  77. //
  78. // err := req.Send()
  79. // if err == nil { // resp is now filled
  80. // fmt.Println(resp)
  81. // }
  82. //
  83. func (c *ElasticsearchService) CreateElasticsearchDomainRequest(input *CreateElasticsearchDomainInput) (req *request.Request, output *CreateElasticsearchDomainOutput) {
  84. op := &request.Operation{
  85. Name: opCreateElasticsearchDomain,
  86. HTTPMethod: "POST",
  87. HTTPPath: "/2015-01-01/es/domain",
  88. }
  89. if input == nil {
  90. input = &CreateElasticsearchDomainInput{}
  91. }
  92. req = c.newRequest(op, input, output)
  93. output = &CreateElasticsearchDomainOutput{}
  94. req.Data = output
  95. return
  96. }
  97. // Creates a new Elasticsearch domain. For more information, see Creating Elasticsearch
  98. // Domains (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains"
  99. // target="_blank) in the Amazon Elasticsearch Service Developer Guide.
  100. func (c *ElasticsearchService) CreateElasticsearchDomain(input *CreateElasticsearchDomainInput) (*CreateElasticsearchDomainOutput, error) {
  101. req, out := c.CreateElasticsearchDomainRequest(input)
  102. err := req.Send()
  103. return out, err
  104. }
  105. const opDeleteElasticsearchDomain = "DeleteElasticsearchDomain"
  106. // DeleteElasticsearchDomainRequest generates a "aws/request.Request" representing the
  107. // client's request for the DeleteElasticsearchDomain operation. The "output" return
  108. // value can be used to capture response data after the request's "Send" method
  109. // is called.
  110. //
  111. // Creating a request object using this method should be used when you want to inject
  112. // custom logic into the request's lifecycle using a custom handler, or if you want to
  113. // access properties on the request object before or after sending the request. If
  114. // you just want the service response, call the DeleteElasticsearchDomain method directly
  115. // instead.
  116. //
  117. // Note: You must call the "Send" method on the returned request object in order
  118. // to execute the request.
  119. //
  120. // // Example sending a request using the DeleteElasticsearchDomainRequest method.
  121. // req, resp := client.DeleteElasticsearchDomainRequest(params)
  122. //
  123. // err := req.Send()
  124. // if err == nil { // resp is now filled
  125. // fmt.Println(resp)
  126. // }
  127. //
  128. func (c *ElasticsearchService) DeleteElasticsearchDomainRequest(input *DeleteElasticsearchDomainInput) (req *request.Request, output *DeleteElasticsearchDomainOutput) {
  129. op := &request.Operation{
  130. Name: opDeleteElasticsearchDomain,
  131. HTTPMethod: "DELETE",
  132. HTTPPath: "/2015-01-01/es/domain/{DomainName}",
  133. }
  134. if input == nil {
  135. input = &DeleteElasticsearchDomainInput{}
  136. }
  137. req = c.newRequest(op, input, output)
  138. output = &DeleteElasticsearchDomainOutput{}
  139. req.Data = output
  140. return
  141. }
  142. // Permanently deletes the specified Elasticsearch domain and all of its data.
  143. // Once a domain is deleted, it cannot be recovered.
  144. func (c *ElasticsearchService) DeleteElasticsearchDomain(input *DeleteElasticsearchDomainInput) (*DeleteElasticsearchDomainOutput, error) {
  145. req, out := c.DeleteElasticsearchDomainRequest(input)
  146. err := req.Send()
  147. return out, err
  148. }
  149. const opDescribeElasticsearchDomain = "DescribeElasticsearchDomain"
  150. // DescribeElasticsearchDomainRequest generates a "aws/request.Request" representing the
  151. // client's request for the DescribeElasticsearchDomain operation. The "output" return
  152. // value can be used to capture response data after the request's "Send" method
  153. // is called.
  154. //
  155. // Creating a request object using this method should be used when you want to inject
  156. // custom logic into the request's lifecycle using a custom handler, or if you want to
  157. // access properties on the request object before or after sending the request. If
  158. // you just want the service response, call the DescribeElasticsearchDomain method directly
  159. // instead.
  160. //
  161. // Note: You must call the "Send" method on the returned request object in order
  162. // to execute the request.
  163. //
  164. // // Example sending a request using the DescribeElasticsearchDomainRequest method.
  165. // req, resp := client.DescribeElasticsearchDomainRequest(params)
  166. //
  167. // err := req.Send()
  168. // if err == nil { // resp is now filled
  169. // fmt.Println(resp)
  170. // }
  171. //
  172. func (c *ElasticsearchService) DescribeElasticsearchDomainRequest(input *DescribeElasticsearchDomainInput) (req *request.Request, output *DescribeElasticsearchDomainOutput) {
  173. op := &request.Operation{
  174. Name: opDescribeElasticsearchDomain,
  175. HTTPMethod: "GET",
  176. HTTPPath: "/2015-01-01/es/domain/{DomainName}",
  177. }
  178. if input == nil {
  179. input = &DescribeElasticsearchDomainInput{}
  180. }
  181. req = c.newRequest(op, input, output)
  182. output = &DescribeElasticsearchDomainOutput{}
  183. req.Data = output
  184. return
  185. }
  186. // Returns domain configuration information about the specified Elasticsearch
  187. // domain, including the domain ID, domain endpoint, and domain ARN.
  188. func (c *ElasticsearchService) DescribeElasticsearchDomain(input *DescribeElasticsearchDomainInput) (*DescribeElasticsearchDomainOutput, error) {
  189. req, out := c.DescribeElasticsearchDomainRequest(input)
  190. err := req.Send()
  191. return out, err
  192. }
  193. const opDescribeElasticsearchDomainConfig = "DescribeElasticsearchDomainConfig"
  194. // DescribeElasticsearchDomainConfigRequest generates a "aws/request.Request" representing the
  195. // client's request for the DescribeElasticsearchDomainConfig operation. The "output" return
  196. // value can be used to capture response data after the request's "Send" method
  197. // is called.
  198. //
  199. // Creating a request object using this method should be used when you want to inject
  200. // custom logic into the request's lifecycle using a custom handler, or if you want to
  201. // access properties on the request object before or after sending the request. If
  202. // you just want the service response, call the DescribeElasticsearchDomainConfig method directly
  203. // instead.
  204. //
  205. // Note: You must call the "Send" method on the returned request object in order
  206. // to execute the request.
  207. //
  208. // // Example sending a request using the DescribeElasticsearchDomainConfigRequest method.
  209. // req, resp := client.DescribeElasticsearchDomainConfigRequest(params)
  210. //
  211. // err := req.Send()
  212. // if err == nil { // resp is now filled
  213. // fmt.Println(resp)
  214. // }
  215. //
  216. func (c *ElasticsearchService) DescribeElasticsearchDomainConfigRequest(input *DescribeElasticsearchDomainConfigInput) (req *request.Request, output *DescribeElasticsearchDomainConfigOutput) {
  217. op := &request.Operation{
  218. Name: opDescribeElasticsearchDomainConfig,
  219. HTTPMethod: "GET",
  220. HTTPPath: "/2015-01-01/es/domain/{DomainName}/config",
  221. }
  222. if input == nil {
  223. input = &DescribeElasticsearchDomainConfigInput{}
  224. }
  225. req = c.newRequest(op, input, output)
  226. output = &DescribeElasticsearchDomainConfigOutput{}
  227. req.Data = output
  228. return
  229. }
  230. // Provides cluster configuration information about the specified Elasticsearch
  231. // domain, such as the state, creation date, update version, and update date
  232. // for cluster options.
  233. func (c *ElasticsearchService) DescribeElasticsearchDomainConfig(input *DescribeElasticsearchDomainConfigInput) (*DescribeElasticsearchDomainConfigOutput, error) {
  234. req, out := c.DescribeElasticsearchDomainConfigRequest(input)
  235. err := req.Send()
  236. return out, err
  237. }
  238. const opDescribeElasticsearchDomains = "DescribeElasticsearchDomains"
  239. // DescribeElasticsearchDomainsRequest generates a "aws/request.Request" representing the
  240. // client's request for the DescribeElasticsearchDomains operation. The "output" return
  241. // value can be used to capture response data after the request's "Send" method
  242. // is called.
  243. //
  244. // Creating a request object using this method should be used when you want to inject
  245. // custom logic into the request's lifecycle using a custom handler, or if you want to
  246. // access properties on the request object before or after sending the request. If
  247. // you just want the service response, call the DescribeElasticsearchDomains method directly
  248. // instead.
  249. //
  250. // Note: You must call the "Send" method on the returned request object in order
  251. // to execute the request.
  252. //
  253. // // Example sending a request using the DescribeElasticsearchDomainsRequest method.
  254. // req, resp := client.DescribeElasticsearchDomainsRequest(params)
  255. //
  256. // err := req.Send()
  257. // if err == nil { // resp is now filled
  258. // fmt.Println(resp)
  259. // }
  260. //
  261. func (c *ElasticsearchService) DescribeElasticsearchDomainsRequest(input *DescribeElasticsearchDomainsInput) (req *request.Request, output *DescribeElasticsearchDomainsOutput) {
  262. op := &request.Operation{
  263. Name: opDescribeElasticsearchDomains,
  264. HTTPMethod: "POST",
  265. HTTPPath: "/2015-01-01/es/domain-info",
  266. }
  267. if input == nil {
  268. input = &DescribeElasticsearchDomainsInput{}
  269. }
  270. req = c.newRequest(op, input, output)
  271. output = &DescribeElasticsearchDomainsOutput{}
  272. req.Data = output
  273. return
  274. }
  275. // Returns domain configuration information about the specified Elasticsearch
  276. // domains, including the domain ID, domain endpoint, and domain ARN.
  277. func (c *ElasticsearchService) DescribeElasticsearchDomains(input *DescribeElasticsearchDomainsInput) (*DescribeElasticsearchDomainsOutput, error) {
  278. req, out := c.DescribeElasticsearchDomainsRequest(input)
  279. err := req.Send()
  280. return out, err
  281. }
  282. const opListDomainNames = "ListDomainNames"
  283. // ListDomainNamesRequest generates a "aws/request.Request" representing the
  284. // client's request for the ListDomainNames operation. The "output" return
  285. // value can be used to capture response data after the request's "Send" method
  286. // is called.
  287. //
  288. // Creating a request object using this method should be used when you want to inject
  289. // custom logic into the request's lifecycle using a custom handler, or if you want to
  290. // access properties on the request object before or after sending the request. If
  291. // you just want the service response, call the ListDomainNames method directly
  292. // instead.
  293. //
  294. // Note: You must call the "Send" method on the returned request object in order
  295. // to execute the request.
  296. //
  297. // // Example sending a request using the ListDomainNamesRequest method.
  298. // req, resp := client.ListDomainNamesRequest(params)
  299. //
  300. // err := req.Send()
  301. // if err == nil { // resp is now filled
  302. // fmt.Println(resp)
  303. // }
  304. //
  305. func (c *ElasticsearchService) ListDomainNamesRequest(input *ListDomainNamesInput) (req *request.Request, output *ListDomainNamesOutput) {
  306. op := &request.Operation{
  307. Name: opListDomainNames,
  308. HTTPMethod: "GET",
  309. HTTPPath: "/2015-01-01/domain",
  310. }
  311. if input == nil {
  312. input = &ListDomainNamesInput{}
  313. }
  314. req = c.newRequest(op, input, output)
  315. output = &ListDomainNamesOutput{}
  316. req.Data = output
  317. return
  318. }
  319. // Returns the name of all Elasticsearch domains owned by the current user's
  320. // account.
  321. func (c *ElasticsearchService) ListDomainNames(input *ListDomainNamesInput) (*ListDomainNamesOutput, error) {
  322. req, out := c.ListDomainNamesRequest(input)
  323. err := req.Send()
  324. return out, err
  325. }
  326. const opListTags = "ListTags"
  327. // ListTagsRequest generates a "aws/request.Request" representing the
  328. // client's request for the ListTags operation. The "output" return
  329. // value can be used to capture response data after the request's "Send" method
  330. // is called.
  331. //
  332. // Creating a request object using this method should be used when you want to inject
  333. // custom logic into the request's lifecycle using a custom handler, or if you want to
  334. // access properties on the request object before or after sending the request. If
  335. // you just want the service response, call the ListTags method directly
  336. // instead.
  337. //
  338. // Note: You must call the "Send" method on the returned request object in order
  339. // to execute the request.
  340. //
  341. // // Example sending a request using the ListTagsRequest method.
  342. // req, resp := client.ListTagsRequest(params)
  343. //
  344. // err := req.Send()
  345. // if err == nil { // resp is now filled
  346. // fmt.Println(resp)
  347. // }
  348. //
  349. func (c *ElasticsearchService) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) {
  350. op := &request.Operation{
  351. Name: opListTags,
  352. HTTPMethod: "GET",
  353. HTTPPath: "/2015-01-01/tags/",
  354. }
  355. if input == nil {
  356. input = &ListTagsInput{}
  357. }
  358. req = c.newRequest(op, input, output)
  359. output = &ListTagsOutput{}
  360. req.Data = output
  361. return
  362. }
  363. // Returns all tags for the given Elasticsearch domain.
  364. func (c *ElasticsearchService) ListTags(input *ListTagsInput) (*ListTagsOutput, error) {
  365. req, out := c.ListTagsRequest(input)
  366. err := req.Send()
  367. return out, err
  368. }
  369. const opRemoveTags = "RemoveTags"
  370. // RemoveTagsRequest generates a "aws/request.Request" representing the
  371. // client's request for the RemoveTags operation. The "output" return
  372. // value can be used to capture response data after the request's "Send" method
  373. // is called.
  374. //
  375. // Creating a request object using this method should be used when you want to inject
  376. // custom logic into the request's lifecycle using a custom handler, or if you want to
  377. // access properties on the request object before or after sending the request. If
  378. // you just want the service response, call the RemoveTags method directly
  379. // instead.
  380. //
  381. // Note: You must call the "Send" method on the returned request object in order
  382. // to execute the request.
  383. //
  384. // // Example sending a request using the RemoveTagsRequest method.
  385. // req, resp := client.RemoveTagsRequest(params)
  386. //
  387. // err := req.Send()
  388. // if err == nil { // resp is now filled
  389. // fmt.Println(resp)
  390. // }
  391. //
  392. func (c *ElasticsearchService) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) {
  393. op := &request.Operation{
  394. Name: opRemoveTags,
  395. HTTPMethod: "POST",
  396. HTTPPath: "/2015-01-01/tags-removal",
  397. }
  398. if input == nil {
  399. input = &RemoveTagsInput{}
  400. }
  401. req = c.newRequest(op, input, output)
  402. req.Handlers.Unmarshal.Remove(restjson.UnmarshalHandler)
  403. req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
  404. output = &RemoveTagsOutput{}
  405. req.Data = output
  406. return
  407. }
  408. // Removes the specified set of tags from the specified Elasticsearch domain.
  409. func (c *ElasticsearchService) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) {
  410. req, out := c.RemoveTagsRequest(input)
  411. err := req.Send()
  412. return out, err
  413. }
  414. const opUpdateElasticsearchDomainConfig = "UpdateElasticsearchDomainConfig"
  415. // UpdateElasticsearchDomainConfigRequest generates a "aws/request.Request" representing the
  416. // client's request for the UpdateElasticsearchDomainConfig operation. The "output" return
  417. // value can be used to capture response data after the request's "Send" method
  418. // is called.
  419. //
  420. // Creating a request object using this method should be used when you want to inject
  421. // custom logic into the request's lifecycle using a custom handler, or if you want to
  422. // access properties on the request object before or after sending the request. If
  423. // you just want the service response, call the UpdateElasticsearchDomainConfig method directly
  424. // instead.
  425. //
  426. // Note: You must call the "Send" method on the returned request object in order
  427. // to execute the request.
  428. //
  429. // // Example sending a request using the UpdateElasticsearchDomainConfigRequest method.
  430. // req, resp := client.UpdateElasticsearchDomainConfigRequest(params)
  431. //
  432. // err := req.Send()
  433. // if err == nil { // resp is now filled
  434. // fmt.Println(resp)
  435. // }
  436. //
  437. func (c *ElasticsearchService) UpdateElasticsearchDomainConfigRequest(input *UpdateElasticsearchDomainConfigInput) (req *request.Request, output *UpdateElasticsearchDomainConfigOutput) {
  438. op := &request.Operation{
  439. Name: opUpdateElasticsearchDomainConfig,
  440. HTTPMethod: "POST",
  441. HTTPPath: "/2015-01-01/es/domain/{DomainName}/config",
  442. }
  443. if input == nil {
  444. input = &UpdateElasticsearchDomainConfigInput{}
  445. }
  446. req = c.newRequest(op, input, output)
  447. output = &UpdateElasticsearchDomainConfigOutput{}
  448. req.Data = output
  449. return
  450. }
  451. // Modifies the cluster configuration of the specified Elasticsearch domain,
  452. // setting as setting the instance type and the number of instances.
  453. func (c *ElasticsearchService) UpdateElasticsearchDomainConfig(input *UpdateElasticsearchDomainConfigInput) (*UpdateElasticsearchDomainConfigOutput, error) {
  454. req, out := c.UpdateElasticsearchDomainConfigRequest(input)
  455. err := req.Send()
  456. return out, err
  457. }
  458. // The configured access rules for the domain's document and search endpoints,
  459. // and the current status of those rules.
  460. type AccessPoliciesStatus struct {
  461. _ struct{} `type:"structure"`
  462. // The access policy configured for the Elasticsearch domain. Access policies
  463. // may be resource-based, IP-based, or IAM-based. See Configuring Access Policies
  464. // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-access-policies"
  465. // target="_blank)for more information.
  466. Options *string `type:"string" required:"true"`
  467. // The status of the access policy for the Elasticsearch domain. See OptionStatus
  468. // for the status information that's included.
  469. Status *OptionStatus `type:"structure" required:"true"`
  470. }
  471. // String returns the string representation
  472. func (s AccessPoliciesStatus) String() string {
  473. return awsutil.Prettify(s)
  474. }
  475. // GoString returns the string representation
  476. func (s AccessPoliciesStatus) GoString() string {
  477. return s.String()
  478. }
  479. // Container for the parameters to the AddTags operation. Specify the tags that
  480. // you want to attach to the Elasticsearch domain.
  481. type AddTagsInput struct {
  482. _ struct{} `type:"structure"`
  483. // Specify the ARN for which you want to add the tags.
  484. ARN *string `type:"string" required:"true"`
  485. // List of Tag that need to be added for the Elasticsearch domain.
  486. TagList []*Tag `type:"list" required:"true"`
  487. }
  488. // String returns the string representation
  489. func (s AddTagsInput) String() string {
  490. return awsutil.Prettify(s)
  491. }
  492. // GoString returns the string representation
  493. func (s AddTagsInput) GoString() string {
  494. return s.String()
  495. }
  496. // Validate inspects the fields of the type to determine if they are valid.
  497. func (s *AddTagsInput) Validate() error {
  498. invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"}
  499. if s.ARN == nil {
  500. invalidParams.Add(request.NewErrParamRequired("ARN"))
  501. }
  502. if s.TagList == nil {
  503. invalidParams.Add(request.NewErrParamRequired("TagList"))
  504. }
  505. if s.TagList != nil {
  506. for i, v := range s.TagList {
  507. if v == nil {
  508. continue
  509. }
  510. if err := v.Validate(); err != nil {
  511. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagList", i), err.(request.ErrInvalidParams))
  512. }
  513. }
  514. }
  515. if invalidParams.Len() > 0 {
  516. return invalidParams
  517. }
  518. return nil
  519. }
  520. type AddTagsOutput struct {
  521. _ struct{} `type:"structure"`
  522. }
  523. // String returns the string representation
  524. func (s AddTagsOutput) String() string {
  525. return awsutil.Prettify(s)
  526. }
  527. // GoString returns the string representation
  528. func (s AddTagsOutput) GoString() string {
  529. return s.String()
  530. }
  531. // Status of the advanced options for the specified Elasticsearch domain. Currently,
  532. // the following advanced options are available:
  533. //
  534. // Option to allow references to indices in an HTTP request body. Must be
  535. // false when configuring access to individual sub-resources. By default, the
  536. // value is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options"
  537. // target="_blank) for more information. Option to specify the percentage of
  538. // heap space that is allocated to field data. By default, this setting is unbounded.
  539. // For more information, see Configuring Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options).
  540. type AdvancedOptionsStatus struct {
  541. _ struct{} `type:"structure"`
  542. // Specifies the status of advanced options for the specified Elasticsearch
  543. // domain.
  544. Options map[string]*string `type:"map" required:"true"`
  545. // Specifies the status of OptionStatus for advanced options for the specified
  546. // Elasticsearch domain.
  547. Status *OptionStatus `type:"structure" required:"true"`
  548. }
  549. // String returns the string representation
  550. func (s AdvancedOptionsStatus) String() string {
  551. return awsutil.Prettify(s)
  552. }
  553. // GoString returns the string representation
  554. func (s AdvancedOptionsStatus) GoString() string {
  555. return s.String()
  556. }
  557. type CreateElasticsearchDomainInput struct {
  558. _ struct{} `type:"structure"`
  559. // IAM access policy as a JSON-formatted string.
  560. AccessPolicies *string `type:"string"`
  561. // Option to allow references to indices in an HTTP request body. Must be false
  562. // when configuring access to individual sub-resources. By default, the value
  563. // is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options"
  564. // target="_blank) for more information.
  565. AdvancedOptions map[string]*string `type:"map"`
  566. // The name of the Elasticsearch domain that you are creating. Domain names
  567. // are unique across the domains owned by an account within an AWS region. Domain
  568. // names must start with a letter or number and can contain the following characters:
  569. // a-z (lowercase), 0-9, and - (hyphen).
  570. DomainName *string `min:"3" type:"string" required:"true"`
  571. // Options to enable, disable and specify the type and size of EBS storage volumes.
  572. EBSOptions *EBSOptions `type:"structure"`
  573. // Configuration options for an Elasticsearch domain. Specifies the instance
  574. // type and number of instances in the domain cluster.
  575. ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure"`
  576. // String of format X.Y to specify version for the Elasticsearch domain eg.
  577. // "1.5" or "2.3". For more information, see Creating Elasticsearch Domains
  578. // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomains"
  579. // target="_blank) in the Amazon Elasticsearch Service Developer Guide.
  580. ElasticsearchVersion *string `type:"string"`
  581. // Option to set time, in UTC format, of the daily automated snapshot. Default
  582. // value is 0 hours.
  583. SnapshotOptions *SnapshotOptions `type:"structure"`
  584. }
  585. // String returns the string representation
  586. func (s CreateElasticsearchDomainInput) String() string {
  587. return awsutil.Prettify(s)
  588. }
  589. // GoString returns the string representation
  590. func (s CreateElasticsearchDomainInput) GoString() string {
  591. return s.String()
  592. }
  593. // Validate inspects the fields of the type to determine if they are valid.
  594. func (s *CreateElasticsearchDomainInput) Validate() error {
  595. invalidParams := request.ErrInvalidParams{Context: "CreateElasticsearchDomainInput"}
  596. if s.DomainName == nil {
  597. invalidParams.Add(request.NewErrParamRequired("DomainName"))
  598. }
  599. if s.DomainName != nil && len(*s.DomainName) < 3 {
  600. invalidParams.Add(request.NewErrParamMinLen("DomainName", 3))
  601. }
  602. if invalidParams.Len() > 0 {
  603. return invalidParams
  604. }
  605. return nil
  606. }
  607. // The result of a CreateElasticsearchDomain operation. Contains the status
  608. // of the newly created Elasticsearch domain.
  609. type CreateElasticsearchDomainOutput struct {
  610. _ struct{} `type:"structure"`
  611. // The status of the newly created Elasticsearch domain.
  612. DomainStatus *ElasticsearchDomainStatus `type:"structure"`
  613. }
  614. // String returns the string representation
  615. func (s CreateElasticsearchDomainOutput) String() string {
  616. return awsutil.Prettify(s)
  617. }
  618. // GoString returns the string representation
  619. func (s CreateElasticsearchDomainOutput) GoString() string {
  620. return s.String()
  621. }
  622. // Container for the parameters to the DeleteElasticsearchDomain operation.
  623. // Specifies the name of the Elasticsearch domain that you want to delete.
  624. type DeleteElasticsearchDomainInput struct {
  625. _ struct{} `type:"structure"`
  626. // The name of the Elasticsearch domain that you want to permanently delete.
  627. DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"`
  628. }
  629. // String returns the string representation
  630. func (s DeleteElasticsearchDomainInput) String() string {
  631. return awsutil.Prettify(s)
  632. }
  633. // GoString returns the string representation
  634. func (s DeleteElasticsearchDomainInput) GoString() string {
  635. return s.String()
  636. }
  637. // Validate inspects the fields of the type to determine if they are valid.
  638. func (s *DeleteElasticsearchDomainInput) Validate() error {
  639. invalidParams := request.ErrInvalidParams{Context: "DeleteElasticsearchDomainInput"}
  640. if s.DomainName == nil {
  641. invalidParams.Add(request.NewErrParamRequired("DomainName"))
  642. }
  643. if s.DomainName != nil && len(*s.DomainName) < 3 {
  644. invalidParams.Add(request.NewErrParamMinLen("DomainName", 3))
  645. }
  646. if invalidParams.Len() > 0 {
  647. return invalidParams
  648. }
  649. return nil
  650. }
  651. // The result of a DeleteElasticsearchDomain request. Contains the status of
  652. // the pending deletion, or no status if the domain and all of its resources
  653. // have been deleted.
  654. type DeleteElasticsearchDomainOutput struct {
  655. _ struct{} `type:"structure"`
  656. // The status of the Elasticsearch domain being deleted.
  657. DomainStatus *ElasticsearchDomainStatus `type:"structure"`
  658. }
  659. // String returns the string representation
  660. func (s DeleteElasticsearchDomainOutput) String() string {
  661. return awsutil.Prettify(s)
  662. }
  663. // GoString returns the string representation
  664. func (s DeleteElasticsearchDomainOutput) GoString() string {
  665. return s.String()
  666. }
  667. // Container for the parameters to the DescribeElasticsearchDomainConfig operation.
  668. // Specifies the domain name for which you want configuration information.
  669. type DescribeElasticsearchDomainConfigInput struct {
  670. _ struct{} `type:"structure"`
  671. // The Elasticsearch domain that you want to get information about.
  672. DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"`
  673. }
  674. // String returns the string representation
  675. func (s DescribeElasticsearchDomainConfigInput) String() string {
  676. return awsutil.Prettify(s)
  677. }
  678. // GoString returns the string representation
  679. func (s DescribeElasticsearchDomainConfigInput) GoString() string {
  680. return s.String()
  681. }
  682. // Validate inspects the fields of the type to determine if they are valid.
  683. func (s *DescribeElasticsearchDomainConfigInput) Validate() error {
  684. invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainConfigInput"}
  685. if s.DomainName == nil {
  686. invalidParams.Add(request.NewErrParamRequired("DomainName"))
  687. }
  688. if s.DomainName != nil && len(*s.DomainName) < 3 {
  689. invalidParams.Add(request.NewErrParamMinLen("DomainName", 3))
  690. }
  691. if invalidParams.Len() > 0 {
  692. return invalidParams
  693. }
  694. return nil
  695. }
  696. // The result of a DescribeElasticsearchDomainConfig request. Contains the configuration
  697. // information of the requested domain.
  698. type DescribeElasticsearchDomainConfigOutput struct {
  699. _ struct{} `type:"structure"`
  700. // The configuration information of the domain requested in the DescribeElasticsearchDomainConfig
  701. // request.
  702. DomainConfig *ElasticsearchDomainConfig `type:"structure" required:"true"`
  703. }
  704. // String returns the string representation
  705. func (s DescribeElasticsearchDomainConfigOutput) String() string {
  706. return awsutil.Prettify(s)
  707. }
  708. // GoString returns the string representation
  709. func (s DescribeElasticsearchDomainConfigOutput) GoString() string {
  710. return s.String()
  711. }
  712. // Container for the parameters to the DescribeElasticsearchDomain operation.
  713. type DescribeElasticsearchDomainInput struct {
  714. _ struct{} `type:"structure"`
  715. // The name of the Elasticsearch domain for which you want information.
  716. DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"`
  717. }
  718. // String returns the string representation
  719. func (s DescribeElasticsearchDomainInput) String() string {
  720. return awsutil.Prettify(s)
  721. }
  722. // GoString returns the string representation
  723. func (s DescribeElasticsearchDomainInput) GoString() string {
  724. return s.String()
  725. }
  726. // Validate inspects the fields of the type to determine if they are valid.
  727. func (s *DescribeElasticsearchDomainInput) Validate() error {
  728. invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainInput"}
  729. if s.DomainName == nil {
  730. invalidParams.Add(request.NewErrParamRequired("DomainName"))
  731. }
  732. if s.DomainName != nil && len(*s.DomainName) < 3 {
  733. invalidParams.Add(request.NewErrParamMinLen("DomainName", 3))
  734. }
  735. if invalidParams.Len() > 0 {
  736. return invalidParams
  737. }
  738. return nil
  739. }
  740. // The result of a DescribeElasticsearchDomain request. Contains the status
  741. // of the domain specified in the request.
  742. type DescribeElasticsearchDomainOutput struct {
  743. _ struct{} `type:"structure"`
  744. // The current status of the Elasticsearch domain.
  745. DomainStatus *ElasticsearchDomainStatus `type:"structure" required:"true"`
  746. }
  747. // String returns the string representation
  748. func (s DescribeElasticsearchDomainOutput) String() string {
  749. return awsutil.Prettify(s)
  750. }
  751. // GoString returns the string representation
  752. func (s DescribeElasticsearchDomainOutput) GoString() string {
  753. return s.String()
  754. }
  755. // Container for the parameters to the DescribeElasticsearchDomains operation.
  756. // By default, the API returns the status of all Elasticsearch domains.
  757. type DescribeElasticsearchDomainsInput struct {
  758. _ struct{} `type:"structure"`
  759. // The Elasticsearch domains for which you want information.
  760. DomainNames []*string `type:"list" required:"true"`
  761. }
  762. // String returns the string representation
  763. func (s DescribeElasticsearchDomainsInput) String() string {
  764. return awsutil.Prettify(s)
  765. }
  766. // GoString returns the string representation
  767. func (s DescribeElasticsearchDomainsInput) GoString() string {
  768. return s.String()
  769. }
  770. // Validate inspects the fields of the type to determine if they are valid.
  771. func (s *DescribeElasticsearchDomainsInput) Validate() error {
  772. invalidParams := request.ErrInvalidParams{Context: "DescribeElasticsearchDomainsInput"}
  773. if s.DomainNames == nil {
  774. invalidParams.Add(request.NewErrParamRequired("DomainNames"))
  775. }
  776. if invalidParams.Len() > 0 {
  777. return invalidParams
  778. }
  779. return nil
  780. }
  781. // The result of a DescribeElasticsearchDomains request. Contains the status
  782. // of the specified domains or all domains owned by the account.
  783. type DescribeElasticsearchDomainsOutput struct {
  784. _ struct{} `type:"structure"`
  785. // The status of the domains requested in the DescribeElasticsearchDomains request.
  786. DomainStatusList []*ElasticsearchDomainStatus `type:"list" required:"true"`
  787. }
  788. // String returns the string representation
  789. func (s DescribeElasticsearchDomainsOutput) String() string {
  790. return awsutil.Prettify(s)
  791. }
  792. // GoString returns the string representation
  793. func (s DescribeElasticsearchDomainsOutput) GoString() string {
  794. return s.String()
  795. }
  796. type DomainInfo struct {
  797. _ struct{} `type:"structure"`
  798. // Specifies the DomainName.
  799. DomainName *string `min:"3" type:"string"`
  800. }
  801. // String returns the string representation
  802. func (s DomainInfo) String() string {
  803. return awsutil.Prettify(s)
  804. }
  805. // GoString returns the string representation
  806. func (s DomainInfo) GoString() string {
  807. return s.String()
  808. }
  809. // Options to enable, disable, and specify the properties of EBS storage volumes.
  810. // For more information, see Configuring EBS-based Storage (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs"
  811. // target="_blank).
  812. type EBSOptions struct {
  813. _ struct{} `type:"structure"`
  814. // Specifies whether EBS-based storage is enabled.
  815. EBSEnabled *bool `type:"boolean"`
  816. // Specifies the IOPD for a Provisioned IOPS EBS volume (SSD).
  817. Iops *int64 `type:"integer"`
  818. // Integer to specify the size of an EBS volume.
  819. VolumeSize *int64 `type:"integer"`
  820. // Specifies the volume type for EBS-based storage.
  821. VolumeType *string `type:"string" enum:"VolumeType"`
  822. }
  823. // String returns the string representation
  824. func (s EBSOptions) String() string {
  825. return awsutil.Prettify(s)
  826. }
  827. // GoString returns the string representation
  828. func (s EBSOptions) GoString() string {
  829. return s.String()
  830. }
  831. // Status of the EBS options for the specified Elasticsearch domain.
  832. type EBSOptionsStatus struct {
  833. _ struct{} `type:"structure"`
  834. // Specifies the EBS options for the specified Elasticsearch domain.
  835. Options *EBSOptions `type:"structure" required:"true"`
  836. // Specifies the status of the EBS options for the specified Elasticsearch domain.
  837. Status *OptionStatus `type:"structure" required:"true"`
  838. }
  839. // String returns the string representation
  840. func (s EBSOptionsStatus) String() string {
  841. return awsutil.Prettify(s)
  842. }
  843. // GoString returns the string representation
  844. func (s EBSOptionsStatus) GoString() string {
  845. return s.String()
  846. }
  847. // Specifies the configuration for the domain cluster, such as the type and
  848. // number of instances.
  849. type ElasticsearchClusterConfig struct {
  850. _ struct{} `type:"structure"`
  851. // Total number of dedicated master nodes, active and on standby, for the cluster.
  852. DedicatedMasterCount *int64 `type:"integer"`
  853. // A boolean value to indicate whether a dedicated master node is enabled. See
  854. // About Dedicated Master Nodes (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-dedicatedmasternodes"
  855. // target="_blank) for more information.
  856. DedicatedMasterEnabled *bool `type:"boolean"`
  857. // The instance type for a dedicated master node.
  858. DedicatedMasterType *string `type:"string" enum:"ESPartitionInstanceType"`
  859. // The number of instances in the specified domain cluster.
  860. InstanceCount *int64 `type:"integer"`
  861. // The instance type for an Elasticsearch cluster.
  862. InstanceType *string `type:"string" enum:"ESPartitionInstanceType"`
  863. // A boolean value to indicate whether zone awareness is enabled. See About
  864. // Zone Awareness (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-zoneawareness"
  865. // target="_blank) for more information.
  866. ZoneAwarenessEnabled *bool `type:"boolean"`
  867. }
  868. // String returns the string representation
  869. func (s ElasticsearchClusterConfig) String() string {
  870. return awsutil.Prettify(s)
  871. }
  872. // GoString returns the string representation
  873. func (s ElasticsearchClusterConfig) GoString() string {
  874. return s.String()
  875. }
  876. // Specifies the configuration status for the specified Elasticsearch domain.
  877. type ElasticsearchClusterConfigStatus struct {
  878. _ struct{} `type:"structure"`
  879. // Specifies the cluster configuration for the specified Elasticsearch domain.
  880. Options *ElasticsearchClusterConfig `type:"structure" required:"true"`
  881. // Specifies the status of the configuration for the specified Elasticsearch
  882. // domain.
  883. Status *OptionStatus `type:"structure" required:"true"`
  884. }
  885. // String returns the string representation
  886. func (s ElasticsearchClusterConfigStatus) String() string {
  887. return awsutil.Prettify(s)
  888. }
  889. // GoString returns the string representation
  890. func (s ElasticsearchClusterConfigStatus) GoString() string {
  891. return s.String()
  892. }
  893. // The configuration of an Elasticsearch domain.
  894. type ElasticsearchDomainConfig struct {
  895. _ struct{} `type:"structure"`
  896. // IAM access policy as a JSON-formatted string.
  897. AccessPolicies *AccessPoliciesStatus `type:"structure"`
  898. // Specifies the AdvancedOptions for the domain. See Configuring Advanced Options
  899. // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options"
  900. // target="_blank) for more information.
  901. AdvancedOptions *AdvancedOptionsStatus `type:"structure"`
  902. // Specifies the EBSOptions for the Elasticsearch domain.
  903. EBSOptions *EBSOptionsStatus `type:"structure"`
  904. // Specifies the ElasticsearchClusterConfig for the Elasticsearch domain.
  905. ElasticsearchClusterConfig *ElasticsearchClusterConfigStatus `type:"structure"`
  906. // String of format X.Y to specify version for the Elasticsearch domain.
  907. ElasticsearchVersion *ElasticsearchVersionStatus `type:"structure"`
  908. // Specifies the SnapshotOptions for the Elasticsearch domain.
  909. SnapshotOptions *SnapshotOptionsStatus `type:"structure"`
  910. }
  911. // String returns the string representation
  912. func (s ElasticsearchDomainConfig) String() string {
  913. return awsutil.Prettify(s)
  914. }
  915. // GoString returns the string representation
  916. func (s ElasticsearchDomainConfig) GoString() string {
  917. return s.String()
  918. }
  919. // The current status of an Elasticsearch domain.
  920. type ElasticsearchDomainStatus struct {
  921. _ struct{} `type:"structure"`
  922. // The Amazon resource name (ARN) of an Elasticsearch domain. See Identifiers
  923. // for IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html"
  924. // target="_blank) in Using AWS Identity and Access Management for more information.
  925. ARN *string `type:"string" required:"true"`
  926. // IAM access policy as a JSON-formatted string.
  927. AccessPolicies *string `type:"string"`
  928. // Specifies the status of the AdvancedOptions
  929. AdvancedOptions map[string]*string `type:"map"`
  930. // The domain creation status. True if the creation of an Elasticsearch domain
  931. // is complete. False if domain creation is still in progress.
  932. Created *bool `type:"boolean"`
  933. // The domain deletion status. True if a delete request has been received for
  934. // the domain but resource cleanup is still in progress. False if the domain
  935. // has not been deleted. Once domain deletion is complete, the status of the
  936. // domain is no longer returned.
  937. Deleted *bool `type:"boolean"`
  938. // The unique identifier for the specified Elasticsearch domain.
  939. DomainId *string `min:"1" type:"string" required:"true"`
  940. // The name of an Elasticsearch domain. Domain names are unique across the domains
  941. // owned by an account within an AWS region. Domain names start with a letter
  942. // or number and can contain the following characters: a-z (lowercase), 0-9,
  943. // and - (hyphen).
  944. DomainName *string `min:"3" type:"string" required:"true"`
  945. // The EBSOptions for the specified domain. See Configuring EBS-based Storage
  946. // (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs"
  947. // target="_blank) for more information.
  948. EBSOptions *EBSOptions `type:"structure"`
  949. // The type and number of instances in the domain cluster.
  950. ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure" required:"true"`
  951. ElasticsearchVersion *string `type:"string"`
  952. // The Elasticsearch domain endpoint that you use to submit index and search
  953. // requests.
  954. Endpoint *string `type:"string"`
  955. // The status of the Elasticsearch domain configuration. True if Amazon Elasticsearch
  956. // Service is processing configuration changes. False if the configuration is
  957. // active.
  958. Processing *bool `type:"boolean"`
  959. // Specifies the status of the SnapshotOptions
  960. SnapshotOptions *SnapshotOptions `type:"structure"`
  961. }
  962. // String returns the string representation
  963. func (s ElasticsearchDomainStatus) String() string {
  964. return awsutil.Prettify(s)
  965. }
  966. // GoString returns the string representation
  967. func (s ElasticsearchDomainStatus) GoString() string {
  968. return s.String()
  969. }
  970. // Status of the Elasticsearch version options for the specified Elasticsearch
  971. // domain.
  972. type ElasticsearchVersionStatus struct {
  973. _ struct{} `type:"structure"`
  974. // Specifies the Elasticsearch version for the specified Elasticsearch domain.
  975. Options *string `type:"string" required:"true"`
  976. // Specifies the status of the Elasticsearch version options for the specified
  977. // Elasticsearch domain.
  978. Status *OptionStatus `type:"structure" required:"true"`
  979. }
  980. // String returns the string representation
  981. func (s ElasticsearchVersionStatus) String() string {
  982. return awsutil.Prettify(s)
  983. }
  984. // GoString returns the string representation
  985. func (s ElasticsearchVersionStatus) GoString() string {
  986. return s.String()
  987. }
  988. type ListDomainNamesInput struct {
  989. _ struct{} `type:"structure"`
  990. }
  991. // String returns the string representation
  992. func (s ListDomainNamesInput) String() string {
  993. return awsutil.Prettify(s)
  994. }
  995. // GoString returns the string representation
  996. func (s ListDomainNamesInput) GoString() string {
  997. return s.String()
  998. }
  999. // The result of a ListDomainNames operation. Contains the names of all Elasticsearch
  1000. // domains owned by this account.
  1001. type ListDomainNamesOutput struct {
  1002. _ struct{} `type:"structure"`
  1003. // List of Elasticsearch domain names.
  1004. DomainNames []*DomainInfo `type:"list"`
  1005. }
  1006. // String returns the string representation
  1007. func (s ListDomainNamesOutput) String() string {
  1008. return awsutil.Prettify(s)
  1009. }
  1010. // GoString returns the string representation
  1011. func (s ListDomainNamesOutput) GoString() string {
  1012. return s.String()
  1013. }
  1014. // Container for the parameters to the ListTags operation. Specify the ARN for
  1015. // the Elasticsearch domain to which the tags are attached that you want to
  1016. // view are attached.
  1017. type ListTagsInput struct {
  1018. _ struct{} `type:"structure"`
  1019. // Specify the ARN for the Elasticsearch domain to which the tags are attached
  1020. // that you want to view.
  1021. ARN *string `location:"querystring" locationName:"arn" type:"string" required:"true"`
  1022. }
  1023. // String returns the string representation
  1024. func (s ListTagsInput) String() string {
  1025. return awsutil.Prettify(s)
  1026. }
  1027. // GoString returns the string representation
  1028. func (s ListTagsInput) GoString() string {
  1029. return s.String()
  1030. }
  1031. // Validate inspects the fields of the type to determine if they are valid.
  1032. func (s *ListTagsInput) Validate() error {
  1033. invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
  1034. if s.ARN == nil {
  1035. invalidParams.Add(request.NewErrParamRequired("ARN"))
  1036. }
  1037. if invalidParams.Len() > 0 {
  1038. return invalidParams
  1039. }
  1040. return nil
  1041. }
  1042. // The result of a ListTags operation. Contains tags for all requested Elasticsearch
  1043. // domains.
  1044. type ListTagsOutput struct {
  1045. _ struct{} `type:"structure"`
  1046. // List of Tag for the requested Elasticsearch domain.
  1047. TagList []*Tag `type:"list"`
  1048. }
  1049. // String returns the string representation
  1050. func (s ListTagsOutput) String() string {
  1051. return awsutil.Prettify(s)
  1052. }
  1053. // GoString returns the string representation
  1054. func (s ListTagsOutput) GoString() string {
  1055. return s.String()
  1056. }
  1057. // Provides the current status of the entity.
  1058. type OptionStatus struct {
  1059. _ struct{} `type:"structure"`
  1060. // Timestamp which tells the creation date for the entity.
  1061. CreationDate *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"`
  1062. // Indicates whether the Elasticsearch domain is being deleted.
  1063. PendingDeletion *bool `type:"boolean"`
  1064. // Provides the OptionState for the Elasticsearch domain.
  1065. State *string `type:"string" required:"true" enum:"OptionState"`
  1066. // Timestamp which tells the last updated time for the entity.
  1067. UpdateDate *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"`
  1068. // Specifies the latest version for the entity.
  1069. UpdateVersion *int64 `type:"integer"`
  1070. }
  1071. // String returns the string representation
  1072. func (s OptionStatus) String() string {
  1073. return awsutil.Prettify(s)
  1074. }
  1075. // GoString returns the string representation
  1076. func (s OptionStatus) GoString() string {
  1077. return s.String()
  1078. }
  1079. // Container for the parameters to the RemoveTags operation. Specify the ARN
  1080. // for the Elasticsearch domain from which you want to remove the specified
  1081. // TagKey.
  1082. type RemoveTagsInput struct {
  1083. _ struct{} `type:"structure"`
  1084. // Specifies the ARN for the Elasticsearch domain from which you want to delete
  1085. // the specified tags.
  1086. ARN *string `type:"string" required:"true"`
  1087. // Specifies the TagKey list which you want to remove from the Elasticsearch
  1088. // domain.
  1089. TagKeys []*string `type:"list" required:"true"`
  1090. }
  1091. // String returns the string representation
  1092. func (s RemoveTagsInput) String() string {
  1093. return awsutil.Prettify(s)
  1094. }
  1095. // GoString returns the string representation
  1096. func (s RemoveTagsInput) GoString() string {
  1097. return s.String()
  1098. }
  1099. // Validate inspects the fields of the type to determine if they are valid.
  1100. func (s *RemoveTagsInput) Validate() error {
  1101. invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"}
  1102. if s.ARN == nil {
  1103. invalidParams.Add(request.NewErrParamRequired("ARN"))
  1104. }
  1105. if s.TagKeys == nil {
  1106. invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  1107. }
  1108. if invalidParams.Len() > 0 {
  1109. return invalidParams
  1110. }
  1111. return nil
  1112. }
  1113. type RemoveTagsOutput struct {
  1114. _ struct{} `type:"structure"`
  1115. }
  1116. // String returns the string representation
  1117. func (s RemoveTagsOutput) String() string {
  1118. return awsutil.Prettify(s)
  1119. }
  1120. // GoString returns the string representation
  1121. func (s RemoveTagsOutput) GoString() string {
  1122. return s.String()
  1123. }
  1124. // Specifies the time, in UTC format, when the service takes a daily automated
  1125. // snapshot of the specified Elasticsearch domain. Default value is 0 hours.
  1126. type SnapshotOptions struct {
  1127. _ struct{} `type:"structure"`
  1128. // Specifies the time, in UTC format, when the service takes a daily automated
  1129. // snapshot of the specified Elasticsearch domain. Default value is 0 hours.
  1130. AutomatedSnapshotStartHour *int64 `type:"integer"`
  1131. }
  1132. // String returns the string representation
  1133. func (s SnapshotOptions) String() string {
  1134. return awsutil.Prettify(s)
  1135. }
  1136. // GoString returns the string representation
  1137. func (s SnapshotOptions) GoString() string {
  1138. return s.String()
  1139. }
  1140. // Status of a daily automated snapshot.
  1141. type SnapshotOptionsStatus struct {
  1142. _ struct{} `type:"structure"`
  1143. // Specifies the daily snapshot options specified for the Elasticsearch domain.
  1144. Options *SnapshotOptions `type:"structure" required:"true"`
  1145. // Specifies the status of a daily automated snapshot.
  1146. Status *OptionStatus `type:"structure" required:"true"`
  1147. }
  1148. // String returns the string representation
  1149. func (s SnapshotOptionsStatus) String() string {
  1150. return awsutil.Prettify(s)
  1151. }
  1152. // GoString returns the string representation
  1153. func (s SnapshotOptionsStatus) GoString() string {
  1154. return s.String()
  1155. }
  1156. // Specifies a key value pair for a resource tag.
  1157. type Tag struct {
  1158. _ struct{} `type:"structure"`
  1159. // Specifies the TagKey, the name of the tag. Tag keys must be unique for the
  1160. // Elasticsearch domain to which they are attached.
  1161. Key *string `min:"1" type:"string" required:"true"`
  1162. // Specifies the TagValue, the value assigned to the corresponding tag key.
  1163. // Tag values can be null and do not have to be unique in a tag set. For example,
  1164. // you can have a key value pair in a tag set of project : Trinity and cost-center
  1165. // : Trinity
  1166. Value *string `type:"string" required:"true"`
  1167. }
  1168. // String returns the string representation
  1169. func (s Tag) String() string {
  1170. return awsutil.Prettify(s)
  1171. }
  1172. // GoString returns the string representation
  1173. func (s Tag) GoString() string {
  1174. return s.String()
  1175. }
  1176. // Validate inspects the fields of the type to determine if they are valid.
  1177. func (s *Tag) Validate() error {
  1178. invalidParams := request.ErrInvalidParams{Context: "Tag"}
  1179. if s.Key == nil {
  1180. invalidParams.Add(request.NewErrParamRequired("Key"))
  1181. }
  1182. if s.Key != nil && len(*s.Key) < 1 {
  1183. invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  1184. }
  1185. if s.Value == nil {
  1186. invalidParams.Add(request.NewErrParamRequired("Value"))
  1187. }
  1188. if invalidParams.Len() > 0 {
  1189. return invalidParams
  1190. }
  1191. return nil
  1192. }
  1193. // Container for the parameters to the UpdateElasticsearchDomain operation.
  1194. // Specifies the type and number of instances in the domain cluster.
  1195. type UpdateElasticsearchDomainConfigInput struct {
  1196. _ struct{} `type:"structure"`
  1197. // IAM access policy as a JSON-formatted string.
  1198. AccessPolicies *string `type:"string"`
  1199. // Modifies the advanced option to allow references to indices in an HTTP request
  1200. // body. Must be false when configuring access to individual sub-resources.
  1201. // By default, the value is true. See Configuration Advanced Options (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-advanced-options"
  1202. // target="_blank) for more information.
  1203. AdvancedOptions map[string]*string `type:"map"`
  1204. // The name of the Elasticsearch domain that you are updating.
  1205. DomainName *string `location:"uri" locationName:"DomainName" min:"3" type:"string" required:"true"`
  1206. // Specify the type and size of the EBS volume that you want to use.
  1207. EBSOptions *EBSOptions `type:"structure"`
  1208. // The type and number of instances to instantiate for the domain cluster.
  1209. ElasticsearchClusterConfig *ElasticsearchClusterConfig `type:"structure"`
  1210. // Option to set the time, in UTC format, for the daily automated snapshot.
  1211. // Default value is 0 hours.
  1212. SnapshotOptions *SnapshotOptions `type:"structure"`
  1213. }
  1214. // String returns the string representation
  1215. func (s UpdateElasticsearchDomainConfigInput) String() string {
  1216. return awsutil.Prettify(s)
  1217. }
  1218. // GoString returns the string representation
  1219. func (s UpdateElasticsearchDomainConfigInput) GoString() string {
  1220. return s.String()
  1221. }
  1222. // Validate inspects the fields of the type to determine if they are valid.
  1223. func (s *UpdateElasticsearchDomainConfigInput) Validate() error {
  1224. invalidParams := request.ErrInvalidParams{Context: "UpdateElasticsearchDomainConfigInput"}
  1225. if s.DomainName == nil {
  1226. invalidParams.Add(request.NewErrParamRequired("DomainName"))
  1227. }
  1228. if s.DomainName != nil && len(*s.DomainName) < 3 {
  1229. invalidParams.Add(request.NewErrParamMinLen("DomainName", 3))
  1230. }
  1231. if invalidParams.Len() > 0 {
  1232. return invalidParams
  1233. }
  1234. return nil
  1235. }
  1236. // The result of an UpdateElasticsearchDomain request. Contains the status of
  1237. // the Elasticsearch domain being updated.
  1238. type UpdateElasticsearchDomainConfigOutput struct {
  1239. _ struct{} `type:"structure"`
  1240. // The status of the updated Elasticsearch domain.
  1241. DomainConfig *ElasticsearchDomainConfig `type:"structure" required:"true"`
  1242. }
  1243. // String returns the string representation
  1244. func (s UpdateElasticsearchDomainConfigOutput) String() string {
  1245. return awsutil.Prettify(s)
  1246. }
  1247. // GoString returns the string representation
  1248. func (s UpdateElasticsearchDomainConfigOutput) GoString() string {
  1249. return s.String()
  1250. }
  1251. const (
  1252. // @enum ESPartitionInstanceType
  1253. ESPartitionInstanceTypeM3MediumElasticsearch = "m3.medium.elasticsearch"
  1254. // @enum ESPartitionInstanceType
  1255. ESPartitionInstanceTypeM3LargeElasticsearch = "m3.large.elasticsearch"
  1256. // @enum ESPartitionInstanceType
  1257. ESPartitionInstanceTypeM3XlargeElasticsearch = "m3.xlarge.elasticsearch"
  1258. // @enum ESPartitionInstanceType
  1259. ESPartitionInstanceTypeM32xlargeElasticsearch = "m3.2xlarge.elasticsearch"
  1260. // @enum ESPartitionInstanceType
  1261. ESPartitionInstanceTypeM4LargeElasticsearch = "m4.large.elasticsearch"
  1262. // @enum ESPartitionInstanceType
  1263. ESPartitionInstanceTypeM4XlargeElasticsearch = "m4.xlarge.elasticsearch"
  1264. // @enum ESPartitionInstanceType
  1265. ESPartitionInstanceTypeM42xlargeElasticsearch = "m4.2xlarge.elasticsearch"
  1266. // @enum ESPartitionInstanceType
  1267. ESPartitionInstanceTypeM44xlargeElasticsearch = "m4.4xlarge.elasticsearch"
  1268. // @enum ESPartitionInstanceType
  1269. ESPartitionInstanceTypeM410xlargeElasticsearch = "m4.10xlarge.elasticsearch"
  1270. // @enum ESPartitionInstanceType
  1271. ESPartitionInstanceTypeT2MicroElasticsearch = "t2.micro.elasticsearch"
  1272. // @enum ESPartitionInstanceType
  1273. ESPartitionInstanceTypeT2SmallElasticsearch = "t2.small.elasticsearch"
  1274. // @enum ESPartitionInstanceType
  1275. ESPartitionInstanceTypeT2MediumElasticsearch = "t2.medium.elasticsearch"
  1276. // @enum ESPartitionInstanceType
  1277. ESPartitionInstanceTypeR3LargeElasticsearch = "r3.large.elasticsearch"
  1278. // @enum ESPartitionInstanceType
  1279. ESPartitionInstanceTypeR3XlargeElasticsearch = "r3.xlarge.elasticsearch"
  1280. // @enum ESPartitionInstanceType
  1281. ESPartitionInstanceTypeR32xlargeElasticsearch = "r3.2xlarge.elasticsearch"
  1282. // @enum ESPartitionInstanceType
  1283. ESPartitionInstanceTypeR34xlargeElasticsearch = "r3.4xlarge.elasticsearch"
  1284. // @enum ESPartitionInstanceType
  1285. ESPartitionInstanceTypeR38xlargeElasticsearch = "r3.8xlarge.elasticsearch"
  1286. // @enum ESPartitionInstanceType
  1287. ESPartitionInstanceTypeI2XlargeElasticsearch = "i2.xlarge.elasticsearch"
  1288. // @enum ESPartitionInstanceType
  1289. ESPartitionInstanceTypeI22xlargeElasticsearch = "i2.2xlarge.elasticsearch"
  1290. )
  1291. // The state of a requested change. One of the following:
  1292. //
  1293. // Processing: The request change is still in-process. Active: The request
  1294. // change is processed and deployed to the Elasticsearch domain.
  1295. const (
  1296. // @enum OptionState
  1297. OptionStateRequiresIndexDocuments = "RequiresIndexDocuments"
  1298. // @enum OptionState
  1299. OptionStateProcessing = "Processing"
  1300. // @enum OptionState
  1301. OptionStateActive = "Active"
  1302. )
  1303. // The type of EBS volume, standard, gp2, or io1. See Configuring EBS-based
  1304. // Storage (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-createupdatedomains.html#es-createdomain-configure-ebs"
  1305. // target="_blank)for more information.
  1306. const (
  1307. // @enum VolumeType
  1308. VolumeTypeStandard = "standard"
  1309. // @enum VolumeType
  1310. VolumeTypeGp2 = "gp2"
  1311. // @enum VolumeType
  1312. VolumeTypeIo1 = "io1"
  1313. )