/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the quicksight-2018-04-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.QuickSight.Model
{
///
/// Container for the parameters to the GenerateEmbedUrlForRegisteredUser operation.
/// Generates an embed URL that you can use to embed an Amazon QuickSight experience in
/// your website. This action can be used for any type of user registered in an Amazon
/// QuickSight account. Before you use this action, make sure that you have configured
/// the relevant Amazon QuickSight resource and permissions.
///
///
///
/// The following rules apply to the generated URL:
///
/// -
///
/// It contains a temporary bearer token. It is valid for 5 minutes after it is generated.
/// Once redeemed within this period, it cannot be re-used again.
///
///
-
///
/// The URL validity period should not be confused with the actual session lifetime that
/// can be customized using the
SessionLifetimeInMinutes
/// parameter.
///
///
///
/// The resulting user session is valid for 15 minutes (minimum) to 10 hours (maximum).
/// The default session duration is 10 hours.
///
/// -
///
/// You are charged only when the URL is used or there is interaction with Amazon QuickSight.
///
///
///
/// For more information, see Embedded
/// Analytics in the Amazon QuickSight User Guide.
///
///
///
/// For more information about the high-level steps for embedding and for an interactive
/// demo of the ways you can customize embedding, visit the Amazon
/// QuickSight Developer Portal.
///
///
public partial class GenerateEmbedUrlForRegisteredUserRequest : AmazonQuickSightRequest
{
private List _allowedDomains = new List();
private string _awsAccountId;
private RegisteredUserEmbeddingExperienceConfiguration _experienceConfiguration;
private long? _sessionLifetimeInMinutes;
private string _userArn;
///
/// Gets and sets the property AllowedDomains.
///
/// The domains that you want to add to the allow list for access to the generated URL
/// that is then embedded. This optional parameter overrides the static domains that are
/// configured in the Manage QuickSight menu in the Amazon QuickSight console. Instead,
/// it allows only the domains that you include in this parameter. You can list up to
/// three domains or subdomains in each API call.
///
///
///
/// To include all subdomains under a specific domain to the allow list, use *.
/// For example, https://*.sapp.amazon.com includes all subdomains under
/// https://sapp.amazon.com.
///
///
public List AllowedDomains
{
get { return this._allowedDomains; }
set { this._allowedDomains = value; }
}
// Check to see if AllowedDomains property is set
internal bool IsSetAllowedDomains()
{
return this._allowedDomains != null && this._allowedDomains.Count > 0;
}
///
/// Gets and sets the property AwsAccountId.
///
/// The ID for the Amazon Web Services account that contains the dashboard that you're
/// embedding.
///
///
[AWSProperty(Required=true, Min=12, Max=12)]
public string AwsAccountId
{
get { return this._awsAccountId; }
set { this._awsAccountId = value; }
}
// Check to see if AwsAccountId property is set
internal bool IsSetAwsAccountId()
{
return this._awsAccountId != null;
}
///
/// Gets and sets the property ExperienceConfiguration.
///
/// The experience you are embedding. For registered users, you can embed Amazon QuickSight
/// dashboards, Amazon QuickSight visuals, the Amazon QuickSight Q search bar, or the
/// entire Amazon QuickSight console.
///
///
[AWSProperty(Required=true)]
public RegisteredUserEmbeddingExperienceConfiguration ExperienceConfiguration
{
get { return this._experienceConfiguration; }
set { this._experienceConfiguration = value; }
}
// Check to see if ExperienceConfiguration property is set
internal bool IsSetExperienceConfiguration()
{
return this._experienceConfiguration != null;
}
///
/// Gets and sets the property SessionLifetimeInMinutes.
///
/// How many minutes the session is valid. The session lifetime must be in [15-600] minutes
/// range.
///
///
[AWSProperty(Min=15, Max=600)]
public long SessionLifetimeInMinutes
{
get { return this._sessionLifetimeInMinutes.GetValueOrDefault(); }
set { this._sessionLifetimeInMinutes = value; }
}
// Check to see if SessionLifetimeInMinutes property is set
internal bool IsSetSessionLifetimeInMinutes()
{
return this._sessionLifetimeInMinutes.HasValue;
}
///
/// Gets and sets the property UserArn.
///
/// The Amazon Resource Name for the registered user.
///
///
[AWSProperty(Required=true)]
public string UserArn
{
get { return this._userArn; }
set { this._userArn = value; }
}
// Check to see if UserArn property is set
internal bool IsSetUserArn()
{
return this._userArn != null;
}
}
}