api.go 60 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package servicecatalog provides a client for AWS Service Catalog.
  3. package servicecatalog
  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. )
  10. const opDescribeProduct = "DescribeProduct"
  11. // DescribeProductRequest generates a "aws/request.Request" representing the
  12. // client's request for the DescribeProduct operation. The "output" return
  13. // value can be used to capture response data after the request's "Send" method
  14. // is called.
  15. //
  16. // Creating a request object using this method should be used when you want to inject
  17. // custom logic into the request's lifecycle using a custom handler, or if you want to
  18. // access properties on the request object before or after sending the request. If
  19. // you just want the service response, call the DescribeProduct method directly
  20. // instead.
  21. //
  22. // Note: You must call the "Send" method on the returned request object in order
  23. // to execute the request.
  24. //
  25. // // Example sending a request using the DescribeProductRequest method.
  26. // req, resp := client.DescribeProductRequest(params)
  27. //
  28. // err := req.Send()
  29. // if err == nil { // resp is now filled
  30. // fmt.Println(resp)
  31. // }
  32. //
  33. func (c *ServiceCatalog) DescribeProductRequest(input *DescribeProductInput) (req *request.Request, output *DescribeProductOutput) {
  34. op := &request.Operation{
  35. Name: opDescribeProduct,
  36. HTTPMethod: "POST",
  37. HTTPPath: "/",
  38. }
  39. if input == nil {
  40. input = &DescribeProductInput{}
  41. }
  42. req = c.newRequest(op, input, output)
  43. output = &DescribeProductOutput{}
  44. req.Data = output
  45. return
  46. }
  47. // Retrieves information about a specified product.
  48. //
  49. // This operation is functionally identical to DescribeProductView except that
  50. // it takes as input ProductId instead of ProductViewId.
  51. func (c *ServiceCatalog) DescribeProduct(input *DescribeProductInput) (*DescribeProductOutput, error) {
  52. req, out := c.DescribeProductRequest(input)
  53. err := req.Send()
  54. return out, err
  55. }
  56. const opDescribeProductView = "DescribeProductView"
  57. // DescribeProductViewRequest generates a "aws/request.Request" representing the
  58. // client's request for the DescribeProductView operation. The "output" return
  59. // value can be used to capture response data after the request's "Send" method
  60. // is called.
  61. //
  62. // Creating a request object using this method should be used when you want to inject
  63. // custom logic into the request's lifecycle using a custom handler, or if you want to
  64. // access properties on the request object before or after sending the request. If
  65. // you just want the service response, call the DescribeProductView method directly
  66. // instead.
  67. //
  68. // Note: You must call the "Send" method on the returned request object in order
  69. // to execute the request.
  70. //
  71. // // Example sending a request using the DescribeProductViewRequest method.
  72. // req, resp := client.DescribeProductViewRequest(params)
  73. //
  74. // err := req.Send()
  75. // if err == nil { // resp is now filled
  76. // fmt.Println(resp)
  77. // }
  78. //
  79. func (c *ServiceCatalog) DescribeProductViewRequest(input *DescribeProductViewInput) (req *request.Request, output *DescribeProductViewOutput) {
  80. op := &request.Operation{
  81. Name: opDescribeProductView,
  82. HTTPMethod: "POST",
  83. HTTPPath: "/",
  84. }
  85. if input == nil {
  86. input = &DescribeProductViewInput{}
  87. }
  88. req = c.newRequest(op, input, output)
  89. output = &DescribeProductViewOutput{}
  90. req.Data = output
  91. return
  92. }
  93. // Retrieves information about a specified product.
  94. //
  95. // This operation is functionally identical to DescribeProduct except that
  96. // it takes as input ProductViewId instead of ProductId.
  97. func (c *ServiceCatalog) DescribeProductView(input *DescribeProductViewInput) (*DescribeProductViewOutput, error) {
  98. req, out := c.DescribeProductViewRequest(input)
  99. err := req.Send()
  100. return out, err
  101. }
  102. const opDescribeProvisioningParameters = "DescribeProvisioningParameters"
  103. // DescribeProvisioningParametersRequest generates a "aws/request.Request" representing the
  104. // client's request for the DescribeProvisioningParameters operation. The "output" return
  105. // value can be used to capture response data after the request's "Send" method
  106. // is called.
  107. //
  108. // Creating a request object using this method should be used when you want to inject
  109. // custom logic into the request's lifecycle using a custom handler, or if you want to
  110. // access properties on the request object before or after sending the request. If
  111. // you just want the service response, call the DescribeProvisioningParameters method directly
  112. // instead.
  113. //
  114. // Note: You must call the "Send" method on the returned request object in order
  115. // to execute the request.
  116. //
  117. // // Example sending a request using the DescribeProvisioningParametersRequest method.
  118. // req, resp := client.DescribeProvisioningParametersRequest(params)
  119. //
  120. // err := req.Send()
  121. // if err == nil { // resp is now filled
  122. // fmt.Println(resp)
  123. // }
  124. //
  125. func (c *ServiceCatalog) DescribeProvisioningParametersRequest(input *DescribeProvisioningParametersInput) (req *request.Request, output *DescribeProvisioningParametersOutput) {
  126. op := &request.Operation{
  127. Name: opDescribeProvisioningParameters,
  128. HTTPMethod: "POST",
  129. HTTPPath: "/",
  130. }
  131. if input == nil {
  132. input = &DescribeProvisioningParametersInput{}
  133. }
  134. req = c.newRequest(op, input, output)
  135. output = &DescribeProvisioningParametersOutput{}
  136. req.Data = output
  137. return
  138. }
  139. // Provides information about parameters required to provision a specified product
  140. // in a specified manner. Use this operation to obtain the list of ProvisioningArtifactParameters
  141. // parameters available to call the ProvisionProduct operation for the specified
  142. // product.
  143. func (c *ServiceCatalog) DescribeProvisioningParameters(input *DescribeProvisioningParametersInput) (*DescribeProvisioningParametersOutput, error) {
  144. req, out := c.DescribeProvisioningParametersRequest(input)
  145. err := req.Send()
  146. return out, err
  147. }
  148. const opDescribeRecord = "DescribeRecord"
  149. // DescribeRecordRequest generates a "aws/request.Request" representing the
  150. // client's request for the DescribeRecord operation. The "output" return
  151. // value can be used to capture response data after the request's "Send" method
  152. // is called.
  153. //
  154. // Creating a request object using this method should be used when you want to inject
  155. // custom logic into the request's lifecycle using a custom handler, or if you want to
  156. // access properties on the request object before or after sending the request. If
  157. // you just want the service response, call the DescribeRecord method directly
  158. // instead.
  159. //
  160. // Note: You must call the "Send" method on the returned request object in order
  161. // to execute the request.
  162. //
  163. // // Example sending a request using the DescribeRecordRequest method.
  164. // req, resp := client.DescribeRecordRequest(params)
  165. //
  166. // err := req.Send()
  167. // if err == nil { // resp is now filled
  168. // fmt.Println(resp)
  169. // }
  170. //
  171. func (c *ServiceCatalog) DescribeRecordRequest(input *DescribeRecordInput) (req *request.Request, output *DescribeRecordOutput) {
  172. op := &request.Operation{
  173. Name: opDescribeRecord,
  174. HTTPMethod: "POST",
  175. HTTPPath: "/",
  176. }
  177. if input == nil {
  178. input = &DescribeRecordInput{}
  179. }
  180. req = c.newRequest(op, input, output)
  181. output = &DescribeRecordOutput{}
  182. req.Data = output
  183. return
  184. }
  185. // Retrieves a paginated list of the full details of a specific request. Use
  186. // this operation after calling a request operation (ProvisionProduct, TerminateProvisionedProduct,
  187. // or UpdateProvisionedProduct).
  188. func (c *ServiceCatalog) DescribeRecord(input *DescribeRecordInput) (*DescribeRecordOutput, error) {
  189. req, out := c.DescribeRecordRequest(input)
  190. err := req.Send()
  191. return out, err
  192. }
  193. const opListLaunchPaths = "ListLaunchPaths"
  194. // ListLaunchPathsRequest generates a "aws/request.Request" representing the
  195. // client's request for the ListLaunchPaths 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 ListLaunchPaths 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 ListLaunchPathsRequest method.
  209. // req, resp := client.ListLaunchPathsRequest(params)
  210. //
  211. // err := req.Send()
  212. // if err == nil { // resp is now filled
  213. // fmt.Println(resp)
  214. // }
  215. //
  216. func (c *ServiceCatalog) ListLaunchPathsRequest(input *ListLaunchPathsInput) (req *request.Request, output *ListLaunchPathsOutput) {
  217. op := &request.Operation{
  218. Name: opListLaunchPaths,
  219. HTTPMethod: "POST",
  220. HTTPPath: "/",
  221. }
  222. if input == nil {
  223. input = &ListLaunchPathsInput{}
  224. }
  225. req = c.newRequest(op, input, output)
  226. output = &ListLaunchPathsOutput{}
  227. req.Data = output
  228. return
  229. }
  230. // Returns a paginated list of all paths to a specified product. A path is how
  231. // the user has access to a specified product, and is necessary when provisioning
  232. // a product. A path also determines the constraints put on the product.
  233. func (c *ServiceCatalog) ListLaunchPaths(input *ListLaunchPathsInput) (*ListLaunchPathsOutput, error) {
  234. req, out := c.ListLaunchPathsRequest(input)
  235. err := req.Send()
  236. return out, err
  237. }
  238. const opListRecordHistory = "ListRecordHistory"
  239. // ListRecordHistoryRequest generates a "aws/request.Request" representing the
  240. // client's request for the ListRecordHistory 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 ListRecordHistory 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 ListRecordHistoryRequest method.
  254. // req, resp := client.ListRecordHistoryRequest(params)
  255. //
  256. // err := req.Send()
  257. // if err == nil { // resp is now filled
  258. // fmt.Println(resp)
  259. // }
  260. //
  261. func (c *ServiceCatalog) ListRecordHistoryRequest(input *ListRecordHistoryInput) (req *request.Request, output *ListRecordHistoryOutput) {
  262. op := &request.Operation{
  263. Name: opListRecordHistory,
  264. HTTPMethod: "POST",
  265. HTTPPath: "/",
  266. }
  267. if input == nil {
  268. input = &ListRecordHistoryInput{}
  269. }
  270. req = c.newRequest(op, input, output)
  271. output = &ListRecordHistoryOutput{}
  272. req.Data = output
  273. return
  274. }
  275. // Returns a paginated list of all performed requests, in the form of RecordDetails
  276. // objects that are filtered as specified.
  277. func (c *ServiceCatalog) ListRecordHistory(input *ListRecordHistoryInput) (*ListRecordHistoryOutput, error) {
  278. req, out := c.ListRecordHistoryRequest(input)
  279. err := req.Send()
  280. return out, err
  281. }
  282. const opProvisionProduct = "ProvisionProduct"
  283. // ProvisionProductRequest generates a "aws/request.Request" representing the
  284. // client's request for the ProvisionProduct 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 ProvisionProduct 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 ProvisionProductRequest method.
  298. // req, resp := client.ProvisionProductRequest(params)
  299. //
  300. // err := req.Send()
  301. // if err == nil { // resp is now filled
  302. // fmt.Println(resp)
  303. // }
  304. //
  305. func (c *ServiceCatalog) ProvisionProductRequest(input *ProvisionProductInput) (req *request.Request, output *ProvisionProductOutput) {
  306. op := &request.Operation{
  307. Name: opProvisionProduct,
  308. HTTPMethod: "POST",
  309. HTTPPath: "/",
  310. }
  311. if input == nil {
  312. input = &ProvisionProductInput{}
  313. }
  314. req = c.newRequest(op, input, output)
  315. output = &ProvisionProductOutput{}
  316. req.Data = output
  317. return
  318. }
  319. // Requests a Provision of a specified product. A ProvisionedProduct is a resourced
  320. // instance for a product. For example, provisioning a CloudFormation-template-backed
  321. // product results in launching a CloudFormation stack and all the underlying
  322. // resources that come with it.
  323. //
  324. // You can check the status of this request using the DescribeRecord operation.
  325. func (c *ServiceCatalog) ProvisionProduct(input *ProvisionProductInput) (*ProvisionProductOutput, error) {
  326. req, out := c.ProvisionProductRequest(input)
  327. err := req.Send()
  328. return out, err
  329. }
  330. const opScanProvisionedProducts = "ScanProvisionedProducts"
  331. // ScanProvisionedProductsRequest generates a "aws/request.Request" representing the
  332. // client's request for the ScanProvisionedProducts operation. The "output" return
  333. // value can be used to capture response data after the request's "Send" method
  334. // is called.
  335. //
  336. // Creating a request object using this method should be used when you want to inject
  337. // custom logic into the request's lifecycle using a custom handler, or if you want to
  338. // access properties on the request object before or after sending the request. If
  339. // you just want the service response, call the ScanProvisionedProducts method directly
  340. // instead.
  341. //
  342. // Note: You must call the "Send" method on the returned request object in order
  343. // to execute the request.
  344. //
  345. // // Example sending a request using the ScanProvisionedProductsRequest method.
  346. // req, resp := client.ScanProvisionedProductsRequest(params)
  347. //
  348. // err := req.Send()
  349. // if err == nil { // resp is now filled
  350. // fmt.Println(resp)
  351. // }
  352. //
  353. func (c *ServiceCatalog) ScanProvisionedProductsRequest(input *ScanProvisionedProductsInput) (req *request.Request, output *ScanProvisionedProductsOutput) {
  354. op := &request.Operation{
  355. Name: opScanProvisionedProducts,
  356. HTTPMethod: "POST",
  357. HTTPPath: "/",
  358. }
  359. if input == nil {
  360. input = &ScanProvisionedProductsInput{}
  361. }
  362. req = c.newRequest(op, input, output)
  363. output = &ScanProvisionedProductsOutput{}
  364. req.Data = output
  365. return
  366. }
  367. // Returns a paginated list of all the ProvisionedProduct objects that are currently
  368. // available (not terminated).
  369. func (c *ServiceCatalog) ScanProvisionedProducts(input *ScanProvisionedProductsInput) (*ScanProvisionedProductsOutput, error) {
  370. req, out := c.ScanProvisionedProductsRequest(input)
  371. err := req.Send()
  372. return out, err
  373. }
  374. const opSearchProducts = "SearchProducts"
  375. // SearchProductsRequest generates a "aws/request.Request" representing the
  376. // client's request for the SearchProducts operation. The "output" return
  377. // value can be used to capture response data after the request's "Send" method
  378. // is called.
  379. //
  380. // Creating a request object using this method should be used when you want to inject
  381. // custom logic into the request's lifecycle using a custom handler, or if you want to
  382. // access properties on the request object before or after sending the request. If
  383. // you just want the service response, call the SearchProducts method directly
  384. // instead.
  385. //
  386. // Note: You must call the "Send" method on the returned request object in order
  387. // to execute the request.
  388. //
  389. // // Example sending a request using the SearchProductsRequest method.
  390. // req, resp := client.SearchProductsRequest(params)
  391. //
  392. // err := req.Send()
  393. // if err == nil { // resp is now filled
  394. // fmt.Println(resp)
  395. // }
  396. //
  397. func (c *ServiceCatalog) SearchProductsRequest(input *SearchProductsInput) (req *request.Request, output *SearchProductsOutput) {
  398. op := &request.Operation{
  399. Name: opSearchProducts,
  400. HTTPMethod: "POST",
  401. HTTPPath: "/",
  402. }
  403. if input == nil {
  404. input = &SearchProductsInput{}
  405. }
  406. req = c.newRequest(op, input, output)
  407. output = &SearchProductsOutput{}
  408. req.Data = output
  409. return
  410. }
  411. // Returns a paginated list all of the Products objects to which the caller
  412. // has access.
  413. //
  414. // The output of this operation can be used as input for other operations,
  415. // such as DescribeProductView.
  416. func (c *ServiceCatalog) SearchProducts(input *SearchProductsInput) (*SearchProductsOutput, error) {
  417. req, out := c.SearchProductsRequest(input)
  418. err := req.Send()
  419. return out, err
  420. }
  421. const opTerminateProvisionedProduct = "TerminateProvisionedProduct"
  422. // TerminateProvisionedProductRequest generates a "aws/request.Request" representing the
  423. // client's request for the TerminateProvisionedProduct operation. The "output" return
  424. // value can be used to capture response data after the request's "Send" method
  425. // is called.
  426. //
  427. // Creating a request object using this method should be used when you want to inject
  428. // custom logic into the request's lifecycle using a custom handler, or if you want to
  429. // access properties on the request object before or after sending the request. If
  430. // you just want the service response, call the TerminateProvisionedProduct method directly
  431. // instead.
  432. //
  433. // Note: You must call the "Send" method on the returned request object in order
  434. // to execute the request.
  435. //
  436. // // Example sending a request using the TerminateProvisionedProductRequest method.
  437. // req, resp := client.TerminateProvisionedProductRequest(params)
  438. //
  439. // err := req.Send()
  440. // if err == nil { // resp is now filled
  441. // fmt.Println(resp)
  442. // }
  443. //
  444. func (c *ServiceCatalog) TerminateProvisionedProductRequest(input *TerminateProvisionedProductInput) (req *request.Request, output *TerminateProvisionedProductOutput) {
  445. op := &request.Operation{
  446. Name: opTerminateProvisionedProduct,
  447. HTTPMethod: "POST",
  448. HTTPPath: "/",
  449. }
  450. if input == nil {
  451. input = &TerminateProvisionedProductInput{}
  452. }
  453. req = c.newRequest(op, input, output)
  454. output = &TerminateProvisionedProductOutput{}
  455. req.Data = output
  456. return
  457. }
  458. // Requests termination of an existing ProvisionedProduct object. If there are
  459. // Tags associated with the object, they are terminated when the ProvisionedProduct
  460. // object is terminated.
  461. //
  462. // This operation does not delete any records associated with the ProvisionedProduct
  463. // object.
  464. //
  465. // You can check the status of this request using the DescribeRecord operation.
  466. func (c *ServiceCatalog) TerminateProvisionedProduct(input *TerminateProvisionedProductInput) (*TerminateProvisionedProductOutput, error) {
  467. req, out := c.TerminateProvisionedProductRequest(input)
  468. err := req.Send()
  469. return out, err
  470. }
  471. const opUpdateProvisionedProduct = "UpdateProvisionedProduct"
  472. // UpdateProvisionedProductRequest generates a "aws/request.Request" representing the
  473. // client's request for the UpdateProvisionedProduct operation. The "output" return
  474. // value can be used to capture response data after the request's "Send" method
  475. // is called.
  476. //
  477. // Creating a request object using this method should be used when you want to inject
  478. // custom logic into the request's lifecycle using a custom handler, or if you want to
  479. // access properties on the request object before or after sending the request. If
  480. // you just want the service response, call the UpdateProvisionedProduct method directly
  481. // instead.
  482. //
  483. // Note: You must call the "Send" method on the returned request object in order
  484. // to execute the request.
  485. //
  486. // // Example sending a request using the UpdateProvisionedProductRequest method.
  487. // req, resp := client.UpdateProvisionedProductRequest(params)
  488. //
  489. // err := req.Send()
  490. // if err == nil { // resp is now filled
  491. // fmt.Println(resp)
  492. // }
  493. //
  494. func (c *ServiceCatalog) UpdateProvisionedProductRequest(input *UpdateProvisionedProductInput) (req *request.Request, output *UpdateProvisionedProductOutput) {
  495. op := &request.Operation{
  496. Name: opUpdateProvisionedProduct,
  497. HTTPMethod: "POST",
  498. HTTPPath: "/",
  499. }
  500. if input == nil {
  501. input = &UpdateProvisionedProductInput{}
  502. }
  503. req = c.newRequest(op, input, output)
  504. output = &UpdateProvisionedProductOutput{}
  505. req.Data = output
  506. return
  507. }
  508. // Requests updates to the configuration of an existing ProvisionedProduct object.
  509. // If there are tags associated with the object, they cannot be updated or added
  510. // with this operation. Depending on the specific updates requested, this operation
  511. // may update with no interruption, with some interruption, or replace the ProvisionedProduct
  512. // object entirely.
  513. //
  514. // You can check the status of this request using the DescribeRecord operation.
  515. func (c *ServiceCatalog) UpdateProvisionedProduct(input *UpdateProvisionedProductInput) (*UpdateProvisionedProductOutput, error) {
  516. req, out := c.UpdateProvisionedProductRequest(input)
  517. err := req.Send()
  518. return out, err
  519. }
  520. // An administrator-specified constraint to apply when provisioning a product.
  521. type ConstraintSummary struct {
  522. _ struct{} `type:"structure"`
  523. // The text description of the constraint.
  524. Description *string `type:"string"`
  525. // The type of the constraint.
  526. Type *string `type:"string"`
  527. }
  528. // String returns the string representation
  529. func (s ConstraintSummary) String() string {
  530. return awsutil.Prettify(s)
  531. }
  532. // GoString returns the string representation
  533. func (s ConstraintSummary) GoString() string {
  534. return s.String()
  535. }
  536. type DescribeProductInput struct {
  537. _ struct{} `type:"structure"`
  538. // Optional language code. Supported language codes are as follows:
  539. //
  540. // "en" (English)
  541. //
  542. // "jp" (Japanese)
  543. //
  544. // "zh" (Chinese)
  545. //
  546. // If no code is specified, "en" is used as the default.
  547. AcceptLanguage *string `type:"string"`
  548. // The ProductId of the product to describe.
  549. Id *string `type:"string" required:"true"`
  550. }
  551. // String returns the string representation
  552. func (s DescribeProductInput) String() string {
  553. return awsutil.Prettify(s)
  554. }
  555. // GoString returns the string representation
  556. func (s DescribeProductInput) GoString() string {
  557. return s.String()
  558. }
  559. // Validate inspects the fields of the type to determine if they are valid.
  560. func (s *DescribeProductInput) Validate() error {
  561. invalidParams := request.ErrInvalidParams{Context: "DescribeProductInput"}
  562. if s.Id == nil {
  563. invalidParams.Add(request.NewErrParamRequired("Id"))
  564. }
  565. if invalidParams.Len() > 0 {
  566. return invalidParams
  567. }
  568. return nil
  569. }
  570. type DescribeProductOutput struct {
  571. _ struct{} `type:"structure"`
  572. // The summary metadata about the specified product.
  573. ProductViewSummary *ProductViewSummary `type:"structure"`
  574. // A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts
  575. // parameter represent the ways the specified product can be provisioned.
  576. ProvisioningArtifacts []*ProvisioningArtifact `type:"list"`
  577. }
  578. // String returns the string representation
  579. func (s DescribeProductOutput) String() string {
  580. return awsutil.Prettify(s)
  581. }
  582. // GoString returns the string representation
  583. func (s DescribeProductOutput) GoString() string {
  584. return s.String()
  585. }
  586. type DescribeProductViewInput struct {
  587. _ struct{} `type:"structure"`
  588. // Optional language code. Supported language codes are as follows:
  589. //
  590. // "en" (English)
  591. //
  592. // "jp" (Japanese)
  593. //
  594. // "zh" (Chinese)
  595. //
  596. // If no code is specified, "en" is used as the default.
  597. AcceptLanguage *string `type:"string"`
  598. // The ProductViewId of the product to describe.
  599. Id *string `type:"string" required:"true"`
  600. }
  601. // String returns the string representation
  602. func (s DescribeProductViewInput) String() string {
  603. return awsutil.Prettify(s)
  604. }
  605. // GoString returns the string representation
  606. func (s DescribeProductViewInput) GoString() string {
  607. return s.String()
  608. }
  609. // Validate inspects the fields of the type to determine if they are valid.
  610. func (s *DescribeProductViewInput) Validate() error {
  611. invalidParams := request.ErrInvalidParams{Context: "DescribeProductViewInput"}
  612. if s.Id == nil {
  613. invalidParams.Add(request.NewErrParamRequired("Id"))
  614. }
  615. if invalidParams.Len() > 0 {
  616. return invalidParams
  617. }
  618. return nil
  619. }
  620. type DescribeProductViewOutput struct {
  621. _ struct{} `type:"structure"`
  622. // The summary metadata about the specified product.
  623. ProductViewSummary *ProductViewSummary `type:"structure"`
  624. // A list of provisioning artifact objects for the specified product. The ProvisioningArtifacts
  625. // represent the ways in which the specified product can be provisioned.
  626. ProvisioningArtifacts []*ProvisioningArtifact `type:"list"`
  627. }
  628. // String returns the string representation
  629. func (s DescribeProductViewOutput) String() string {
  630. return awsutil.Prettify(s)
  631. }
  632. // GoString returns the string representation
  633. func (s DescribeProductViewOutput) GoString() string {
  634. return s.String()
  635. }
  636. type DescribeProvisioningParametersInput struct {
  637. _ struct{} `type:"structure"`
  638. // Optional language code. Supported language codes are as follows:
  639. //
  640. // "en" (English)
  641. //
  642. // "jp" (Japanese)
  643. //
  644. // "zh" (Chinese)
  645. //
  646. // If no code is specified, "en" is used as the default.
  647. AcceptLanguage *string `type:"string"`
  648. // The identifier of the path for this product's provisioning. This value is
  649. // optional if the product has a default path, and is required if there is more
  650. // than one path for the specified product.
  651. PathId *string `type:"string"`
  652. // The identifier of the product.
  653. ProductId *string `type:"string" required:"true"`
  654. // The provisioning artifact identifier for this product.
  655. ProvisioningArtifactId *string `type:"string" required:"true"`
  656. }
  657. // String returns the string representation
  658. func (s DescribeProvisioningParametersInput) String() string {
  659. return awsutil.Prettify(s)
  660. }
  661. // GoString returns the string representation
  662. func (s DescribeProvisioningParametersInput) GoString() string {
  663. return s.String()
  664. }
  665. // Validate inspects the fields of the type to determine if they are valid.
  666. func (s *DescribeProvisioningParametersInput) Validate() error {
  667. invalidParams := request.ErrInvalidParams{Context: "DescribeProvisioningParametersInput"}
  668. if s.ProductId == nil {
  669. invalidParams.Add(request.NewErrParamRequired("ProductId"))
  670. }
  671. if s.ProvisioningArtifactId == nil {
  672. invalidParams.Add(request.NewErrParamRequired("ProvisioningArtifactId"))
  673. }
  674. if invalidParams.Len() > 0 {
  675. return invalidParams
  676. }
  677. return nil
  678. }
  679. type DescribeProvisioningParametersOutput struct {
  680. _ struct{} `type:"structure"`
  681. // The list of constraint summaries that apply to provisioning this product.
  682. ConstraintSummaries []*ConstraintSummary `type:"list"`
  683. // The list of parameters used to successfully provision the product. Each parameter
  684. // includes a list of allowable values and additional metadata about each parameter.
  685. ProvisioningArtifactParameters []*ProvisioningArtifactParameter `type:"list"`
  686. // Any additional metadata specifically related to the provisioning of the product.
  687. // For example, see the Version field of the CloudFormation template.
  688. UsageInstructions []*UsageInstruction `type:"list"`
  689. }
  690. // String returns the string representation
  691. func (s DescribeProvisioningParametersOutput) String() string {
  692. return awsutil.Prettify(s)
  693. }
  694. // GoString returns the string representation
  695. func (s DescribeProvisioningParametersOutput) GoString() string {
  696. return s.String()
  697. }
  698. type DescribeRecordInput struct {
  699. _ struct{} `type:"structure"`
  700. // Optional language code. Supported language codes are as follows:
  701. //
  702. // "en" (English)
  703. //
  704. // "jp" (Japanese)
  705. //
  706. // "zh" (Chinese)
  707. //
  708. // If no code is specified, "en" is used as the default.
  709. AcceptLanguage *string `type:"string"`
  710. // The record identifier of the ProvisionedProduct object for which to retrieve
  711. // output information. This is the RecordDetail.RecordId obtained from the request
  712. // operation's response.
  713. Id *string `type:"string" required:"true"`
  714. // The maximum number of items to return in the results. If more results exist
  715. // than fit in the specified PageSize, the value of NextPageToken in the response
  716. // is non-null.
  717. PageSize *int64 `type:"integer"`
  718. // The page token of the first page retrieve. If null, this retrieves the first
  719. // page of size PageSize.
  720. PageToken *string `type:"string"`
  721. }
  722. // String returns the string representation
  723. func (s DescribeRecordInput) String() string {
  724. return awsutil.Prettify(s)
  725. }
  726. // GoString returns the string representation
  727. func (s DescribeRecordInput) GoString() string {
  728. return s.String()
  729. }
  730. // Validate inspects the fields of the type to determine if they are valid.
  731. func (s *DescribeRecordInput) Validate() error {
  732. invalidParams := request.ErrInvalidParams{Context: "DescribeRecordInput"}
  733. if s.Id == nil {
  734. invalidParams.Add(request.NewErrParamRequired("Id"))
  735. }
  736. if invalidParams.Len() > 0 {
  737. return invalidParams
  738. }
  739. return nil
  740. }
  741. type DescribeRecordOutput struct {
  742. _ struct{} `type:"structure"`
  743. // The page token to use to retrieve the next page of results for this operation.
  744. // If there are no more pages, this value is null.
  745. NextPageToken *string `type:"string"`
  746. // Detailed record information for the specified product.
  747. RecordDetail *RecordDetail `type:"structure"`
  748. // A list of outputs for the specified Product object created as the result
  749. // of a request. For example, a CloudFormation-backed product that creates an
  750. // S3 bucket would have an output for the S3 bucket URL.
  751. RecordOutputs []*RecordOutput `type:"list"`
  752. }
  753. // String returns the string representation
  754. func (s DescribeRecordOutput) String() string {
  755. return awsutil.Prettify(s)
  756. }
  757. // GoString returns the string representation
  758. func (s DescribeRecordOutput) GoString() string {
  759. return s.String()
  760. }
  761. // Summary information about a path for a user to have access to a specified
  762. // product.
  763. type LaunchPathSummary struct {
  764. _ struct{} `type:"structure"`
  765. // List of constraints on the portfolio-product relationship.
  766. ConstraintSummaries []*ConstraintSummary `type:"list"`
  767. // The unique identifier of the product path.
  768. Id *string `type:"string"`
  769. // Corresponds to the name of the portfolio to which the user was assigned.
  770. Name *string `type:"string"`
  771. // List of tags used by this launch path.
  772. Tags []*Tag `type:"list"`
  773. }
  774. // String returns the string representation
  775. func (s LaunchPathSummary) String() string {
  776. return awsutil.Prettify(s)
  777. }
  778. // GoString returns the string representation
  779. func (s LaunchPathSummary) GoString() string {
  780. return s.String()
  781. }
  782. type ListLaunchPathsInput struct {
  783. _ struct{} `type:"structure"`
  784. // Optional language code. Supported language codes are as follows:
  785. //
  786. // "en" (English)
  787. //
  788. // "jp" (Japanese)
  789. //
  790. // "zh" (Chinese)
  791. //
  792. // If no code is specified, "en" is used as the default.
  793. AcceptLanguage *string `type:"string"`
  794. // The maximum number of items to return in the results. If more results exist
  795. // than fit in the specified PageSize, the value of NextPageToken in the response
  796. // is non-null.
  797. PageSize *int64 `type:"integer"`
  798. // The page token of the first page retrieve. If null, this retrieves the first
  799. // page of size PageSize.
  800. PageToken *string `type:"string"`
  801. // Identifies the product for which to retrieve LaunchPathSummaries information.
  802. ProductId *string `type:"string" required:"true"`
  803. }
  804. // String returns the string representation
  805. func (s ListLaunchPathsInput) String() string {
  806. return awsutil.Prettify(s)
  807. }
  808. // GoString returns the string representation
  809. func (s ListLaunchPathsInput) GoString() string {
  810. return s.String()
  811. }
  812. // Validate inspects the fields of the type to determine if they are valid.
  813. func (s *ListLaunchPathsInput) Validate() error {
  814. invalidParams := request.ErrInvalidParams{Context: "ListLaunchPathsInput"}
  815. if s.ProductId == nil {
  816. invalidParams.Add(request.NewErrParamRequired("ProductId"))
  817. }
  818. if invalidParams.Len() > 0 {
  819. return invalidParams
  820. }
  821. return nil
  822. }
  823. type ListLaunchPathsOutput struct {
  824. _ struct{} `type:"structure"`
  825. // List of launch path information summaries for the specified PageToken.
  826. LaunchPathSummaries []*LaunchPathSummary `type:"list"`
  827. // The page token to use to retrieve the next page of results for this operation.
  828. // If there are no more pages, this value is null.
  829. NextPageToken *string `type:"string"`
  830. }
  831. // String returns the string representation
  832. func (s ListLaunchPathsOutput) String() string {
  833. return awsutil.Prettify(s)
  834. }
  835. // GoString returns the string representation
  836. func (s ListLaunchPathsOutput) GoString() string {
  837. return s.String()
  838. }
  839. type ListRecordHistoryInput struct {
  840. _ struct{} `type:"structure"`
  841. // Optional language code. Supported language codes are as follows:
  842. //
  843. // "en" (English)
  844. //
  845. // "jp" (Japanese)
  846. //
  847. // "zh" (Chinese)
  848. //
  849. // If no code is specified, "en" is used as the default.
  850. AcceptLanguage *string `type:"string"`
  851. // The maximum number of items to return in the results. If more results exist
  852. // than fit in the specified PageSize, the value of NextPageToken in the response
  853. // is non-null.
  854. PageSize *int64 `type:"integer"`
  855. // The page token of the first page retrieve. If null, this retrieves the first
  856. // page of size PageSize.
  857. PageToken *string `type:"string"`
  858. // (Optional) The filter to limit search results.
  859. SearchFilter *ListRecordHistorySearchFilter `type:"structure"`
  860. }
  861. // String returns the string representation
  862. func (s ListRecordHistoryInput) String() string {
  863. return awsutil.Prettify(s)
  864. }
  865. // GoString returns the string representation
  866. func (s ListRecordHistoryInput) GoString() string {
  867. return s.String()
  868. }
  869. type ListRecordHistoryOutput struct {
  870. _ struct{} `type:"structure"`
  871. // The page token to use to retrieve the next page of results for this operation.
  872. // If there are no more pages, this value is null.
  873. NextPageToken *string `type:"string"`
  874. // A list of record detail objects, listed in reverse chronological order.
  875. RecordDetails []*RecordDetail `type:"list"`
  876. }
  877. // String returns the string representation
  878. func (s ListRecordHistoryOutput) String() string {
  879. return awsutil.Prettify(s)
  880. }
  881. // GoString returns the string representation
  882. func (s ListRecordHistoryOutput) GoString() string {
  883. return s.String()
  884. }
  885. // The search filter to limit results when listing request history records.
  886. type ListRecordHistorySearchFilter struct {
  887. _ struct{} `type:"structure"`
  888. // The filter key.
  889. Key *string `type:"string"`
  890. // The filter value for Key.
  891. Value *string `type:"string"`
  892. }
  893. // String returns the string representation
  894. func (s ListRecordHistorySearchFilter) String() string {
  895. return awsutil.Prettify(s)
  896. }
  897. // GoString returns the string representation
  898. func (s ListRecordHistorySearchFilter) GoString() string {
  899. return s.String()
  900. }
  901. // The constraints that the administrator has put on the parameter.
  902. type ParameterConstraints struct {
  903. _ struct{} `type:"structure"`
  904. // The values that the administrator has allowed for the parameter.
  905. AllowedValues []*string `type:"list"`
  906. }
  907. // String returns the string representation
  908. func (s ParameterConstraints) String() string {
  909. return awsutil.Prettify(s)
  910. }
  911. // GoString returns the string representation
  912. func (s ParameterConstraints) GoString() string {
  913. return s.String()
  914. }
  915. // A single product view aggregation value/count pair, containing metadata about
  916. // each product to which the calling user has access.
  917. type ProductViewAggregationValue struct {
  918. _ struct{} `type:"structure"`
  919. // An approximate count of the products that match the value.
  920. ApproximateCount *int64 `type:"integer"`
  921. // The value of the product view aggregation.
  922. Value *string `type:"string"`
  923. }
  924. // String returns the string representation
  925. func (s ProductViewAggregationValue) String() string {
  926. return awsutil.Prettify(s)
  927. }
  928. // GoString returns the string representation
  929. func (s ProductViewAggregationValue) GoString() string {
  930. return s.String()
  931. }
  932. // The summary metadata about the specified product.
  933. type ProductViewSummary struct {
  934. _ struct{} `type:"structure"`
  935. // The distributor of the product. Contact the product administrator for the
  936. // significance of this value.
  937. Distributor *string `type:"string"`
  938. // A value of false indicates that the product does not have a default path,
  939. // while a value of true indicates that it does. If it's false, call ListLaunchPaths
  940. // to disambiguate between paths. If true, ListLaunchPaths is not required,
  941. // and the output of the ProductViewSummary operation can be used directly with
  942. // DescribeProvisioningParameters.
  943. HasDefaultPath *bool `type:"boolean"`
  944. // The product view identifier.
  945. Id *string `type:"string"`
  946. // The name of the product.
  947. Name *string `type:"string"`
  948. // The owner of the product. Contact the product administrator for the significance
  949. // of this value.
  950. Owner *string `type:"string"`
  951. // The product identifier.
  952. ProductId *string `type:"string"`
  953. // Short description of the product.
  954. ShortDescription *string `type:"string"`
  955. // The description of the support for this Product.
  956. SupportDescription *string `type:"string"`
  957. // The email contact information to obtain support for this Product.
  958. SupportEmail *string `type:"string"`
  959. // The URL information to obtain support for this Product.
  960. SupportUrl *string `type:"string"`
  961. // The product type. Contact the product administrator for the significance
  962. // of this value.
  963. Type *string `type:"string"`
  964. }
  965. // String returns the string representation
  966. func (s ProductViewSummary) String() string {
  967. return awsutil.Prettify(s)
  968. }
  969. // GoString returns the string representation
  970. func (s ProductViewSummary) GoString() string {
  971. return s.String()
  972. }
  973. type ProvisionProductInput struct {
  974. _ struct{} `type:"structure"`
  975. // Optional language code. Supported language codes are as follows:
  976. //
  977. // "en" (English)
  978. //
  979. // "jp" (Japanese)
  980. //
  981. // "zh" (Chinese)
  982. //
  983. // If no code is specified, "en" is used as the default.
  984. AcceptLanguage *string `type:"string"`
  985. // Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related
  986. // events.
  987. NotificationArns []*string `type:"list"`
  988. // The identifier of the path for this product's provisioning. This value is
  989. // optional if the product has a default path, and is required if there is more
  990. // than one path for the specified product.
  991. PathId *string `type:"string"`
  992. // The identifier of the product.
  993. ProductId *string `type:"string" required:"true"`
  994. // An idempotency token that uniquely identifies the provisioning request.
  995. ProvisionToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"`
  996. // A user-friendly name to identify the ProvisionedProduct object. This value
  997. // must be unique for the AWS account and cannot be updated after the product
  998. // is provisioned.
  999. ProvisionedProductName *string `type:"string" required:"true"`
  1000. // The provisioning artifact identifier for this product.
  1001. ProvisioningArtifactId *string `type:"string" required:"true"`
  1002. // Parameters specified by the administrator that are required for provisioning
  1003. // the product.
  1004. ProvisioningParameters []*ProvisioningParameter `type:"list"`
  1005. // (Optional) A list of tags to use as provisioning options.
  1006. Tags []*Tag `type:"list"`
  1007. }
  1008. // String returns the string representation
  1009. func (s ProvisionProductInput) String() string {
  1010. return awsutil.Prettify(s)
  1011. }
  1012. // GoString returns the string representation
  1013. func (s ProvisionProductInput) GoString() string {
  1014. return s.String()
  1015. }
  1016. // Validate inspects the fields of the type to determine if they are valid.
  1017. func (s *ProvisionProductInput) Validate() error {
  1018. invalidParams := request.ErrInvalidParams{Context: "ProvisionProductInput"}
  1019. if s.ProductId == nil {
  1020. invalidParams.Add(request.NewErrParamRequired("ProductId"))
  1021. }
  1022. if s.ProvisionToken == nil {
  1023. invalidParams.Add(request.NewErrParamRequired("ProvisionToken"))
  1024. }
  1025. if s.ProvisionToken != nil && len(*s.ProvisionToken) < 1 {
  1026. invalidParams.Add(request.NewErrParamMinLen("ProvisionToken", 1))
  1027. }
  1028. if s.ProvisionedProductName == nil {
  1029. invalidParams.Add(request.NewErrParamRequired("ProvisionedProductName"))
  1030. }
  1031. if s.ProvisioningArtifactId == nil {
  1032. invalidParams.Add(request.NewErrParamRequired("ProvisioningArtifactId"))
  1033. }
  1034. if s.Tags != nil {
  1035. for i, v := range s.Tags {
  1036. if v == nil {
  1037. continue
  1038. }
  1039. if err := v.Validate(); err != nil {
  1040. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  1041. }
  1042. }
  1043. }
  1044. if invalidParams.Len() > 0 {
  1045. return invalidParams
  1046. }
  1047. return nil
  1048. }
  1049. type ProvisionProductOutput struct {
  1050. _ struct{} `type:"structure"`
  1051. // The detailed result of the ProvisionProduct request, containing the inputs
  1052. // made to that request, the current state of the request, a pointer to the
  1053. // ProvisionedProduct object of the request, and a list of any errors that the
  1054. // request encountered.
  1055. RecordDetail *RecordDetail `type:"structure"`
  1056. }
  1057. // String returns the string representation
  1058. func (s ProvisionProductOutput) String() string {
  1059. return awsutil.Prettify(s)
  1060. }
  1061. // GoString returns the string representation
  1062. func (s ProvisionProductOutput) GoString() string {
  1063. return s.String()
  1064. }
  1065. // Detailed information about a ProvisionedProduct object.
  1066. type ProvisionedProductDetail struct {
  1067. _ struct{} `type:"structure"`
  1068. // The ARN associated with the ProvisionedProduct object.
  1069. Arn *string `min:"1" type:"string"`
  1070. // The time the ProvisionedProduct was created.
  1071. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
  1072. // The identifier of the ProvisionedProduct object.
  1073. Id *string `type:"string"`
  1074. // An idempotency token that uniquely identifies this ProvisionedProduct.
  1075. IdempotencyToken *string `min:"1" type:"string"`
  1076. // The record identifier of the last request performed on this ProvisionedProduct
  1077. // object.
  1078. LastRecordId *string `type:"string"`
  1079. // The user-friendly name of the ProvisionedProduct object.
  1080. Name *string `min:"1" type:"string"`
  1081. // The current status of the ProvisionedProduct.
  1082. Status *string `type:"string" enum:"RecordStatus"`
  1083. // The current status message of the ProvisionedProduct.
  1084. StatusMessage *string `type:"string"`
  1085. // The type of the ProvisionedProduct object.
  1086. Type *string `type:"string"`
  1087. }
  1088. // String returns the string representation
  1089. func (s ProvisionedProductDetail) String() string {
  1090. return awsutil.Prettify(s)
  1091. }
  1092. // GoString returns the string representation
  1093. func (s ProvisionedProductDetail) GoString() string {
  1094. return s.String()
  1095. }
  1096. // Contains information indicating the ways in which a product can be provisioned.
  1097. type ProvisioningArtifact struct {
  1098. _ struct{} `type:"structure"`
  1099. // The time that the artifact was created by the Administrator.
  1100. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
  1101. // The text description of the artifact.
  1102. Description *string `type:"string"`
  1103. // The identifier for the artifact.
  1104. Id *string `type:"string"`
  1105. // The name of the artifact.
  1106. Name *string `type:"string"`
  1107. }
  1108. // String returns the string representation
  1109. func (s ProvisioningArtifact) String() string {
  1110. return awsutil.Prettify(s)
  1111. }
  1112. // GoString returns the string representation
  1113. func (s ProvisioningArtifact) GoString() string {
  1114. return s.String()
  1115. }
  1116. // A parameter used to successfully provision the product. This value includes
  1117. // a list of allowable values and additional metadata.
  1118. type ProvisioningArtifactParameter struct {
  1119. _ struct{} `type:"structure"`
  1120. // The default value for this parameter.
  1121. DefaultValue *string `type:"string"`
  1122. // The text description of the parameter.
  1123. Description *string `type:"string"`
  1124. // If this value is true, the value for this parameter is obfuscated from view
  1125. // when the parameter is retrieved. This parameter is used to hide sensitive
  1126. // information.
  1127. IsNoEcho *bool `type:"boolean"`
  1128. // The list of constraints that the administrator has put on the parameter.
  1129. ParameterConstraints *ParameterConstraints `type:"structure"`
  1130. // The parameter key.
  1131. ParameterKey *string `type:"string"`
  1132. // The parameter type.
  1133. ParameterType *string `type:"string"`
  1134. }
  1135. // String returns the string representation
  1136. func (s ProvisioningArtifactParameter) String() string {
  1137. return awsutil.Prettify(s)
  1138. }
  1139. // GoString returns the string representation
  1140. func (s ProvisioningArtifactParameter) GoString() string {
  1141. return s.String()
  1142. }
  1143. // The arameter key/value pairs used to provision a product.
  1144. type ProvisioningParameter struct {
  1145. _ struct{} `type:"structure"`
  1146. // The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters.
  1147. Key *string `type:"string"`
  1148. // The value to use for provisioning. Any constraints on this value can be found
  1149. // in ProvisioningArtifactParameter for Key.
  1150. Value *string `type:"string"`
  1151. }
  1152. // String returns the string representation
  1153. func (s ProvisioningParameter) String() string {
  1154. return awsutil.Prettify(s)
  1155. }
  1156. // GoString returns the string representation
  1157. func (s ProvisioningParameter) GoString() string {
  1158. return s.String()
  1159. }
  1160. // The full details of a specific ProvisionedProduct object.
  1161. type RecordDetail struct {
  1162. _ struct{} `type:"structure"`
  1163. // The time when the record for the ProvisionedProduct object was created.
  1164. CreatedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
  1165. // The identifier of the path for this product's provisioning.
  1166. PathId *string `type:"string"`
  1167. // The identifier of the product.
  1168. ProductId *string `type:"string"`
  1169. // The identifier of the ProvisionedProduct object.
  1170. ProvisionedProductId *string `type:"string"`
  1171. // The user-friendly name of the ProvisionedProduct object.
  1172. ProvisionedProductName *string `type:"string"`
  1173. // The type of the ProvisionedProduct object.
  1174. ProvisionedProductType *string `type:"string"`
  1175. // The provisioning artifact identifier for this product.
  1176. ProvisioningArtifactId *string `type:"string"`
  1177. // A list of errors that occurred while processing the request.
  1178. RecordErrors []*RecordError `type:"list"`
  1179. // The identifier of the ProvisionedProduct object record.
  1180. RecordId *string `type:"string"`
  1181. // List of tags associated with this record.
  1182. RecordTags []*RecordTag `type:"list"`
  1183. // The record type for this record.
  1184. RecordType *string `type:"string"`
  1185. // The status of the ProvisionedProduct object.
  1186. Status *string `type:"string" enum:"RecordStatus"`
  1187. // The time when the record for the ProvisionedProduct object was last updated.
  1188. UpdatedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
  1189. }
  1190. // String returns the string representation
  1191. func (s RecordDetail) String() string {
  1192. return awsutil.Prettify(s)
  1193. }
  1194. // GoString returns the string representation
  1195. func (s RecordDetail) GoString() string {
  1196. return s.String()
  1197. }
  1198. // The error code and description resulting from an operation.
  1199. type RecordError struct {
  1200. _ struct{} `type:"structure"`
  1201. // The numeric value of the error.
  1202. Code *string `type:"string"`
  1203. // The text description of the error.
  1204. Description *string `type:"string"`
  1205. }
  1206. // String returns the string representation
  1207. func (s RecordError) String() string {
  1208. return awsutil.Prettify(s)
  1209. }
  1210. // GoString returns the string representation
  1211. func (s RecordError) GoString() string {
  1212. return s.String()
  1213. }
  1214. // An output for the specified Product object created as the result of a request.
  1215. // For example, a CloudFormation-backed product that creates an S3 bucket would
  1216. // have an output for the S3 bucket URL.
  1217. type RecordOutput struct {
  1218. _ struct{} `type:"structure"`
  1219. // The text description of the output.
  1220. Description *string `type:"string"`
  1221. // The output key.
  1222. OutputKey *string `type:"string"`
  1223. // The output value.
  1224. OutputValue *string `type:"string"`
  1225. }
  1226. // String returns the string representation
  1227. func (s RecordOutput) String() string {
  1228. return awsutil.Prettify(s)
  1229. }
  1230. // GoString returns the string representation
  1231. func (s RecordOutput) GoString() string {
  1232. return s.String()
  1233. }
  1234. // A tag associated with the record, stored as a key-value pair.
  1235. type RecordTag struct {
  1236. _ struct{} `type:"structure"`
  1237. // The key for this tag.
  1238. Key *string `min:"1" type:"string"`
  1239. // The value for this tag.
  1240. Value *string `min:"1" type:"string"`
  1241. }
  1242. // String returns the string representation
  1243. func (s RecordTag) String() string {
  1244. return awsutil.Prettify(s)
  1245. }
  1246. // GoString returns the string representation
  1247. func (s RecordTag) GoString() string {
  1248. return s.String()
  1249. }
  1250. type ScanProvisionedProductsInput struct {
  1251. _ struct{} `type:"structure"`
  1252. // Optional language code. Supported language codes are as follows:
  1253. //
  1254. // "en" (English)
  1255. //
  1256. // "jp" (Japanese)
  1257. //
  1258. // "zh" (Chinese)
  1259. //
  1260. // If no code is specified, "en" is used as the default.
  1261. AcceptLanguage *string `type:"string"`
  1262. // The maximum number of items to return in the results. If more results exist
  1263. // than fit in the specified PageSize, the value of NextPageToken in the response
  1264. // is non-null.
  1265. PageSize *int64 `type:"integer"`
  1266. // The page token of the first page retrieve. If null, this retrieves the first
  1267. // page of size PageSize.
  1268. PageToken *string `type:"string"`
  1269. }
  1270. // String returns the string representation
  1271. func (s ScanProvisionedProductsInput) String() string {
  1272. return awsutil.Prettify(s)
  1273. }
  1274. // GoString returns the string representation
  1275. func (s ScanProvisionedProductsInput) GoString() string {
  1276. return s.String()
  1277. }
  1278. type ScanProvisionedProductsOutput struct {
  1279. _ struct{} `type:"structure"`
  1280. // The page token to use to retrieve the next page of results for this operation.
  1281. // If there are no more pages, this value is null.
  1282. NextPageToken *string `type:"string"`
  1283. // A list of ProvisionedProduct detail objects.
  1284. ProvisionedProducts []*ProvisionedProductDetail `type:"list"`
  1285. }
  1286. // String returns the string representation
  1287. func (s ScanProvisionedProductsOutput) String() string {
  1288. return awsutil.Prettify(s)
  1289. }
  1290. // GoString returns the string representation
  1291. func (s ScanProvisionedProductsOutput) GoString() string {
  1292. return s.String()
  1293. }
  1294. type SearchProductsInput struct {
  1295. _ struct{} `type:"structure"`
  1296. // Optional language code. Supported language codes are as follows:
  1297. //
  1298. // "en" (English)
  1299. //
  1300. // "jp" (Japanese)
  1301. //
  1302. // "zh" (Chinese)
  1303. //
  1304. // If no code is specified, "en" is used as the default.
  1305. AcceptLanguage *string `type:"string"`
  1306. // (Optional) The list of filters with which to limit search results. If no
  1307. // search filters are specified, the output is all the products to which the
  1308. // calling user has access.
  1309. Filters map[string][]*string `type:"map"`
  1310. // The maximum number of items to return in the results. If more results exist
  1311. // than fit in the specified PageSize, the value of NextPageToken in the response
  1312. // is non-null.
  1313. PageSize *int64 `type:"integer"`
  1314. // The page token of the first page retrieve. If null, this retrieves the first
  1315. // page of size PageSize.
  1316. PageToken *string `type:"string"`
  1317. // (Optional) The sort field specifier. If no value is specified, results are
  1318. // not sorted.
  1319. SortBy *string `type:"string" enum:"ProductViewSortBy"`
  1320. // (Optional) The sort order specifier. If no value is specified, results are
  1321. // not sorted.
  1322. SortOrder *string `type:"string" enum:"SortOrder"`
  1323. }
  1324. // String returns the string representation
  1325. func (s SearchProductsInput) String() string {
  1326. return awsutil.Prettify(s)
  1327. }
  1328. // GoString returns the string representation
  1329. func (s SearchProductsInput) GoString() string {
  1330. return s.String()
  1331. }
  1332. type SearchProductsOutput struct {
  1333. _ struct{} `type:"structure"`
  1334. // The page token to use to retrieve the next page of results for this operation.
  1335. // If there are no more pages, this value is null.
  1336. NextPageToken *string `type:"string"`
  1337. // A list of the product view aggregation value objects.
  1338. ProductViewAggregations map[string][]*ProductViewAggregationValue `type:"map"`
  1339. // A list of the product view summary objects.
  1340. ProductViewSummaries []*ProductViewSummary `type:"list"`
  1341. }
  1342. // String returns the string representation
  1343. func (s SearchProductsOutput) String() string {
  1344. return awsutil.Prettify(s)
  1345. }
  1346. // GoString returns the string representation
  1347. func (s SearchProductsOutput) GoString() string {
  1348. return s.String()
  1349. }
  1350. // Optional key/value pairs to associate with this provisioning. These tags
  1351. // are propagated to the resources created in the provisioning.
  1352. type Tag struct {
  1353. _ struct{} `type:"structure"`
  1354. // The ProvisioningArtifactParameter.TagKey parameter from DescribeProvisioningParameters.
  1355. Key *string `min:"1" type:"string"`
  1356. // The esired value for this key.
  1357. Value *string `min:"1" type:"string"`
  1358. }
  1359. // String returns the string representation
  1360. func (s Tag) String() string {
  1361. return awsutil.Prettify(s)
  1362. }
  1363. // GoString returns the string representation
  1364. func (s Tag) GoString() string {
  1365. return s.String()
  1366. }
  1367. // Validate inspects the fields of the type to determine if they are valid.
  1368. func (s *Tag) Validate() error {
  1369. invalidParams := request.ErrInvalidParams{Context: "Tag"}
  1370. if s.Key != nil && len(*s.Key) < 1 {
  1371. invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  1372. }
  1373. if s.Value != nil && len(*s.Value) < 1 {
  1374. invalidParams.Add(request.NewErrParamMinLen("Value", 1))
  1375. }
  1376. if invalidParams.Len() > 0 {
  1377. return invalidParams
  1378. }
  1379. return nil
  1380. }
  1381. type TerminateProvisionedProductInput struct {
  1382. _ struct{} `type:"structure"`
  1383. // Optional language code. Supported language codes are as follows:
  1384. //
  1385. // "en" (English)
  1386. //
  1387. // "jp" (Japanese)
  1388. //
  1389. // "zh" (Chinese)
  1390. //
  1391. // If no code is specified, "en" is used as the default.
  1392. AcceptLanguage *string `type:"string"`
  1393. // Optional Boolean parameter. If set to true, AWS Service Catalog stops managing
  1394. // the specified ProvisionedProduct object even if it cannot delete the underlying
  1395. // resources.
  1396. IgnoreErrors *bool `type:"boolean"`
  1397. // The identifier of the ProvisionedProduct object to terminate. You must specify
  1398. // either ProvisionedProductName or ProvisionedProductId, but not both.
  1399. ProvisionedProductId *string `type:"string"`
  1400. // The name of the ProvisionedProduct object to terminate. You must specify
  1401. // either ProvisionedProductName or ProvisionedProductId, but not both.
  1402. ProvisionedProductName *string `min:"1" type:"string"`
  1403. // An idempotency token that uniquely identifies the termination request. This
  1404. // token is only valid during the termination process. After the ProvisionedProduct
  1405. // object is terminated, further requests to terminate the same ProvisionedProduct
  1406. // object always return ResourceNotFound regardless of the value of TerminateToken.
  1407. TerminateToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"`
  1408. }
  1409. // String returns the string representation
  1410. func (s TerminateProvisionedProductInput) String() string {
  1411. return awsutil.Prettify(s)
  1412. }
  1413. // GoString returns the string representation
  1414. func (s TerminateProvisionedProductInput) GoString() string {
  1415. return s.String()
  1416. }
  1417. // Validate inspects the fields of the type to determine if they are valid.
  1418. func (s *TerminateProvisionedProductInput) Validate() error {
  1419. invalidParams := request.ErrInvalidParams{Context: "TerminateProvisionedProductInput"}
  1420. if s.ProvisionedProductName != nil && len(*s.ProvisionedProductName) < 1 {
  1421. invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductName", 1))
  1422. }
  1423. if s.TerminateToken == nil {
  1424. invalidParams.Add(request.NewErrParamRequired("TerminateToken"))
  1425. }
  1426. if s.TerminateToken != nil && len(*s.TerminateToken) < 1 {
  1427. invalidParams.Add(request.NewErrParamMinLen("TerminateToken", 1))
  1428. }
  1429. if invalidParams.Len() > 0 {
  1430. return invalidParams
  1431. }
  1432. return nil
  1433. }
  1434. type TerminateProvisionedProductOutput struct {
  1435. _ struct{} `type:"structure"`
  1436. // The detailed result of the TerminateProvisionedProduct request, containing
  1437. // the inputs made to that request, the current state of the request, a pointer
  1438. // to the ProvisionedProduct object that the request is modifying, and a list
  1439. // of any errors that the request encountered.
  1440. RecordDetail *RecordDetail `type:"structure"`
  1441. }
  1442. // String returns the string representation
  1443. func (s TerminateProvisionedProductOutput) String() string {
  1444. return awsutil.Prettify(s)
  1445. }
  1446. // GoString returns the string representation
  1447. func (s TerminateProvisionedProductOutput) GoString() string {
  1448. return s.String()
  1449. }
  1450. type UpdateProvisionedProductInput struct {
  1451. _ struct{} `type:"structure"`
  1452. // Optional language code. Supported language codes are as follows:
  1453. //
  1454. // "en" (English)
  1455. //
  1456. // "jp" (Japanese)
  1457. //
  1458. // "zh" (Chinese)
  1459. //
  1460. // If no code is specified, "en" is used as the default.
  1461. AcceptLanguage *string `type:"string"`
  1462. // The identifier of the path to use in the updated ProvisionedProduct object.
  1463. // This value is optional if the product has a default path, and is required
  1464. // if there is more than one path for the specified product.
  1465. PathId *string `type:"string"`
  1466. // The identifier of the ProvisionedProduct object.
  1467. ProductId *string `type:"string"`
  1468. // The identifier of the ProvisionedProduct object to update. You must specify
  1469. // either ProvisionedProductName or ProvisionedProductId, but not both.
  1470. ProvisionedProductId *string `type:"string"`
  1471. // The updated name of the ProvisionedProduct object . You must specify either
  1472. // ProvisionedProductName or ProvisionedProductId, but not both.
  1473. ProvisionedProductName *string `min:"1" type:"string"`
  1474. // The provisioning artifact identifier for this product.
  1475. ProvisioningArtifactId *string `type:"string"`
  1476. // A list of ProvisioningParameter objects used to update the ProvisionedProduct
  1477. // object.
  1478. ProvisioningParameters []*UpdateProvisioningParameter `type:"list"`
  1479. // The idempotency token that uniquely identifies the provisioning update request.
  1480. UpdateToken *string `min:"1" type:"string" required:"true" idempotencyToken:"true"`
  1481. }
  1482. // String returns the string representation
  1483. func (s UpdateProvisionedProductInput) String() string {
  1484. return awsutil.Prettify(s)
  1485. }
  1486. // GoString returns the string representation
  1487. func (s UpdateProvisionedProductInput) GoString() string {
  1488. return s.String()
  1489. }
  1490. // Validate inspects the fields of the type to determine if they are valid.
  1491. func (s *UpdateProvisionedProductInput) Validate() error {
  1492. invalidParams := request.ErrInvalidParams{Context: "UpdateProvisionedProductInput"}
  1493. if s.ProvisionedProductName != nil && len(*s.ProvisionedProductName) < 1 {
  1494. invalidParams.Add(request.NewErrParamMinLen("ProvisionedProductName", 1))
  1495. }
  1496. if s.UpdateToken == nil {
  1497. invalidParams.Add(request.NewErrParamRequired("UpdateToken"))
  1498. }
  1499. if s.UpdateToken != nil && len(*s.UpdateToken) < 1 {
  1500. invalidParams.Add(request.NewErrParamMinLen("UpdateToken", 1))
  1501. }
  1502. if invalidParams.Len() > 0 {
  1503. return invalidParams
  1504. }
  1505. return nil
  1506. }
  1507. type UpdateProvisionedProductOutput struct {
  1508. _ struct{} `type:"structure"`
  1509. // The detailed result of the UpdateProvisionedProduct request, containing the
  1510. // inputs made to that request, the current state of the request, a pointer
  1511. // to the ProvisionedProduct object that the request is modifying, and a list
  1512. // of any errors that the request encountered.
  1513. RecordDetail *RecordDetail `type:"structure"`
  1514. }
  1515. // String returns the string representation
  1516. func (s UpdateProvisionedProductOutput) String() string {
  1517. return awsutil.Prettify(s)
  1518. }
  1519. // GoString returns the string representation
  1520. func (s UpdateProvisionedProductOutput) GoString() string {
  1521. return s.String()
  1522. }
  1523. // The parameter key/value pair used to update a ProvisionedProduct object.
  1524. // If UsePreviousValue is set to true, Value is ignored and the value for Key
  1525. // is kept as previously set (current value).
  1526. type UpdateProvisioningParameter struct {
  1527. _ struct{} `type:"structure"`
  1528. // The ProvisioningArtifactParameter.ParameterKey parameter from DescribeProvisioningParameters.
  1529. Key *string `type:"string"`
  1530. // If true, uses the currently set value for Key, ignoring UpdateProvisioningParameter.Value.
  1531. UsePreviousValue *bool `type:"boolean"`
  1532. // The value to use for updating the product provisioning. Any constraints on
  1533. // this value can be found in the ProvisioningArtifactParameter parameter for
  1534. // Key.
  1535. Value *string `type:"string"`
  1536. }
  1537. // String returns the string representation
  1538. func (s UpdateProvisioningParameter) String() string {
  1539. return awsutil.Prettify(s)
  1540. }
  1541. // GoString returns the string representation
  1542. func (s UpdateProvisioningParameter) GoString() string {
  1543. return s.String()
  1544. }
  1545. // Additional information provided by the administrator.
  1546. type UsageInstruction struct {
  1547. _ struct{} `type:"structure"`
  1548. // The usage instruction type for the value.
  1549. Type *string `type:"string"`
  1550. // The usage instruction value for this type.
  1551. Value *string `type:"string"`
  1552. }
  1553. // String returns the string representation
  1554. func (s UsageInstruction) String() string {
  1555. return awsutil.Prettify(s)
  1556. }
  1557. // GoString returns the string representation
  1558. func (s UsageInstruction) GoString() string {
  1559. return s.String()
  1560. }
  1561. const (
  1562. // @enum ProductViewFilterBy
  1563. ProductViewFilterByFullTextSearch = "FullTextSearch"
  1564. // @enum ProductViewFilterBy
  1565. ProductViewFilterByOwner = "Owner"
  1566. // @enum ProductViewFilterBy
  1567. ProductViewFilterByProductType = "ProductType"
  1568. )
  1569. const (
  1570. // @enum ProductViewSortBy
  1571. ProductViewSortByTitle = "Title"
  1572. // @enum ProductViewSortBy
  1573. ProductViewSortByVersionCount = "VersionCount"
  1574. // @enum ProductViewSortBy
  1575. ProductViewSortByCreationDate = "CreationDate"
  1576. )
  1577. const (
  1578. // @enum RecordStatus
  1579. RecordStatusInProgress = "IN_PROGRESS"
  1580. // @enum RecordStatus
  1581. RecordStatusSucceeded = "SUCCEEDED"
  1582. // @enum RecordStatus
  1583. RecordStatusError = "ERROR"
  1584. )
  1585. const (
  1586. // @enum SortOrder
  1587. SortOrderAscending = "ASCENDING"
  1588. // @enum SortOrder
  1589. SortOrderDescending = "DESCENDING"
  1590. )