def get_vpsa(session, vpsa_id, return_type=None, **kwargs):
    """
    Retrieves details for a single VPSA.

    :type session: zadarapy.session.Session
    :param session: A valid zadarapy.session.Session object.  Required.

    :type vpsa_id: int
    :param vpsa_id: The VPSA 'id' value as returned by get_all_vpsas.  For
        example: '2653'.  Required.

    :type return_type: str
    :param return_type: If this is set to the string 'json', this function
        will return a JSON string.  Otherwise, it will return a Python
        dictionary.  Optional (will return a Python dictionary by default).

    :rtype: dict, str
    :returns: A dictionary or JSON data set as a string depending on
        return_type parameter.
    """
    if type(vpsa_id) is int:
        vpsa_id = str(vpsa_id)

    if not vpsa_id.isdigit():
        raise ValueError('The VPSA ID should be a positive integer.')

    path = '/api/vpsas/{0}.json'.format(vpsa_id)

    return session.get_api(path=path, return_type=return_type, **kwargs)