def METHOD_NAME(request):
    """Convert a GeoJSON to a Shapefile"""
    # Extract area of interest into a dictionary
    params = request.data
    aoi_json = params.get('shape', '{}')
    filename = params.get('filename', 'area-of-interest')
    # Validate Shape
    serializer = AoiSerializer(data={'area_of_interest': aoi_json})
    serializer.is_valid(raise_exception=True)
    aoi_json = json.loads(serializer.validated_data.get('area_of_interest'))
    # Configure Shapefile Settings
    crs = {'no_defs': True, 'proj': 'longlat',
           'ellps': 'WGS84', 'datum': 'WGS84'}
    schema = {'geometry': aoi_json['type'], 'properties': {}}
    # Make a temporary directory to save the files in
    tempdir = tempfile.mkdtemp()
    try:
        # Write shapefiles
        with fiona.open(f'{tempdir}/area-of-interest.shp', 'w',
                        driver='ESRI Shapefile',
                        crs=crs, schema=schema) as sf:
            sf.write({'geometry': aoi_json, 'properties': {}})
        shapefiles = [f'{tempdir}/area-of-interest.{ext}'
                      for ext in SHAPEFILE_EXTENSIONS]
        # Create a zip file in memory from all the shapefiles
        stream = BytesIO()
        with zipfile.ZipFile(stream, 'w') as zf:
            for fpath in shapefiles:
                _, fname = os.path.split(fpath)
                zf.write(fpath, fname)
                os.remove(fpath)
    finally:
        # Delete the temporary directory
        os.rmdir(tempdir)
    # Return the zip file from memory with appropriate headers
    resp = HttpResponse(stream.getvalue(), content_type='application/zip')
    resp['Content-Disposition'] = f'attachment; filename="{filename}.zip"'
    return resp