Compute Optimizer Lambda Function Recommendation Structure
Describes an Lambda function recommendation.
LambdaFunctionRecommendation is a JSON Structure definition published by Amazon Compute Optimizer, describing 13 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-compute-optimizer/refs/heads/main/json-structure/compute-optimizer-lambda-function-recommendation-structure.json",
"name": "LambdaFunctionRecommendation",
"description": "Describes an Lambda function recommendation.",
"type": "object",
"properties": {
"functionArn": {
"allOf": [
{
"$ref": "#/components/schemas/FunctionArn"
},
{
"description": "The Amazon Resource Name (ARN) of the current function."
}
]
},
"functionVersion": {
"allOf": [
{
"$ref": "#/components/schemas/FunctionVersion"
},
{
"description": "The version number of the current function."
}
]
},
"accountId": {
"allOf": [
{
"$ref": "#/components/schemas/AccountId"
},
{
"description": "The Amazon Web Services account ID of the function."
}
]
},
"currentMemorySize": {
"allOf": [
{
"$ref": "#/components/schemas/MemorySize"
},
{
"description": "The amount of memory, in MB, that's allocated to the current function."
}
]
},
"numberOfInvocations": {
"allOf": [
{
"$ref": "#/components/schemas/NumberOfInvocations"
},
{
"description": "The number of times your function code was applied during the look-back period."
}
]
},
"utilizationMetrics": {
"allOf": [
{
"$ref": "#/components/schemas/LambdaFunctionUtilizationMetrics"
},
{
"description": "An array of objects that describe the utilization metrics of the function."
}
]
},
"lookbackPeriodInDays": {
"allOf": [
{
"$ref": "#/components/schemas/LookBackPeriodInDays"
},
{
"description": "The number of days for which utilization metrics were analyzed for the function."
}
]
},
"lastRefreshTimestamp": {
"allOf": [
{
"$ref": "#/components/schemas/LastRefreshTimestamp"
},
{
"description": "The timestamp of when the function recommendation was last generated."
}
]
},
"finding": {
"allOf": [
{
"$ref": "#/components/schemas/LambdaFunctionRecommendationFinding"
},
{
"description": "<p>The finding classification of the function.</p> <p>Findings for functions include:</p> <ul> <li> <p> <b> <code>Optimized</code> </b> \u2014 The function is correctly provisioned to run your workload based on its current configuration and its utilization history. This finding classification does not include finding reason codes.</p> </li> <li> <p> <b> <code>NotOptimized</code> </b> \u2014 The function is performing at a higher level (over-provisioned) or at a lower level (under-provisioned) than required for your workload because its current configuration is not optimal. Over-provisioned resources might lead to unnecessary infrastructure cost, and under-provisioned resources might lead to poor application performance. This finding classification can include the <code>MemoryUnderprovisioned</code> and <code>MemoryUnderprovisioned</code> finding reason codes.</p> </li> <li> <p> <b> <code>Unavailable</code> </b> \u2014 Compute Optimizer was unable to generate a recommendation for the function. This could be because the function has not accumulated sufficient metric data, or the function does not qualify for a recommendation. This finding classification can include the <code>InsufficientData</code> and <code>Inconclusive</code> finding reason codes.</p> <note> <p>Functions with a finding of unavailable are not returned unless you specify the <code>filter</code> parameter with a value of <code>Unavailable</code> in your <code>GetLambdaFunctionRecommendations</code> request.</p> </note> </li> </ul>"
}
]
},
"findingReasonCodes": {
"allOf": [
{
"$ref": "#/components/schemas/LambdaFunctionRecommendationFindingReasonCodes"
},
{
"description": "<p>The reason for the finding classification of the function.</p> <note> <p>Functions that have a finding classification of <code>Optimized</code> don't have a finding reason code.</p> </note> <p>Finding reason codes for functions include:</p> <ul> <li> <p> <b> <code>MemoryOverprovisioned</code> </b> \u2014 The function is over-provisioned when its memory configuration can be sized down while still meeting the performance requirements of your workload. An over-provisioned function might lead to unnecessary infrastructure cost. This finding reason code is part of the <code>NotOptimized</code> finding classification.</p> </li> <li> <p> <b> <code>MemoryUnderprovisioned</code> </b> \u2014 The function is under-provisioned when its memory configuration doesn't meet the performance requirements of the workload. An under-provisioned function might lead to poor application performance. This finding reason code is part of the <code>NotOptimized</code> finding classification.</p> </li> <li> <p> <b> <code>InsufficientData</code> </b> \u2014 The function does not have sufficient metric data for Compute Optimizer to generate a recommendation. For more information, see the <a href=\"https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html\">Supported resources and requirements</a> in the <i>Compute Optimizer User Guide</i>. This finding reason code is part of the <code>Unavailable</code> finding classification.</p> </li> <li> <p> <b> <code>Inconclusive</code> </b> \u2014 The function does not qualify for a recommendation because Compute Optimizer cannot generate a recommendation with a high degree of confidence. This finding reason code is part of the <code>Unavailable</code> finding classification.</p> </li> </ul>"
}
]
},
"memorySizeRecommendationOptions": {
"allOf": [
{
"$ref": "#/components/schemas/LambdaFunctionMemoryRecommendationOptions"
},
{
"description": "An array of objects that describe the memory configuration recommendation options for the function."
}
]
},
"currentPerformanceRisk": {
"allOf": [
{
"$ref": "#/components/schemas/CurrentPerformanceRisk"
},
{
"description": "The risk of the current Lambda function not meeting the performance needs of its workloads. The higher the risk, the more likely the current Lambda function requires more memory."
}
]
},
"tags": {
"allOf": [
{
"$ref": "#/components/schemas/Tags"
},
{
"description": " A list of tags assigned to your Lambda function recommendations. "
}
]
}
}
}
Work with this as data
Every JSON Structure here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for json structure
4 MCP tools reach this
find_json_structuresBrowse and filter every JSON Structure in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-structures/compute-optimizer-lambda-function-recommendation-structure"
curl "https://apis.io/api/v1/json-structures?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.