Applications - AWS Serverless Application Repository

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Applications

URI

/applications

HTTP 方法

GET

操作 ID:ListApplications

列出請求者擁有的應用程式。

查詢參數
名稱Type必要描述
maxItemsStringFalse

要傳回的項目總數。

nextTokenStringFalse

用以指定分頁開始位置的字符。

回應
狀態碼回應模型描述
200ApplicationPage

成功

400BadRequestException

請求中的其中一個參數無效。

403ForbiddenException

用戶端未驗證。

404NotFoundException

請求中指定的資源 (例如,存取政策陳述式) 不存在。

500InternalServerErrorException

AWS Serverless Application Repository 服務發生內部錯誤。

POST

操作 ID:CreateApplication

建立應用程式,選擇性地包含 AWS SAM 檔案,以在相同的呼叫中建立第一個應用程式版本。

回應
狀態碼回應模型描述
201Application

成功

400BadRequestException

請求中的其中一個參數無效。

403ForbiddenException

用戶端未驗證。

409ConflictException

此資源已存在。

429TooManyRequestsException

用戶端傳送的請求數目超過每單位時間允許的數目。

500InternalServerErrorException

AWS Serverless Application Repository 服務發生內部錯誤。

OPTIONS

回應
狀態碼回應模型描述
200None

200 個回應

結構描述

請求內文

{ "name": "string", "description": "string", "author": "string", "spdxLicenseId": "string", "licenseBody": "string", "licenseUrl": "string", "readmeBody": "string", "readmeUrl": "string", "labels": [ "string" ], "homePageUrl": "string", "semanticVersion": "string", "templateBody": "string", "templateUrl": "string", "sourceCodeUrl": "string", "sourceCodeArchiveUrl": "string" }

回應內文

{ "applications": [ { "applicationId": "string", "name": "string", "description": "string", "author": "string", "spdxLicenseId": "string", "labels": [ "string" ], "creationTime": "string", "homePageUrl": "string" } ], "nextToken": "string" }
{ "applicationId": "string", "name": "string", "description": "string", "author": "string", "isVerifiedAuthor": boolean, "verifiedAuthorUrl": "string", "spdxLicenseId": "string", "licenseUrl": "string", "readmeUrl": "string", "labels": [ "string" ], "creationTime": "string", "homePageUrl": "string", "version": { "applicationId": "string", "semanticVersion": "string", "sourceCodeUrl": "string", "sourceCodeArchiveUrl": "string", "templateUrl": "string", "creationTime": "string", "parameterDefinitions": [ { "name": "string", "defaultValue": "string", "description": "string", "type": "string", "noEcho": boolean, "allowedPattern": "string", "constraintDescription": "string", "minValue": integer, "maxValue": integer, "minLength": integer, "maxLength": integer, "allowedValues": [ "string" ], "referencedByResources": [ "string" ] } ], "requiredCapabilities": [ enum ], "resourcesSupported": boolean } }
{ "message": "string", "errorCode": "string" }
{ "message": "string", "errorCode": "string" }
{ "message": "string", "errorCode": "string" }
{ "message": "string", "errorCode": "string" }
{ "message": "string", "errorCode": "string" }
{ "message": "string", "errorCode": "string" }

屬性

Application

有關應用程式的詳細資訊。

屬性Type必要描述
applicationId

string

True

應用程式 Amazon Resource Name (ARN)。

作者

string

True

發佈應用程式的作者名稱。

最小長度 = 1。最大長度 = 127。

模式 "^【a-z0-9】(((【a-z0-9】|-(?!-))*【a-z0-9】)?$";

creationTime

string

False

此資源建立的日期和時間。

描述

string

True

應用程式的描述。

最小長度 = 1。長度上限 = 256

homePageUrl

string

False

包含應用程式詳細資訊的 URL,例如應用程式的 GitHub 儲存庫位置。

isVerifiedAuthor

boolean

False

指定是否已驗證此應用程式的作者。這表示 AWS 已以合理且謹慎的服務提供者身分,對請求者提供的資訊進行善意審查,並確認請求者的身分已宣告。

labels

類型 string 的陣列

False

用於改善搜尋結果中應用程式探索的標籤。

最小長度 = 1。最大長度 = 127。標籤數量上限:10

模式:"^[a-zA-Z0-9+\\-_:\\/@]+$";

licenseUrl

string

False

與應用程式 spdxLicenseID 值相符的應用程式授權檔案連結。

大小上限為 5 MB

name

string

True

應用程式名稱。

最小長度 = 1。長度上限 = 140

模式:"[a-zA-Z0-9\\-]+";

readmeUrl

string

False

Markdown 語言讀我檔案的連結,其中包含應用程式及其運作方式的更詳細說明。

大小上限為 5 MB

spdxLicenseId

string

False

來自 https://spdx.org/licenses/ 的有效識別符。

verifiedAuthorUrl

string

False

已驗證作者的公有設定檔 URL。此 URL 是由作者提交。

version

版本

False

應用程式的版本資訊。

ApplicationPage

應用程式詳細資訊清單。

屬性Type必要描述
應用程式

類型 ApplicationSummary 的陣列

True

應用程式摘要的陣列。

nextToken

string

False

請求下一頁結果的字符。

ApplicationSummary

有關應用程式的詳細資訊摘要。

屬性Type必要描述
applicationId

string

True

應用程式 Amazon Resource Name (ARN)。

作者

string

True

發佈應用程式的作者名稱。

最小長度 = 1。最大長度 = 127。

模式 "^【a-z0-9】(((【a-z0-9】|-(?!-))*【a-z0-9】)?$";

creationTime

string

False

此資源建立的日期和時間。

描述

string

True

應用程式的描述。

最小長度 = 1。長度上限 = 256

homePageUrl

string

False

包含應用程式詳細資訊的 URL,例如應用程式的 GitHub 儲存庫位置。

labels

類型 string 的陣列

False

用於改善搜尋結果中應用程式探索的標籤。

最小長度 = 1。最大長度 = 127。標籤數量上限:10

模式:"^[a-zA-Z0-9+\\-_:\\/@]+$";

name

string

True

應用程式名稱。

最小長度 = 1。長度上限 = 140

模式:"[a-zA-Z0-9\\-]+";

spdxLicenseId

string

False

來自 https://spdx.org/licenses/ 的有效識別符。

BadRequestException

請求中的其中一個參數無效。

屬性Type必要描述
errorCode

string

False

400

message

string

False

請求中的其中一個參數無效。

Capability

必須指定才能部署某些應用程式的值。

  • CAPABILITY_IAM

  • CAPABILITY_NAMED_IAM

  • CAPABILITY_AUTO_EXPAND

  • CAPABILITY_RESOURCE_POLICY

ConflictException

此資源已存在。

屬性Type必要描述
errorCode

string

False

409

message

string

False

此資源已存在。

CreateApplicationInput

建立應用程式請求。

屬性Type必要描述
作者

string

True

發佈應用程式的作者名稱。

最小長度 = 1。最大長度 = 127。

模式 "^【a-z0-9】(((【a-z0-9】|-(?!-))*【a-z0-9】)?$";

描述

string

True

應用程式的描述。

最小長度 = 1。長度上限 = 256

homePageUrl

string

False

包含應用程式詳細資訊的 URL,例如應用程式的 GitHub 儲存庫位置。

labels

類型 string 的陣列

False

用於改善搜尋結果中應用程式探索的標籤。

最小長度 = 1。最大長度 = 127。標籤數量上限:10

模式:"^[a-zA-Z0-9+\\-_:\\/@]+$";

licenseBody

string

False

本機文字檔案,其中包含與應用程式 spdxLicenseID 值相符的應用程式授權。檔案的格式為 file://<path>/<filename>

大小上限為 5 MB

您只能指定 licenseBody和 之一,licenseUrl否則會指定錯誤結果。

licenseUrl

string

False

S3 物件的連結,其中包含符合應用程式 spdxLicenseID 值的應用程式授權。

大小上限為 5 MB

您只能指定 licenseBody和 之一,licenseUrl否則會指定錯誤結果。

name

string

True

您要發佈的應用程式名稱。

最小長度 = 1。長度上限 = 140

模式:"[a-zA-Z0-9\\-]+";

readmeBody

string

False

Markdown 語言的本機文字讀我檔案,其中包含應用程式及其運作方式的更詳細說明。檔案的格式為 file://<path>/<filename>

大小上限為 5 MB

您只能指定 readmeBody和 之一readmeUrl,否則會指定錯誤結果。

readmeUrl

string

False

以 Markdown 語言指向 S3 物件的連結,其中包含應用程式及其運作方式的更詳細說明。

大小上限為 5 MB

您只能指定 readmeBody和 之一readmeUrl,否則會指定錯誤結果。

semanticVersion

string

False

應用程式語意版本:

https://semver.org/

sourceCodeArchiveUrl

string

False

S3 物件的連結,其中包含此版本應用程式的原始程式碼 ZIP 封存。

大小上限為 50 MB

sourceCodeUrl

string

False

應用程式原始碼的公有儲存庫連結,例如特定 GitHub 遞交的 URL。

spdxLicenseId

string

False

來自 https://spdx.org/licenses/ 的有效識別符。

templateBody

string

False

應用程式的本機原始封裝 AWS SAM 範本檔案。檔案的格式為 file://<path>/<filename>

您只能指定 templateBody和 之一templateUrl,否則會指定錯誤結果。

templateUrl

string

False

包含應用程式封裝 AWS SAM 範本的 S3 物件連結。

您只能指定 templateBody和 之一templateUrl,否則會指定錯誤結果。

ForbiddenException

用戶端未驗證。

屬性Type必要描述
errorCode

string

False

403

message

string

False

用戶端未驗證。

InternalServerErrorException

AWS Serverless Application Repository 服務發生內部錯誤。

屬性Type必要描述
errorCode

string

False

500

message

string

False

AWS Serverless Application Repository 服務發生內部錯誤。

NotFoundException

請求中指定的資源 (例如,存取政策陳述式) 不存在。

屬性Type必要描述
errorCode

string

False

404

message

string

False

請求中指定的資源 (例如,存取政策陳述式) 不存在。

ParameterDefinition

應用程式支援的參數。

屬性Type必要描述
allowedPattern

string

False

規則表達式,代表 String 類型允許的模式。

allowedValues

類型 string 的陣列

False

陣列,包含參數的允許值清單。

constraintDescription

string

False

字串,說明違反限制時的限制。例如,具有允許模式 [A-Za-z0-9]+ 的參數會在使用者指定無效值時顯示下列錯誤訊息,但沒有限制描述:

Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+

透過新增限制描述,例如「必須僅包含大寫和小寫字母和數字」,您可以顯示下列自訂錯誤訊息:

Malformed input-Parameter MyParameter must contain only uppercase and lowercase letters and numbers.

defaultValue

string

False

建立堆疊時,範本要在未指定值時使用的適當類型值。如果您定義參數的限制,則必須指定遵循這些限制的值。

描述

string

False

最多 4,000 個字元的字串,描述 參數。

maxLength

integer

False

整數值,決定您要允許 String類型的最大字元數。

maxValue

integer

False

數值,決定您要允許 Number類型的最大數值。

minLength

integer

False

整數值,可決定您要允許 String類型的最小字元數。

minValue

integer

False

數值,決定您想要允許 Number類型的最小數值。

name

string

True

參數名稱。

noEcho

boolean

False

是否在任何人進行描述堆疊的呼叫時遮罩參數值。如果您將值設定為 true,參數值會以星號 (*****) 遮罩。

referencedByResources

類型 string 的陣列

True

使用此參數 AWS SAM 的資源清單。

type

string

False

參數的類型。

有效值:String | Number | List<Number> | CommaDelimitedList

String:常值字串。

例如,使用者可以指定 "MyUserName"

Number:整數或 float. AWS CloudFormation validation 參數值為數字。不過,當您在範本的其他位置使用 參數 (例如,使用Ref內部 函數) 時, 參數值會變成字串。

例如,使用者可以指定 "8888"

List<Number>:以逗號分隔的整數或浮點數陣列。 AWS CloudFormation 會以數字驗證參數值。不過,當您在範本的其他位置使用 參數 (例如,使用Ref內部 函數) 時, 參數值會成為字串清單。

例如,使用者可能會指定「80,20」,然後Ref產生 ["80","20"]

CommaDelimitedList:以逗號分隔的常值字串陣列。字串總數應該比逗號總數多一個。此外,每個成員字串都是空格修剪的。

例如,使用者可能會指定「測試、開發、生產」,然後在 中Ref產生結果["test","dev","prod"]

TooManyRequestsException

用戶端傳送的請求數目超過每單位時間允許的數目。

屬性Type必要描述
errorCode

string

False

429

message

string

False

用戶端傳送的請求數目超過每單位時間允許的數目。

Version

應用程式版本詳細資訊。

屬性Type必要描述
applicationId

string

True

應用程式 Amazon Resource Name (ARN)。

creationTime

string

True

此資源建立的日期和時間。

parameterDefinitions

類型 ParameterDefinition 的陣列

True

應用程式支援的參數類型陣列。

requiredCapabilities

類型 Capability 的陣列

True

您必須先指定的值清單,才能部署特定應用程式。某些應用程式可能包含可能會影響您 AWS 帳戶中許可的資源,例如建立新的 AWS Identity and Access Management (IAM) 使用者。對於這些應用程式,您必須指定此參數,明確認可其功能。

唯一有效的值是 CAPABILITY_IAMCAPABILITY_RESOURCE_POLICYCAPABILITY_NAMED_IAMCAPABILITY_AUTO_EXPAND

下列資源需要由您指定 CAPABILITY_IAMCAPABILITY_NAMED_IAMAWS::IAM::GroupAWS::IAM::InstanceProfileAWS::IAM::PolicyAWS::IAM::Role。如果應用程式包含 IAM 資源,您可以指定 CAPABILITY_IAMCAPABILITY_NAMED_IAM。如果應用程式包含具有自訂名稱的 IAM 資源,則您必須指定 CAPABILITY_NAMED_IAM

下列資源需要由您指定 CAPABILITY_RESOURCE_POLICYAWS::Lambda::PermissionAWS::IAM:PolicyAWS::ApplicationAutoScaling::ScalingPolicyAWS::S3::BucketPolicyAWS::SQS::QueuePolicyAWS::SNS::TopicPolicy

包含一個或多個巢狀應用程式的應用程式需要由您指定 CAPABILITY_AUTO_EXPAND

如果您的應用程式範本包含上述任何資源,建議您在部署之前檢閱與應用程式相關聯的所有許可。如果您未為需要 功能的應用程式指定此參數,呼叫將會失敗。

resourcesSupported

boolean

True

此應用程式中包含的所有 AWS 資源是否都支援在擷取該資源的區域中。

semanticVersion

string

True

應用程式語意版本:

https://semver.org/

sourceCodeArchiveUrl

string

False

S3 物件的連結,其中包含此版本應用程式的原始程式碼 ZIP 封存。

大小上限為 50 MB

sourceCodeUrl

string

False

應用程式原始碼的公有儲存庫連結,例如特定 GitHub 遞交的 URL。

templateUrl

string

True

應用程式封裝 AWS SAM 範本的連結。

另請參閱

如需在其中一種語言特定 AWS SDKs和參考中使用此 API 的詳細資訊,請參閱下列內容:

ListApplications

CreateApplication