@@ -1271,6 +1271,18 @@ type RegionalAPITriggerTestAlertRequest struct {
1271
1271
ProjectID string `json:"project_id"`
1272
1272
}
1273
1273
1274
+ // RegionalAPIUpdateDataSourceRequest: Update a data source name.
1275
+ type RegionalAPIUpdateDataSourceRequest struct {
1276
+ // Region: region to target. If none is passed will use default region from the config.
1277
+ Region scw.Region `json:"-"`
1278
+
1279
+ // DataSourceID: ID of the data source to update.
1280
+ DataSourceID string `json:"-"`
1281
+
1282
+ // Name: updated name of the data source.
1283
+ Name * string `json:"name,omitempty"`
1284
+ }
1285
+
1274
1286
// UsageOverview: usage overview.
1275
1287
type UsageOverview struct {
1276
1288
ScalewayMetricsUsage * Usage `json:"scaleway_metrics_usage"`
@@ -1790,6 +1802,42 @@ func (s *RegionalAPI) ListDataSources(req *RegionalAPIListDataSourcesRequest, op
1790
1802
return & resp , nil
1791
1803
}
1792
1804
1805
+ // UpdateDataSource: Update a given data source name, specified by the data source ID.
1806
+ func (s * RegionalAPI ) UpdateDataSource (req * RegionalAPIUpdateDataSourceRequest , opts ... scw.RequestOption ) (* DataSource , error ) {
1807
+ var err error
1808
+
1809
+ if req .Region == "" {
1810
+ defaultRegion , _ := s .client .GetDefaultRegion ()
1811
+ req .Region = defaultRegion
1812
+ }
1813
+
1814
+ if fmt .Sprint (req .Region ) == "" {
1815
+ return nil , errors .New ("field Region cannot be empty in request" )
1816
+ }
1817
+
1818
+ if fmt .Sprint (req .DataSourceID ) == "" {
1819
+ return nil , errors .New ("field DataSourceID cannot be empty in request" )
1820
+ }
1821
+
1822
+ scwReq := & scw.ScalewayRequest {
1823
+ Method : "PATCH" ,
1824
+ Path : "/cockpit/v1/regions/" + fmt .Sprint (req .Region ) + "/data-sources/" + fmt .Sprint (req .DataSourceID ) + "" ,
1825
+ }
1826
+
1827
+ err = scwReq .SetBody (req )
1828
+ if err != nil {
1829
+ return nil , err
1830
+ }
1831
+
1832
+ var resp DataSource
1833
+
1834
+ err = s .client .Do (scwReq , & resp , opts ... )
1835
+ if err != nil {
1836
+ return nil , err
1837
+ }
1838
+ return & resp , nil
1839
+ }
1840
+
1793
1841
// GetUsageOverview: Retrieve the data source usage overview per type for the specified Project.
1794
1842
func (s * RegionalAPI ) GetUsageOverview (req * RegionalAPIGetUsageOverviewRequest , opts ... scw.RequestOption ) (* UsageOverview , error ) {
1795
1843
var err error
0 commit comments