Application
The Application resource lets you manage AWS AppIntegrations Applications and their configuration settings.
Minimal Example
Section titled “Minimal Example”Create a basic application with required properties and one optional tag.
import AWS from "alchemy/aws/control";
const basicApplication = await AWS.AppIntegrations.Application("basicApp", { ApplicationSourceConfig: { // Sample configuration for an application source SourceType: "S3", SourceProperties: { BucketName: "my-app-bucket", Key: "config.json" } }, Description: "My basic application for integration.", Namespace: "myAppNamespace", Name: "MyApp", Tags: [ { Key: "Environment", Value: "Development" } ]});
Advanced Configuration
Section titled “Advanced Configuration”Configure an application with detailed permissions and multiple tags for better resource management.
const advancedApplication = await AWS.AppIntegrations.Application("advancedApp", { ApplicationSourceConfig: { SourceType: "DynamoDB", SourceProperties: { TableName: "my-app-table", Region: "us-west-2" } }, Description: "An advanced application with extensive configurations.", Namespace: "advancedAppNamespace", Name: "AdvancedApp", Permissions: [ "arn:aws:iam::123456789012:policy/MyAppPolicy", "arn:aws:iam::123456789012:policy/AnotherPolicy" ], Tags: [ { Key: "Project", Value: "AppIntegrations" }, { Key: "Owner", Value: "TeamA" } ]});
Using Application with Permissions
Section titled “Using Application with Permissions”This example demonstrates how to set specific permissions for the application.
const permissionedApplication = await AWS.AppIntegrations.Application("permissionedApp", { ApplicationSourceConfig: { SourceType: "Kinesis", SourceProperties: { StreamName: "my-stream", Region: "us-east-1" } }, Description: "Application with specific IAM permissions.", Namespace: "permissionedAppNamespace", Name: "PermissionedApp", Permissions: [ JSON.stringify({ Version: "2012-10-17", Statement: [ { Effect: "Allow", Action: [ "kinesis:DescribeStream", "kinesis:GetRecords" ], Resource: "arn:aws:kinesis:us-east-1:123456789012:stream/my-stream" } ] }) ]});
Application with Multiple Sources
Section titled “Application with Multiple Sources”This example shows how to create an application that integrates with multiple sources.
const multiSourceApplication = await AWS.AppIntegrations.Application("multiSourceApp", { ApplicationSourceConfig: { SourceType: "API", SourceProperties: { ApiEndpoint: "https://api.example.com/data", Authentication: { Type: "OAuth2", Token: "my-oauth-token" } } }, Description: "Application integrating with multiple data sources.", Namespace: "multiSourceAppNamespace", Name: "MultiSourceApp", Tags: [ { Key: "Integration", Value: "MultipleSources" } ]});