def describe_job(JobId=None):
    """
    Returns information about a specific job including shipping information, job status, and other important metadata.
    See also: AWS API Documentation
    
    Examples
    This operation describes a job you've created for AWS Snowball.
    Expected Output:
    
    :example: response = client.describe_job(
        JobId='string'
    )
    
    
    :type JobId: string
    :param JobId: [REQUIRED]
            The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000 .
            

    :rtype: dict
    :return: {
        'JobMetadata': {
            'JobId': 'string',
            'JobState': 'New'|'PreparingAppliance'|'PreparingShipment'|'InTransitToCustomer'|'WithCustomer'|'InTransitToAWS'|'WithAWS'|'InProgress'|'Complete'|'Cancelled'|'Listing'|'Pending',
            'JobType': 'IMPORT'|'EXPORT'|'LOCAL_USE',
            'SnowballType': 'STANDARD'|'EDGE',
            'CreationDate': datetime(2015, 1, 1),
            'Resources': {
                'S3Resources': [
                    {
                        'BucketArn': 'string',
                        'KeyRange': {
                            'BeginMarker': 'string',
                            'EndMarker': 'string'
                        }
                    },
                ],
                'LambdaResources': [
                    {
                        'LambdaArn': 'string',
                        'EventTriggers': [
                            {
                                'EventResourceARN': 'string'
                            },
                        ]
                    },
                ]
            },
            'Description': 'string',
            'KmsKeyARN': 'string',
            'RoleARN': 'string',
            'AddressId': 'string',
            'ShippingDetails': {
                'ShippingOption': 'SECOND_DAY'|'NEXT_DAY'|'EXPRESS'|'STANDARD',
                'InboundShipment': {
                    'Status': 'string',
                    'TrackingNumber': 'string'
                },
                'OutboundShipment': {
                    'Status': 'string',
                    'TrackingNumber': 'string'
                }
            },
            'SnowballCapacityPreference': 'T50'|'T80'|'T100'|'NoPreference',
            'Notification': {
                'SnsTopicARN': 'string',
                'JobStatesToNotify': [
                    'New'|'PreparingAppliance'|'PreparingShipment'|'InTransitToCustomer'|'WithCustomer'|'InTransitToAWS'|'WithAWS'|'InProgress'|'Complete'|'Cancelled'|'Listing'|'Pending',
                ],
                'NotifyAll': True|False
            },
            'DataTransferProgress': {
                'BytesTransferred': 123,
                'ObjectsTransferred': 123,
                'TotalBytes': 123,
                'TotalObjects': 123
            },
            'JobLogInfo': {
                'JobCompletionReportURI': 'string',
                'JobSuccessLogURI': 'string',
                'JobFailureLogURI': 'string'
            },
            'ClusterId': 'string',
            'ForwardingAddressId': 'string'
        },
        'SubJobMetadata': [
            {
                'JobId': 'string',
                'JobState': 'New'|'PreparingAppliance'|'PreparingShipment'|'InTransitToCustomer'|'WithCustomer'|'InTransitToAWS'|'WithAWS'|'InProgress'|'Complete'|'Cancelled'|'Listing'|'Pending',
                'JobType': 'IMPORT'|'EXPORT'|'LOCAL_USE',
                'SnowballType': 'STANDARD'|'EDGE',
                'CreationDate': datetime(2015, 1, 1),
                'Resources': {
                    'S3Resources': [
                        {
                            'BucketArn': 'string',
                            'KeyRange': {
                                'BeginMarker': 'string',
                                'EndMarker': 'string'
                            }
                        },
                    ],
                    'LambdaResources': [
                        {
                            'LambdaArn': 'string',
                            'EventTriggers': [
                                {
                                    'EventResourceARN': 'string'
                                },
                            ]
                        },
                    ]
                },
                'Description': 'string',
                'KmsKeyARN': 'string',
                'RoleARN': 'string',
                'AddressId': 'string',
                'ShippingDetails': {
                    'ShippingOption': 'SECOND_DAY'|'NEXT_DAY'|'EXPRESS'|'STANDARD',
                    'InboundShipment': {
                        'Status': 'string',
                        'TrackingNumber': 'string'
                    },
                    'OutboundShipment': {
                        'Status': 'string',
                        'TrackingNumber': 'string'
                    }
                },
                'SnowballCapacityPreference': 'T50'|'T80'|'T100'|'NoPreference',
                'Notification': {
                    'SnsTopicARN': 'string',
                    'JobStatesToNotify': [
                        'New'|'PreparingAppliance'|'PreparingShipment'|'InTransitToCustomer'|'WithCustomer'|'InTransitToAWS'|'WithAWS'|'InProgress'|'Complete'|'Cancelled'|'Listing'|'Pending',
                    ],
                    'NotifyAll': True|False
                },
                'DataTransferProgress': {
                    'BytesTransferred': 123,
                    'ObjectsTransferred': 123,
                    'TotalBytes': 123,
                    'TotalObjects': 123
                },
                'JobLogInfo': {
                    'JobCompletionReportURI': 'string',
                    'JobSuccessLogURI': 'string',
                    'JobFailureLogURI': 'string'
                },
                'ClusterId': 'string',
                'ForwardingAddressId': 'string'
            },
        ]
    }
    
    
    :returns: 
    (string) --
    
    """
    pass
