OBJECT

CrossAccountApp

CrossAccountApps are external to the EchoStream Cloud. They utilize IAM cross-account permissions to access Edges in the EchoStream cloud. This is required if you have an AWS account and wish to implement your ExternalNodes as either on EC2 or Lambda and intend to use IAM roles to provide permissions into EchoStream.

link GraphQL Schema definition

  • type CrossAccountApp implements App {
  • # The AWS account number that is authorized to use this App's EchoStream Cloud
  • # resources.
  • account: String!
  • # The AppSync Endpoint used by this app
  • appsyncEndpoint: AWSURL!
  • # The Audit Records Endpoint used by this app
  • auditRecordsEndpoint: AWSURL!
  • # The config, in JSON object format (i.e. - dict, map).
  • config: AWSJSON
  • # When and who created.
  • created: AtBy!
  • # The credentials required to log into Cognito to get JWT's.
  • credentials: CognitoCredentials!
  • # A human-readable description.
  • description: String
  • # An IAM policy in JSON format. May be used in an IAM managed policy, role, or
  • # user within your AWS account.
  • iamPolicy: AWSJSON!
  • # When and who modified.
  • lastModified: AtBy!
  • # The name.
  • name: String!
  • # The Nodes.
  • nodes: [RemoteAppNode]!
  • # True if this App can access the Tenant's table.
  • tableAccess: Boolean!
  • # The Tenant.
  • tenant: Tenant!
  • # Deletes this App and all of its Nodes.
  • #
  • # Arguments
  • # drainEdges: If sending Edges attached to Nodes in this App
  • # should be drained. Defaults to True.
  • Delete(drainEdges: Boolean): Boolean!
  • # Returns that AwsCredentials required to access the EchoStream resources assigned
  • # to this App.
  • #
  • # Arguments
  • # duration: The length of time, in seconds, that the returned
  • # credentials are valid for. Between 900 and 43,200. Defaults to 3,600.
  • GetAwsCredentials(duration: Int): AwsCredentials!
  • # Lists the changes.
  • #
  • # Arguments
  • # endDateTime: The end date/time (inclusive) to list changes for
  • # in ISO8601 format. Defaults to now.
  • # exclusiveStartKey: The lastEvaluatedKey from a previous
  • # ChangeResult. Used when paginating.
  • # limit: Used for limiting the number of results when paginating.
  • # Defaults to "all".
  • # sortAscending: True for ascending results, False for descending
  • # result. Defaults to True.
  • # startDateTime: The start date/time (inclusive) to list changes
  • # for in ISO8601 format. Defaults to the beginning of time.
  • ListChanges(
  • endDateTime: AWSDateTime,
  • exclusiveStartKey: AWSJSON,
  • limit: Int,
  • sortAscending: Boolean,
  • startDateTime: AWSDateTime
  • ): ChangeResult!
  • # Resets the password used in credentials and returns the App.
  • ResetPassword: CrossAccountApp!
  • # Update this App.
  • #
  • # Arguments
  • # config: The config, in JSON object format (i.e. - dict, map).
  • # Null is ignored.
  • # description: The description.
  • # tableAccess: True if access to the Tenant's table is allowed.
  • # Null is treated as False.
  • Update(config: AWSJSON, description: String, tableAccess: Boolean): CrossAccountApp!
  • }