const smithy = @import("smithy.zig"); pub const sts: struct { version: []const u8 = "2011-06-15", sdk_id: []const u8 = "STS", arn_namespace: []const u8 = "sts", endpoint_prefix: []const u8 = "sts", sigv4_name: []const u8 = "sts", aws_protocol: smithy.AwsProtocol = smithy.AwsProtocol.query, assume_role: struct { action_name: []const u8 = "AssumeRole", Request: type = struct { role_session_name: []const u8, transitive_tag_keys: ?[][]const u8 = null, serial_number: ?[]const u8 = null, token_code: ?[]const u8 = null, tags: ?[]struct { value: []const u8, key: []const u8, } = null, policy_arns: ?[]struct { arn: ?[]const u8 = null, } = null, role_arn: []const u8, source_identity: ?[]const u8 = null, duration_seconds: ?i64 = null, policy: ?[]const u8 = null, external_id: ?[]const u8 = null, }, Response: type = struct { credentials: struct { access_key_id: []const u8, secret_access_key: []const u8, session_token: []const u8, expiration: i64, }, source_identity: []const u8, assumed_role_user: struct { assumed_role_id: []const u8, arn: []const u8, }, packed_policy_size: i64, }, ServiceError: type = error{ ExpiredToken, MalformedPolicyDocument, PackedPolicyTooLarge, RegionDisabled, }, } = .{}, assume_role_with_saml: struct { action_name: []const u8 = "AssumeRoleWithSAML", Request: type = struct { policy_arns: ?[]struct { arn: ?[]const u8 = null, } = null, role_arn: []const u8, principal_arn: []const u8, saml_assertion: []const u8, duration_seconds: ?i64 = null, policy: ?[]const u8 = null, }, Response: type = struct { credentials: struct { access_key_id: []const u8, secret_access_key: []const u8, session_token: []const u8, expiration: i64, }, packed_policy_size: i64, subject_type: []const u8, name_qualifier: []const u8, source_identity: []const u8, assumed_role_user: struct { assumed_role_id: []const u8, arn: []const u8, }, issuer: []const u8, audience: []const u8, subject: []const u8, }, ServiceError: type = error{ ExpiredToken, IDPRejectedClaim, InvalidIdentityToken, MalformedPolicyDocument, PackedPolicyTooLarge, RegionDisabled, }, } = .{}, assume_role_with_web_identity: struct { action_name: []const u8 = "AssumeRoleWithWebIdentity", Request: type = struct { role_session_name: []const u8, duration_seconds: ?i64 = null, policy_arns: ?[]struct { arn: ?[]const u8 = null, } = null, role_arn: []const u8, provider_id: ?[]const u8 = null, web_identity_token: []const u8, policy: ?[]const u8 = null, }, Response: type = struct { subject_from_web_identity_token: []const u8, credentials: struct { access_key_id: []const u8, secret_access_key: []const u8, session_token: []const u8, expiration: i64, }, provider: []const u8, packed_policy_size: i64, source_identity: []const u8, assumed_role_user: struct { assumed_role_id: []const u8, arn: []const u8, }, audience: []const u8, }, ServiceError: type = error{ ExpiredToken, IDPCommunicationError, IDPRejectedClaim, InvalidIdentityToken, MalformedPolicyDocument, PackedPolicyTooLarge, RegionDisabled, }, } = .{}, decode_authorization_message: struct { action_name: []const u8 = "DecodeAuthorizationMessage", Request: type = struct { encoded_message: []const u8, }, Response: type = struct { decoded_message: []const u8, }, ServiceError: type = error{InvalidAuthorizationMessage}, } = .{}, get_access_key_info: struct { action_name: []const u8 = "GetAccessKeyInfo", Request: type = struct { access_key_id: []const u8, }, Response: type = struct { account: []const u8, }, } = .{}, get_caller_identity: struct { action_name: []const u8 = "GetCallerIdentity", Request: type = struct { pub fn metaInfo(self: @This()) struct { service: @TypeOf(sts), action: @TypeOf(sts.get_caller_identity) } { return .{ .service = sts, .action = sts.get_caller_identity }; } }, Response: type = struct { user_id: []const u8, arn: []const u8, account: []const u8, }, } = .{}, get_federation_token: struct { action_name: []const u8 = "GetFederationToken", Request: type = struct { policy_arns: ?[]struct { arn: ?[]const u8 = null, } = null, name: []const u8, tags: ?[]struct { value: []const u8, key: []const u8, } = null, duration_seconds: ?i64 = null, policy: ?[]const u8 = null, }, Response: type = struct { credentials: struct { access_key_id: []const u8, secret_access_key: []const u8, session_token: []const u8, expiration: i64, }, federated_user: struct { arn: []const u8, federated_user_id: []const u8, }, packed_policy_size: i64, }, ServiceError: type = error{ MalformedPolicyDocument, PackedPolicyTooLarge, RegionDisabled, }, } = .{}, get_session_token: struct { action_name: []const u8 = "GetSessionToken", Request: type = struct { duration_seconds: ?i64 = null, serial_number: ?[]const u8 = null, token_code: ?[]const u8 = null, }, Response: type = struct { credentials: struct { access_key_id: []const u8, secret_access_key: []const u8, session_token: []const u8, expiration: i64, }, }, ServiceError: type = error{RegionDisabled}, } = .{}, } = .{}; // end of service: sts