def add_permission(QueueUrl=None, Label=None, AWSAccountIds=None, Actions=None
    ):
    """
    Adds a permission to a queue for a specific principal . This allows sharing access to the queue.
    When you create a queue, you have full control access rights for the queue. Only you, the owner of the queue, can grant or deny permissions to the queue. For more information about these permissions, see Shared Queues in the Amazon SQS Developer Guide .
    See also: AWS API Documentation
    
    
    :example: response = client.add_permission(
        QueueUrl='string',
        Label='string',
        AWSAccountIds=[
            'string',
        ],
        Actions=[
            'string',
        ]
    )
    
    
    :type QueueUrl: string
    :param QueueUrl: [REQUIRED]
            The URL of the Amazon SQS queue to which permissions are added.
            Queue URLs are case-sensitive.
            

    :type Label: string
    :param Label: [REQUIRED]
            The unique identification of the permission you're setting (for example, AliceSendMessage ). Maximum 80 characters. Allowed characters include alphanumeric characters, hyphens (- ), and underscores (_ ).
            

    :type AWSAccountIds: list
    :param AWSAccountIds: [REQUIRED]
            The AWS account number of the principal who is given permission. The principal must have an AWS account, but does not need to be signed up for Amazon SQS. For information about locating the AWS account identification, see Your AWS Identifiers in the Amazon SQS Developer Guide .
            (string) --
            

    :type Actions: list
    :param Actions: [REQUIRED]
            The action the client wants to allow for the specified principal. The following values are valid:
            *
            ChangeMessageVisibility
            DeleteMessage
            GetQueueAttributes
            GetQueueUrl
            ReceiveMessage
            SendMessage
            For more information about these actions, see Understanding Permissions in the Amazon SQS Developer Guide .
            Specifying SendMessage , DeleteMessage , or ChangeMessageVisibility for ActionName.n also grants permissions for the corresponding batch versions of those actions: SendMessageBatch , DeleteMessageBatch , and ChangeMessageVisibilityBatch .
            (string) --
            

    """
    pass
