@classmethod
def from_geojson(cls, geojson):
    """
        Construct a Workflows GeometryCollection from a GeoJSON mapping.

        Note that the GeoJSON must be relatively small (under 10MiB of serialized JSON).

        Parameters
        ----------
        geojson: Dict

        Returns
        -------
        ~descarteslabs.workflows.GeometryCollection

        Example
        -------
        >>> from descarteslabs.workflows import GeometryCollection
        >>> geojson = {"type": "GeometryCollection", "geometries": [{"type": "Point", "coordinates": [1, 2]}]}
        >>> gc = GeometryCollection.from_geojson(geojson)
        >>> gc.compute().__geo_interface__ # doctest: +SKIP
        {'type': 'GeometryCollection', 'geometries': [{'type': 'Point', 'coordinates': [1, 2]}]}
        """
    try:
        return cls._from_apply(cls._constructor, type=geojson['type'],
            geometries=geojson['geometries'])
    except KeyError:
        raise ValueError(
            "Expected a GeoJSON mapping containing the fields 'type' and 'geometries', but got {}"
            .format(geojson))
