@aws-sdk/client-servicediscovery 3.699.0 → 3.712.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/README.md +24 -0
  2. package/dist-cjs/index.js +142 -2
  3. package/dist-es/ServiceDiscovery.js +6 -0
  4. package/dist-es/commands/DeleteServiceAttributesCommand.js +22 -0
  5. package/dist-es/commands/GetServiceAttributesCommand.js +22 -0
  6. package/dist-es/commands/UpdateServiceAttributesCommand.js +22 -0
  7. package/dist-es/commands/index.js +3 -0
  8. package/dist-es/models/models_0.js +13 -0
  9. package/dist-es/protocols/Aws_json1_1.js +70 -1
  10. package/dist-types/ServiceDiscovery.d.ts +21 -0
  11. package/dist-types/ServiceDiscoveryClient.d.ts +5 -2
  12. package/dist-types/commands/DeleteServiceAttributesCommand.d.ts +79 -0
  13. package/dist-types/commands/DeleteServiceCommand.d.ts +1 -1
  14. package/dist-types/commands/GetServiceAttributesCommand.d.ts +83 -0
  15. package/dist-types/commands/UpdateServiceAttributesCommand.d.ts +82 -0
  16. package/dist-types/commands/index.d.ts +3 -0
  17. package/dist-types/models/models_0.d.ts +104 -5
  18. package/dist-types/protocols/Aws_json1_1.d.ts +27 -0
  19. package/dist-types/ts3.4/ServiceDiscovery.d.ts +51 -0
  20. package/dist-types/ts3.4/ServiceDiscoveryClient.d.ts +18 -0
  21. package/dist-types/ts3.4/commands/DeleteServiceAttributesCommand.d.ts +51 -0
  22. package/dist-types/ts3.4/commands/GetServiceAttributesCommand.d.ts +51 -0
  23. package/dist-types/ts3.4/commands/UpdateServiceAttributesCommand.d.ts +51 -0
  24. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  25. package/dist-types/ts3.4/models/models_0.d.ts +31 -0
  26. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +36 -0
  27. package/package.json +35 -35
@@ -4,6 +4,7 @@ import { CreatePrivateDnsNamespaceCommandInput, CreatePrivateDnsNamespaceCommand
4
4
  import { CreatePublicDnsNamespaceCommandInput, CreatePublicDnsNamespaceCommandOutput } from "./commands/CreatePublicDnsNamespaceCommand";
5
5
  import { CreateServiceCommandInput, CreateServiceCommandOutput } from "./commands/CreateServiceCommand";
6
6
  import { DeleteNamespaceCommandInput, DeleteNamespaceCommandOutput } from "./commands/DeleteNamespaceCommand";
7
+ import { DeleteServiceAttributesCommandInput, DeleteServiceAttributesCommandOutput } from "./commands/DeleteServiceAttributesCommand";
7
8
  import { DeleteServiceCommandInput, DeleteServiceCommandOutput } from "./commands/DeleteServiceCommand";
8
9
  import { DeregisterInstanceCommandInput, DeregisterInstanceCommandOutput } from "./commands/DeregisterInstanceCommand";
9
10
  import { DiscoverInstancesCommandInput, DiscoverInstancesCommandOutput } from "./commands/DiscoverInstancesCommand";
@@ -12,6 +13,7 @@ import { GetInstanceCommandInput, GetInstanceCommandOutput } from "./commands/Ge
12
13
  import { GetInstancesHealthStatusCommandInput, GetInstancesHealthStatusCommandOutput } from "./commands/GetInstancesHealthStatusCommand";
13
14
  import { GetNamespaceCommandInput, GetNamespaceCommandOutput } from "./commands/GetNamespaceCommand";
14
15
  import { GetOperationCommandInput, GetOperationCommandOutput } from "./commands/GetOperationCommand";
16
+ import { GetServiceAttributesCommandInput, GetServiceAttributesCommandOutput } from "./commands/GetServiceAttributesCommand";
15
17
  import { GetServiceCommandInput, GetServiceCommandOutput } from "./commands/GetServiceCommand";
16
18
  import { ListInstancesCommandInput, ListInstancesCommandOutput } from "./commands/ListInstancesCommand";
17
19
  import { ListNamespacesCommandInput, ListNamespacesCommandOutput } from "./commands/ListNamespacesCommand";
@@ -25,6 +27,7 @@ import { UpdateHttpNamespaceCommandInput, UpdateHttpNamespaceCommandOutput } fro
25
27
  import { UpdateInstanceCustomHealthStatusCommandInput, UpdateInstanceCustomHealthStatusCommandOutput } from "./commands/UpdateInstanceCustomHealthStatusCommand";
26
28
  import { UpdatePrivateDnsNamespaceCommandInput, UpdatePrivateDnsNamespaceCommandOutput } from "./commands/UpdatePrivateDnsNamespaceCommand";
27
29
  import { UpdatePublicDnsNamespaceCommandInput, UpdatePublicDnsNamespaceCommandOutput } from "./commands/UpdatePublicDnsNamespaceCommand";
30
+ import { UpdateServiceAttributesCommandInput, UpdateServiceAttributesCommandOutput } from "./commands/UpdateServiceAttributesCommand";
28
31
  import { UpdateServiceCommandInput, UpdateServiceCommandOutput } from "./commands/UpdateServiceCommand";
29
32
  import { ServiceDiscoveryClient } from "./ServiceDiscoveryClient";
30
33
  export interface ServiceDiscovery {
@@ -64,6 +67,12 @@ export interface ServiceDiscovery {
64
67
  deleteService(args: DeleteServiceCommandInput, options?: __HttpHandlerOptions): Promise<DeleteServiceCommandOutput>;
65
68
  deleteService(args: DeleteServiceCommandInput, cb: (err: any, data?: DeleteServiceCommandOutput) => void): void;
66
69
  deleteService(args: DeleteServiceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteServiceCommandOutput) => void): void;
70
+ /**
71
+ * @see {@link DeleteServiceAttributesCommand}
72
+ */
73
+ deleteServiceAttributes(args: DeleteServiceAttributesCommandInput, options?: __HttpHandlerOptions): Promise<DeleteServiceAttributesCommandOutput>;
74
+ deleteServiceAttributes(args: DeleteServiceAttributesCommandInput, cb: (err: any, data?: DeleteServiceAttributesCommandOutput) => void): void;
75
+ deleteServiceAttributes(args: DeleteServiceAttributesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteServiceAttributesCommandOutput) => void): void;
67
76
  /**
68
77
  * @see {@link DeregisterInstanceCommand}
69
78
  */
@@ -112,6 +121,12 @@ export interface ServiceDiscovery {
112
121
  getService(args: GetServiceCommandInput, options?: __HttpHandlerOptions): Promise<GetServiceCommandOutput>;
113
122
  getService(args: GetServiceCommandInput, cb: (err: any, data?: GetServiceCommandOutput) => void): void;
114
123
  getService(args: GetServiceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetServiceCommandOutput) => void): void;
124
+ /**
125
+ * @see {@link GetServiceAttributesCommand}
126
+ */
127
+ getServiceAttributes(args: GetServiceAttributesCommandInput, options?: __HttpHandlerOptions): Promise<GetServiceAttributesCommandOutput>;
128
+ getServiceAttributes(args: GetServiceAttributesCommandInput, cb: (err: any, data?: GetServiceAttributesCommandOutput) => void): void;
129
+ getServiceAttributes(args: GetServiceAttributesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetServiceAttributesCommandOutput) => void): void;
115
130
  /**
116
131
  * @see {@link ListInstancesCommand}
117
132
  */
@@ -193,6 +208,12 @@ export interface ServiceDiscovery {
193
208
  updateService(args: UpdateServiceCommandInput, options?: __HttpHandlerOptions): Promise<UpdateServiceCommandOutput>;
194
209
  updateService(args: UpdateServiceCommandInput, cb: (err: any, data?: UpdateServiceCommandOutput) => void): void;
195
210
  updateService(args: UpdateServiceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateServiceCommandOutput) => void): void;
211
+ /**
212
+ * @see {@link UpdateServiceAttributesCommand}
213
+ */
214
+ updateServiceAttributes(args: UpdateServiceAttributesCommandInput, options?: __HttpHandlerOptions): Promise<UpdateServiceAttributesCommandOutput>;
215
+ updateServiceAttributes(args: UpdateServiceAttributesCommandInput, cb: (err: any, data?: UpdateServiceAttributesCommandOutput) => void): void;
216
+ updateServiceAttributes(args: UpdateServiceAttributesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateServiceAttributesCommandOutput) => void): void;
196
217
  }
197
218
  /**
198
219
  * <fullname>Cloud Map</fullname>
@@ -12,6 +12,7 @@ import { CreatePrivateDnsNamespaceCommandInput, CreatePrivateDnsNamespaceCommand
12
12
  import { CreatePublicDnsNamespaceCommandInput, CreatePublicDnsNamespaceCommandOutput } from "./commands/CreatePublicDnsNamespaceCommand";
13
13
  import { CreateServiceCommandInput, CreateServiceCommandOutput } from "./commands/CreateServiceCommand";
14
14
  import { DeleteNamespaceCommandInput, DeleteNamespaceCommandOutput } from "./commands/DeleteNamespaceCommand";
15
+ import { DeleteServiceAttributesCommandInput, DeleteServiceAttributesCommandOutput } from "./commands/DeleteServiceAttributesCommand";
15
16
  import { DeleteServiceCommandInput, DeleteServiceCommandOutput } from "./commands/DeleteServiceCommand";
16
17
  import { DeregisterInstanceCommandInput, DeregisterInstanceCommandOutput } from "./commands/DeregisterInstanceCommand";
17
18
  import { DiscoverInstancesCommandInput, DiscoverInstancesCommandOutput } from "./commands/DiscoverInstancesCommand";
@@ -20,6 +21,7 @@ import { GetInstanceCommandInput, GetInstanceCommandOutput } from "./commands/Ge
20
21
  import { GetInstancesHealthStatusCommandInput, GetInstancesHealthStatusCommandOutput } from "./commands/GetInstancesHealthStatusCommand";
21
22
  import { GetNamespaceCommandInput, GetNamespaceCommandOutput } from "./commands/GetNamespaceCommand";
22
23
  import { GetOperationCommandInput, GetOperationCommandOutput } from "./commands/GetOperationCommand";
24
+ import { GetServiceAttributesCommandInput, GetServiceAttributesCommandOutput } from "./commands/GetServiceAttributesCommand";
23
25
  import { GetServiceCommandInput, GetServiceCommandOutput } from "./commands/GetServiceCommand";
24
26
  import { ListInstancesCommandInput, ListInstancesCommandOutput } from "./commands/ListInstancesCommand";
25
27
  import { ListNamespacesCommandInput, ListNamespacesCommandOutput } from "./commands/ListNamespacesCommand";
@@ -33,6 +35,7 @@ import { UpdateHttpNamespaceCommandInput, UpdateHttpNamespaceCommandOutput } fro
33
35
  import { UpdateInstanceCustomHealthStatusCommandInput, UpdateInstanceCustomHealthStatusCommandOutput } from "./commands/UpdateInstanceCustomHealthStatusCommand";
34
36
  import { UpdatePrivateDnsNamespaceCommandInput, UpdatePrivateDnsNamespaceCommandOutput } from "./commands/UpdatePrivateDnsNamespaceCommand";
35
37
  import { UpdatePublicDnsNamespaceCommandInput, UpdatePublicDnsNamespaceCommandOutput } from "./commands/UpdatePublicDnsNamespaceCommand";
38
+ import { UpdateServiceAttributesCommandInput, UpdateServiceAttributesCommandOutput } from "./commands/UpdateServiceAttributesCommand";
36
39
  import { UpdateServiceCommandInput, UpdateServiceCommandOutput } from "./commands/UpdateServiceCommand";
37
40
  import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, EndpointParameters } from "./endpoint/EndpointParameters";
38
41
  import { RuntimeExtension, RuntimeExtensionsConfig } from "./runtimeExtensions";
@@ -40,11 +43,11 @@ export { __Client };
40
43
  /**
41
44
  * @public
42
45
  */
43
- export type ServiceInputTypes = CreateHttpNamespaceCommandInput | CreatePrivateDnsNamespaceCommandInput | CreatePublicDnsNamespaceCommandInput | CreateServiceCommandInput | DeleteNamespaceCommandInput | DeleteServiceCommandInput | DeregisterInstanceCommandInput | DiscoverInstancesCommandInput | DiscoverInstancesRevisionCommandInput | GetInstanceCommandInput | GetInstancesHealthStatusCommandInput | GetNamespaceCommandInput | GetOperationCommandInput | GetServiceCommandInput | ListInstancesCommandInput | ListNamespacesCommandInput | ListOperationsCommandInput | ListServicesCommandInput | ListTagsForResourceCommandInput | RegisterInstanceCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateHttpNamespaceCommandInput | UpdateInstanceCustomHealthStatusCommandInput | UpdatePrivateDnsNamespaceCommandInput | UpdatePublicDnsNamespaceCommandInput | UpdateServiceCommandInput;
46
+ export type ServiceInputTypes = CreateHttpNamespaceCommandInput | CreatePrivateDnsNamespaceCommandInput | CreatePublicDnsNamespaceCommandInput | CreateServiceCommandInput | DeleteNamespaceCommandInput | DeleteServiceAttributesCommandInput | DeleteServiceCommandInput | DeregisterInstanceCommandInput | DiscoverInstancesCommandInput | DiscoverInstancesRevisionCommandInput | GetInstanceCommandInput | GetInstancesHealthStatusCommandInput | GetNamespaceCommandInput | GetOperationCommandInput | GetServiceAttributesCommandInput | GetServiceCommandInput | ListInstancesCommandInput | ListNamespacesCommandInput | ListOperationsCommandInput | ListServicesCommandInput | ListTagsForResourceCommandInput | RegisterInstanceCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateHttpNamespaceCommandInput | UpdateInstanceCustomHealthStatusCommandInput | UpdatePrivateDnsNamespaceCommandInput | UpdatePublicDnsNamespaceCommandInput | UpdateServiceAttributesCommandInput | UpdateServiceCommandInput;
44
47
  /**
45
48
  * @public
46
49
  */
47
- export type ServiceOutputTypes = CreateHttpNamespaceCommandOutput | CreatePrivateDnsNamespaceCommandOutput | CreatePublicDnsNamespaceCommandOutput | CreateServiceCommandOutput | DeleteNamespaceCommandOutput | DeleteServiceCommandOutput | DeregisterInstanceCommandOutput | DiscoverInstancesCommandOutput | DiscoverInstancesRevisionCommandOutput | GetInstanceCommandOutput | GetInstancesHealthStatusCommandOutput | GetNamespaceCommandOutput | GetOperationCommandOutput | GetServiceCommandOutput | ListInstancesCommandOutput | ListNamespacesCommandOutput | ListOperationsCommandOutput | ListServicesCommandOutput | ListTagsForResourceCommandOutput | RegisterInstanceCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateHttpNamespaceCommandOutput | UpdateInstanceCustomHealthStatusCommandOutput | UpdatePrivateDnsNamespaceCommandOutput | UpdatePublicDnsNamespaceCommandOutput | UpdateServiceCommandOutput;
50
+ export type ServiceOutputTypes = CreateHttpNamespaceCommandOutput | CreatePrivateDnsNamespaceCommandOutput | CreatePublicDnsNamespaceCommandOutput | CreateServiceCommandOutput | DeleteNamespaceCommandOutput | DeleteServiceAttributesCommandOutput | DeleteServiceCommandOutput | DeregisterInstanceCommandOutput | DiscoverInstancesCommandOutput | DiscoverInstancesRevisionCommandOutput | GetInstanceCommandOutput | GetInstancesHealthStatusCommandOutput | GetNamespaceCommandOutput | GetOperationCommandOutput | GetServiceAttributesCommandOutput | GetServiceCommandOutput | ListInstancesCommandOutput | ListNamespacesCommandOutput | ListOperationsCommandOutput | ListServicesCommandOutput | ListTagsForResourceCommandOutput | RegisterInstanceCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateHttpNamespaceCommandOutput | UpdateInstanceCustomHealthStatusCommandOutput | UpdatePrivateDnsNamespaceCommandOutput | UpdatePublicDnsNamespaceCommandOutput | UpdateServiceAttributesCommandOutput | UpdateServiceCommandOutput;
48
51
  /**
49
52
  * @public
50
53
  */
@@ -0,0 +1,79 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { DeleteServiceAttributesRequest, DeleteServiceAttributesResponse } from "../models/models_0";
4
+ import { ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ServiceDiscoveryClient";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link DeleteServiceAttributesCommand}.
14
+ */
15
+ export interface DeleteServiceAttributesCommandInput extends DeleteServiceAttributesRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link DeleteServiceAttributesCommand}.
21
+ */
22
+ export interface DeleteServiceAttributesCommandOutput extends DeleteServiceAttributesResponse, __MetadataBearer {
23
+ }
24
+ declare const DeleteServiceAttributesCommand_base: {
25
+ new (input: DeleteServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<DeleteServiceAttributesCommandInput, DeleteServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: DeleteServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<DeleteServiceAttributesCommandInput, DeleteServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Deletes specific attributes associated with a service.</p>
31
+ * @example
32
+ * Use a bare-bones client and the command you need to make an API call.
33
+ * ```javascript
34
+ * import { ServiceDiscoveryClient, DeleteServiceAttributesCommand } from "@aws-sdk/client-servicediscovery"; // ES Modules import
35
+ * // const { ServiceDiscoveryClient, DeleteServiceAttributesCommand } = require("@aws-sdk/client-servicediscovery"); // CommonJS import
36
+ * const client = new ServiceDiscoveryClient(config);
37
+ * const input = { // DeleteServiceAttributesRequest
38
+ * ServiceId: "STRING_VALUE", // required
39
+ * Attributes: [ // ServiceAttributeKeyList // required
40
+ * "STRING_VALUE",
41
+ * ],
42
+ * };
43
+ * const command = new DeleteServiceAttributesCommand(input);
44
+ * const response = await client.send(command);
45
+ * // {};
46
+ *
47
+ * ```
48
+ *
49
+ * @param DeleteServiceAttributesCommandInput - {@link DeleteServiceAttributesCommandInput}
50
+ * @returns {@link DeleteServiceAttributesCommandOutput}
51
+ * @see {@link DeleteServiceAttributesCommandInput} for command's `input` shape.
52
+ * @see {@link DeleteServiceAttributesCommandOutput} for command's `response` shape.
53
+ * @see {@link ServiceDiscoveryClientResolvedConfig | config} for ServiceDiscoveryClient's `config` shape.
54
+ *
55
+ * @throws {@link InvalidInput} (client fault)
56
+ * <p>One or more specified values aren't valid. For example, a required value might be missing, a numeric value
57
+ * might be outside the allowed range, or a string value might exceed length constraints.</p>
58
+ *
59
+ * @throws {@link ServiceNotFound} (client fault)
60
+ * <p>No service exists with the specified ID.</p>
61
+ *
62
+ * @throws {@link ServiceDiscoveryServiceException}
63
+ * <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
64
+ *
65
+ * @public
66
+ */
67
+ export declare class DeleteServiceAttributesCommand extends DeleteServiceAttributesCommand_base {
68
+ /** @internal type navigation helper, not in runtime. */
69
+ protected static __types: {
70
+ api: {
71
+ input: DeleteServiceAttributesRequest;
72
+ output: {};
73
+ };
74
+ sdk: {
75
+ input: DeleteServiceAttributesCommandInput;
76
+ output: DeleteServiceAttributesCommandOutput;
77
+ };
78
+ };
79
+ }
@@ -27,7 +27,7 @@ declare const DeleteServiceCommand_base: {
27
27
  getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
28
  };
29
29
  /**
30
- * <p>Deletes a specified service. If the service still contains one or more registered instances, the request
30
+ * <p>Deletes a specified service and all associated service attributes. If the service still contains one or more registered instances, the request
31
31
  * fails.</p>
32
32
  * @example
33
33
  * Use a bare-bones client and the command you need to make an API call.
@@ -0,0 +1,83 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { GetServiceAttributesRequest, GetServiceAttributesResponse } from "../models/models_0";
4
+ import { ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ServiceDiscoveryClient";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link GetServiceAttributesCommand}.
14
+ */
15
+ export interface GetServiceAttributesCommandInput extends GetServiceAttributesRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link GetServiceAttributesCommand}.
21
+ */
22
+ export interface GetServiceAttributesCommandOutput extends GetServiceAttributesResponse, __MetadataBearer {
23
+ }
24
+ declare const GetServiceAttributesCommand_base: {
25
+ new (input: GetServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<GetServiceAttributesCommandInput, GetServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: GetServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<GetServiceAttributesCommandInput, GetServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Returns the attributes associated with a specified service.</p>
31
+ * @example
32
+ * Use a bare-bones client and the command you need to make an API call.
33
+ * ```javascript
34
+ * import { ServiceDiscoveryClient, GetServiceAttributesCommand } from "@aws-sdk/client-servicediscovery"; // ES Modules import
35
+ * // const { ServiceDiscoveryClient, GetServiceAttributesCommand } = require("@aws-sdk/client-servicediscovery"); // CommonJS import
36
+ * const client = new ServiceDiscoveryClient(config);
37
+ * const input = { // GetServiceAttributesRequest
38
+ * ServiceId: "STRING_VALUE", // required
39
+ * };
40
+ * const command = new GetServiceAttributesCommand(input);
41
+ * const response = await client.send(command);
42
+ * // { // GetServiceAttributesResponse
43
+ * // ServiceAttributes: { // ServiceAttributes
44
+ * // ServiceArn: "STRING_VALUE",
45
+ * // Attributes: { // ServiceAttributesMap
46
+ * // "<keys>": "STRING_VALUE",
47
+ * // },
48
+ * // },
49
+ * // };
50
+ *
51
+ * ```
52
+ *
53
+ * @param GetServiceAttributesCommandInput - {@link GetServiceAttributesCommandInput}
54
+ * @returns {@link GetServiceAttributesCommandOutput}
55
+ * @see {@link GetServiceAttributesCommandInput} for command's `input` shape.
56
+ * @see {@link GetServiceAttributesCommandOutput} for command's `response` shape.
57
+ * @see {@link ServiceDiscoveryClientResolvedConfig | config} for ServiceDiscoveryClient's `config` shape.
58
+ *
59
+ * @throws {@link InvalidInput} (client fault)
60
+ * <p>One or more specified values aren't valid. For example, a required value might be missing, a numeric value
61
+ * might be outside the allowed range, or a string value might exceed length constraints.</p>
62
+ *
63
+ * @throws {@link ServiceNotFound} (client fault)
64
+ * <p>No service exists with the specified ID.</p>
65
+ *
66
+ * @throws {@link ServiceDiscoveryServiceException}
67
+ * <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
68
+ *
69
+ * @public
70
+ */
71
+ export declare class GetServiceAttributesCommand extends GetServiceAttributesCommand_base {
72
+ /** @internal type navigation helper, not in runtime. */
73
+ protected static __types: {
74
+ api: {
75
+ input: GetServiceAttributesRequest;
76
+ output: GetServiceAttributesResponse;
77
+ };
78
+ sdk: {
79
+ input: GetServiceAttributesCommandInput;
80
+ output: GetServiceAttributesCommandOutput;
81
+ };
82
+ };
83
+ }
@@ -0,0 +1,82 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { UpdateServiceAttributesRequest, UpdateServiceAttributesResponse } from "../models/models_0";
4
+ import { ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ServiceDiscoveryClient";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link UpdateServiceAttributesCommand}.
14
+ */
15
+ export interface UpdateServiceAttributesCommandInput extends UpdateServiceAttributesRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link UpdateServiceAttributesCommand}.
21
+ */
22
+ export interface UpdateServiceAttributesCommandOutput extends UpdateServiceAttributesResponse, __MetadataBearer {
23
+ }
24
+ declare const UpdateServiceAttributesCommand_base: {
25
+ new (input: UpdateServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<UpdateServiceAttributesCommandInput, UpdateServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: UpdateServiceAttributesCommandInput): import("@smithy/smithy-client").CommandImpl<UpdateServiceAttributesCommandInput, UpdateServiceAttributesCommandOutput, ServiceDiscoveryClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Submits a request to update a specified service to add service-level attributes.</p>
31
+ * @example
32
+ * Use a bare-bones client and the command you need to make an API call.
33
+ * ```javascript
34
+ * import { ServiceDiscoveryClient, UpdateServiceAttributesCommand } from "@aws-sdk/client-servicediscovery"; // ES Modules import
35
+ * // const { ServiceDiscoveryClient, UpdateServiceAttributesCommand } = require("@aws-sdk/client-servicediscovery"); // CommonJS import
36
+ * const client = new ServiceDiscoveryClient(config);
37
+ * const input = { // UpdateServiceAttributesRequest
38
+ * ServiceId: "STRING_VALUE", // required
39
+ * Attributes: { // ServiceAttributesMap // required
40
+ * "<keys>": "STRING_VALUE",
41
+ * },
42
+ * };
43
+ * const command = new UpdateServiceAttributesCommand(input);
44
+ * const response = await client.send(command);
45
+ * // {};
46
+ *
47
+ * ```
48
+ *
49
+ * @param UpdateServiceAttributesCommandInput - {@link UpdateServiceAttributesCommandInput}
50
+ * @returns {@link UpdateServiceAttributesCommandOutput}
51
+ * @see {@link UpdateServiceAttributesCommandInput} for command's `input` shape.
52
+ * @see {@link UpdateServiceAttributesCommandOutput} for command's `response` shape.
53
+ * @see {@link ServiceDiscoveryClientResolvedConfig | config} for ServiceDiscoveryClient's `config` shape.
54
+ *
55
+ * @throws {@link InvalidInput} (client fault)
56
+ * <p>One or more specified values aren't valid. For example, a required value might be missing, a numeric value
57
+ * might be outside the allowed range, or a string value might exceed length constraints.</p>
58
+ *
59
+ * @throws {@link ServiceAttributesLimitExceededException} (client fault)
60
+ * <p>The attribute can't be added to the service because you've exceeded the quota for the number of attributes you can add to a service.</p>
61
+ *
62
+ * @throws {@link ServiceNotFound} (client fault)
63
+ * <p>No service exists with the specified ID.</p>
64
+ *
65
+ * @throws {@link ServiceDiscoveryServiceException}
66
+ * <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
67
+ *
68
+ * @public
69
+ */
70
+ export declare class UpdateServiceAttributesCommand extends UpdateServiceAttributesCommand_base {
71
+ /** @internal type navigation helper, not in runtime. */
72
+ protected static __types: {
73
+ api: {
74
+ input: UpdateServiceAttributesRequest;
75
+ output: {};
76
+ };
77
+ sdk: {
78
+ input: UpdateServiceAttributesCommandInput;
79
+ output: UpdateServiceAttributesCommandOutput;
80
+ };
81
+ };
82
+ }
@@ -3,6 +3,7 @@ export * from "./CreatePrivateDnsNamespaceCommand";
3
3
  export * from "./CreatePublicDnsNamespaceCommand";
4
4
  export * from "./CreateServiceCommand";
5
5
  export * from "./DeleteNamespaceCommand";
6
+ export * from "./DeleteServiceAttributesCommand";
6
7
  export * from "./DeleteServiceCommand";
7
8
  export * from "./DeregisterInstanceCommand";
8
9
  export * from "./DiscoverInstancesCommand";
@@ -11,6 +12,7 @@ export * from "./GetInstanceCommand";
11
12
  export * from "./GetInstancesHealthStatusCommand";
12
13
  export * from "./GetNamespaceCommand";
13
14
  export * from "./GetOperationCommand";
15
+ export * from "./GetServiceAttributesCommand";
14
16
  export * from "./GetServiceCommand";
15
17
  export * from "./ListInstancesCommand";
16
18
  export * from "./ListNamespacesCommand";
@@ -24,4 +26,5 @@ export * from "./UpdateHttpNamespaceCommand";
24
26
  export * from "./UpdateInstanceCustomHealthStatusCommand";
25
27
  export * from "./UpdatePrivateDnsNamespaceCommand";
26
28
  export * from "./UpdatePublicDnsNamespaceCommand";
29
+ export * from "./UpdateServiceAttributesCommand";
27
30
  export * from "./UpdateServiceCommand";
@@ -490,10 +490,6 @@ export type RoutingPolicy = (typeof RoutingPolicy)[keyof typeof RoutingPolicy];
490
490
  /**
491
491
  * <p>A complex type that contains information about the Amazon Route 53 DNS records that you want Cloud Map to create
492
492
  * when you register an instance.</p>
493
- * <important>
494
- * <p>The record types of a service can only be changed by deleting the service and recreating it with a new
495
- * <code>Dnsconfig</code>.</p>
496
- * </important>
497
493
  * @public
498
494
  */
499
495
  export interface DnsConfig {
@@ -552,6 +548,10 @@ export interface DnsConfig {
552
548
  /**
553
549
  * <p>An array that contains one <code>DnsRecord</code> object for each Route 53 DNS record that you want Cloud Map
554
550
  * to create when you register an instance.</p>
551
+ * <important>
552
+ * <p>The record type of a service specified in a <code>DnsRecord</code> object can't be updated. To change a record type, you need to delete the service and recreate it with a new
553
+ * <code>DnsConfig</code>.</p>
554
+ * </important>
555
555
  * @public
556
556
  */
557
557
  DnsRecords: DnsRecord[] | undefined;
@@ -1114,6 +1114,26 @@ export declare class ServiceNotFound extends __BaseException {
1114
1114
  */
1115
1115
  constructor(opts: __ExceptionOptionType<ServiceNotFound, __BaseException>);
1116
1116
  }
1117
+ /**
1118
+ * @public
1119
+ */
1120
+ export interface DeleteServiceAttributesRequest {
1121
+ /**
1122
+ * <p>The ID of the service from which the attributes will be deleted.</p>
1123
+ * @public
1124
+ */
1125
+ ServiceId: string | undefined;
1126
+ /**
1127
+ * <p>A list of keys corresponding to each attribute that you want to delete.</p>
1128
+ * @public
1129
+ */
1130
+ Attributes: string[] | undefined;
1131
+ }
1132
+ /**
1133
+ * @public
1134
+ */
1135
+ export interface DeleteServiceAttributesResponse {
1136
+ }
1117
1137
  /**
1118
1138
  * @public
1119
1139
  */
@@ -1957,6 +1977,52 @@ export interface GetServiceResponse {
1957
1977
  */
1958
1978
  Service?: Service | undefined;
1959
1979
  }
1980
+ /**
1981
+ * @public
1982
+ */
1983
+ export interface GetServiceAttributesRequest {
1984
+ /**
1985
+ * <p>The ID of the service that you want to get attributes for.</p>
1986
+ * @public
1987
+ */
1988
+ ServiceId: string | undefined;
1989
+ }
1990
+ /**
1991
+ * <p>A complex type that contains information about attributes associated with a specific service.</p>
1992
+ * @public
1993
+ */
1994
+ export interface ServiceAttributes {
1995
+ /**
1996
+ * <p>The ARN of the service that the attributes are associated with.</p>
1997
+ * @public
1998
+ */
1999
+ ServiceArn?: string | undefined;
2000
+ /**
2001
+ * <p>A string map that contains the following information for the service that you specify in
2002
+ * <code>ServiceArn</code>:</p>
2003
+ * <ul>
2004
+ * <li>
2005
+ * <p>The attributes that apply to the service. </p>
2006
+ * </li>
2007
+ * <li>
2008
+ * <p>For each attribute, the applicable value.</p>
2009
+ * </li>
2010
+ * </ul>
2011
+ * <p>You can specify a total of 30 attributes.</p>
2012
+ * @public
2013
+ */
2014
+ Attributes?: Record<string, string> | undefined;
2015
+ }
2016
+ /**
2017
+ * @public
2018
+ */
2019
+ export interface GetServiceAttributesResponse {
2020
+ /**
2021
+ * <p>A complex type that contains the service ARN and a list of attribute key-value pairs associated with the service.</p>
2022
+ * @public
2023
+ */
2024
+ ServiceAttributes?: ServiceAttributes | undefined;
2025
+ }
1960
2026
  /**
1961
2027
  * <p>Updated properties for the HTTP
1962
2028
  * namespace.</p>
@@ -3169,7 +3235,7 @@ export interface UpdateServiceRequest {
3169
3235
  */
3170
3236
  Id: string | undefined;
3171
3237
  /**
3172
- * <p>A complex type that contains the new settings for the service.</p>
3238
+ * <p>A complex type that contains the new settings for the service. You can specify a maximum of 30 attributes (key-value pairs).</p>
3173
3239
  * @public
3174
3240
  */
3175
3241
  Service: ServiceChange | undefined;
@@ -3185,3 +3251,36 @@ export interface UpdateServiceResponse {
3185
3251
  */
3186
3252
  OperationId?: string | undefined;
3187
3253
  }
3254
+ /**
3255
+ * <p>The attribute can't be added to the service because you've exceeded the quota for the number of attributes you can add to a service.</p>
3256
+ * @public
3257
+ */
3258
+ export declare class ServiceAttributesLimitExceededException extends __BaseException {
3259
+ readonly name: "ServiceAttributesLimitExceededException";
3260
+ readonly $fault: "client";
3261
+ Message?: string | undefined;
3262
+ /**
3263
+ * @internal
3264
+ */
3265
+ constructor(opts: __ExceptionOptionType<ServiceAttributesLimitExceededException, __BaseException>);
3266
+ }
3267
+ /**
3268
+ * @public
3269
+ */
3270
+ export interface UpdateServiceAttributesRequest {
3271
+ /**
3272
+ * <p>The ID of the service that you want to update.</p>
3273
+ * @public
3274
+ */
3275
+ ServiceId: string | undefined;
3276
+ /**
3277
+ * <p>A string map that contains attribute key-value pairs.</p>
3278
+ * @public
3279
+ */
3280
+ Attributes: Record<string, string> | undefined;
3281
+ }
3282
+ /**
3283
+ * @public
3284
+ */
3285
+ export interface UpdateServiceAttributesResponse {
3286
+ }
@@ -5,6 +5,7 @@ import { CreatePrivateDnsNamespaceCommandInput, CreatePrivateDnsNamespaceCommand
5
5
  import { CreatePublicDnsNamespaceCommandInput, CreatePublicDnsNamespaceCommandOutput } from "../commands/CreatePublicDnsNamespaceCommand";
6
6
  import { CreateServiceCommandInput, CreateServiceCommandOutput } from "../commands/CreateServiceCommand";
7
7
  import { DeleteNamespaceCommandInput, DeleteNamespaceCommandOutput } from "../commands/DeleteNamespaceCommand";
8
+ import { DeleteServiceAttributesCommandInput, DeleteServiceAttributesCommandOutput } from "../commands/DeleteServiceAttributesCommand";
8
9
  import { DeleteServiceCommandInput, DeleteServiceCommandOutput } from "../commands/DeleteServiceCommand";
9
10
  import { DeregisterInstanceCommandInput, DeregisterInstanceCommandOutput } from "../commands/DeregisterInstanceCommand";
10
11
  import { DiscoverInstancesCommandInput, DiscoverInstancesCommandOutput } from "../commands/DiscoverInstancesCommand";
@@ -13,6 +14,7 @@ import { GetInstanceCommandInput, GetInstanceCommandOutput } from "../commands/G
13
14
  import { GetInstancesHealthStatusCommandInput, GetInstancesHealthStatusCommandOutput } from "../commands/GetInstancesHealthStatusCommand";
14
15
  import { GetNamespaceCommandInput, GetNamespaceCommandOutput } from "../commands/GetNamespaceCommand";
15
16
  import { GetOperationCommandInput, GetOperationCommandOutput } from "../commands/GetOperationCommand";
17
+ import { GetServiceAttributesCommandInput, GetServiceAttributesCommandOutput } from "../commands/GetServiceAttributesCommand";
16
18
  import { GetServiceCommandInput, GetServiceCommandOutput } from "../commands/GetServiceCommand";
17
19
  import { ListInstancesCommandInput, ListInstancesCommandOutput } from "../commands/ListInstancesCommand";
18
20
  import { ListNamespacesCommandInput, ListNamespacesCommandOutput } from "../commands/ListNamespacesCommand";
@@ -26,6 +28,7 @@ import { UpdateHttpNamespaceCommandInput, UpdateHttpNamespaceCommandOutput } fro
26
28
  import { UpdateInstanceCustomHealthStatusCommandInput, UpdateInstanceCustomHealthStatusCommandOutput } from "../commands/UpdateInstanceCustomHealthStatusCommand";
27
29
  import { UpdatePrivateDnsNamespaceCommandInput, UpdatePrivateDnsNamespaceCommandOutput } from "../commands/UpdatePrivateDnsNamespaceCommand";
28
30
  import { UpdatePublicDnsNamespaceCommandInput, UpdatePublicDnsNamespaceCommandOutput } from "../commands/UpdatePublicDnsNamespaceCommand";
31
+ import { UpdateServiceAttributesCommandInput, UpdateServiceAttributesCommandOutput } from "../commands/UpdateServiceAttributesCommand";
29
32
  import { UpdateServiceCommandInput, UpdateServiceCommandOutput } from "../commands/UpdateServiceCommand";
30
33
  /**
31
34
  * serializeAws_json1_1CreateHttpNamespaceCommand
@@ -51,6 +54,10 @@ export declare const se_DeleteNamespaceCommand: (input: DeleteNamespaceCommandIn
51
54
  * serializeAws_json1_1DeleteServiceCommand
52
55
  */
53
56
  export declare const se_DeleteServiceCommand: (input: DeleteServiceCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
57
+ /**
58
+ * serializeAws_json1_1DeleteServiceAttributesCommand
59
+ */
60
+ export declare const se_DeleteServiceAttributesCommand: (input: DeleteServiceAttributesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
54
61
  /**
55
62
  * serializeAws_json1_1DeregisterInstanceCommand
56
63
  */
@@ -83,6 +90,10 @@ export declare const se_GetOperationCommand: (input: GetOperationCommandInput, c
83
90
  * serializeAws_json1_1GetServiceCommand
84
91
  */
85
92
  export declare const se_GetServiceCommand: (input: GetServiceCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
93
+ /**
94
+ * serializeAws_json1_1GetServiceAttributesCommand
95
+ */
96
+ export declare const se_GetServiceAttributesCommand: (input: GetServiceAttributesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
86
97
  /**
87
98
  * serializeAws_json1_1ListInstancesCommand
88
99
  */
@@ -135,6 +146,10 @@ export declare const se_UpdatePublicDnsNamespaceCommand: (input: UpdatePublicDns
135
146
  * serializeAws_json1_1UpdateServiceCommand
136
147
  */
137
148
  export declare const se_UpdateServiceCommand: (input: UpdateServiceCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
149
+ /**
150
+ * serializeAws_json1_1UpdateServiceAttributesCommand
151
+ */
152
+ export declare const se_UpdateServiceAttributesCommand: (input: UpdateServiceAttributesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
138
153
  /**
139
154
  * deserializeAws_json1_1CreateHttpNamespaceCommand
140
155
  */
@@ -159,6 +174,10 @@ export declare const de_DeleteNamespaceCommand: (output: __HttpResponse, context
159
174
  * deserializeAws_json1_1DeleteServiceCommand
160
175
  */
161
176
  export declare const de_DeleteServiceCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DeleteServiceCommandOutput>;
177
+ /**
178
+ * deserializeAws_json1_1DeleteServiceAttributesCommand
179
+ */
180
+ export declare const de_DeleteServiceAttributesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DeleteServiceAttributesCommandOutput>;
162
181
  /**
163
182
  * deserializeAws_json1_1DeregisterInstanceCommand
164
183
  */
@@ -191,6 +210,10 @@ export declare const de_GetOperationCommand: (output: __HttpResponse, context: _
191
210
  * deserializeAws_json1_1GetServiceCommand
192
211
  */
193
212
  export declare const de_GetServiceCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetServiceCommandOutput>;
213
+ /**
214
+ * deserializeAws_json1_1GetServiceAttributesCommand
215
+ */
216
+ export declare const de_GetServiceAttributesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetServiceAttributesCommandOutput>;
194
217
  /**
195
218
  * deserializeAws_json1_1ListInstancesCommand
196
219
  */
@@ -243,3 +266,7 @@ export declare const de_UpdatePublicDnsNamespaceCommand: (output: __HttpResponse
243
266
  * deserializeAws_json1_1UpdateServiceCommand
244
267
  */
245
268
  export declare const de_UpdateServiceCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<UpdateServiceCommandOutput>;
269
+ /**
270
+ * deserializeAws_json1_1UpdateServiceAttributesCommand
271
+ */
272
+ export declare const de_UpdateServiceAttributesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<UpdateServiceAttributesCommandOutput>;