AddPermissionRequest

APIs.ioEngineeringPlatform

Properties

Name Type Description
StatementId object
Action object
Principal object
SourceArn object
SourceAccount object
EventSourceToken object
RevisionId object
PrincipalOrgID object
FunctionUrlAuthType object
View JSON Schema on GitHub

JSON Schema

apis-io-engineering-platform-addpermissionrequest-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/AddPermissionRequest",
  "title": "AddPermissionRequest",
  "type": "object",
  "required": [
    "StatementId",
    "Action",
    "Principal"
  ],
  "properties": {
    "StatementId": {
      "allOf": [
        {
          "$ref": "#/components/schemas/StatementId"
        },
        {
          "description": "A statement identifier that differentiates the statement from others in the same policy."
        }
      ]
    },
    "Action": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Action"
        },
        {
          "description": "The action that the principal can use on the function. For example, <code>lambda:InvokeFunction</code> or <code>lambda:GetFunction</code>."
        }
      ]
    },
    "Principal": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Principal"
        },
        {
          "description": "The Amazon Web Service or Amazon Web Services account that invokes the function. If you specify a service, use <code>SourceArn</code> or <code>SourceAccount</code> to limit who can invoke the function through that service."
        }
      ]
    },
    "SourceArn": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Arn"
        },
        {
          "description": "<p>For Amazon Web Services, the ARN of the Amazon Web Services resource that invokes the function. For example, an Amazon S3 bucket or Amazon SNS topic.</p> <p>Note that Lambda configures the comparison using the <code>StringLike</code> operator.</p>"
        }
      ]
    },
    "SourceAccount": {
      "allOf": [
        {
          "$ref": "#/components/schemas/SourceOwner"
        },
        {
          "description": "For Amazon Web Service, the ID of the Amazon Web Services account that owns the resource. Use this together with <code>SourceArn</code> to ensure that the specified account owns the resource. It is possible for an Amazon S3 bucket to be deleted by its owner and recreated by another account."
        }
      ]
    },
    "EventSourceToken": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EventSourceToken"
        },
        {
          "description": "For Alexa Smart Home functions, a token that the invoker must supply."
        }
      ]
    },
    "RevisionId": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "Update the policy only if the revision ID matches the ID that's specified. Use this option to avoid modifying a policy that has changed since you last read it."
        }
      ]
    },
    "PrincipalOrgID": {
      "allOf": [
        {
          "$ref": "#/components/schemas/PrincipalOrgID"
        },
        {
          "description": "The identifier for your organization in Organizations. Use this to grant permissions to all the Amazon Web Services accounts under this organization."
        }
      ]
    },
    "FunctionUrlAuthType": {
      "allOf": [
        {
          "$ref": "#/components/schemas/FunctionUrlAuthType"
        },
        {
          "description": "The type of authentication that your function URL uses. Set to <code>AWS_IAM</code> if you want to restrict access to authenticated users only. Set to <code>NONE</code> if you want to bypass IAM authentication to create a public endpoint. For more information, see <a href=\"https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html\">Security and auth model for Lambda function URLs</a>."
        }
      ]
    }
  }
}