api.go 67 KB

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