'Subscribe to a Topic.
:type topic: string
:param topic: The ARN of the new topic.
:type protocol: string
:param protocol: The protocol used to communicate with
the subscriber.  Current choices are:
email|email-json|http|https|sqs|sms|application
:type endpoint: string
:param endpoint: The location of the endpoint for
the subscriber.
* For email, this would be a valid email address
* For email-json, this would be a valid email address
* For http, this would be a URL beginning with http
* For https, this would be a URL beginning with https
* For sqs, this would be the ARN of an SQS Queue
* For sms, this would be a phone number of an
SMS-enabled device
* For application, the endpoint is the EndpointArn
of a mobile app and device.'

def subscribe(self, topic, protocol, endpoint):

    params = {'TopicArn': topic, 'Protocol': protocol, 'Endpoint': endpoint}
    return self._make_request('Subscribe', params)
