code: def create_polygon(self, geopolygon, name=None):
          
          assert geopolygon is not None
          assert isinstance(geopolygon, GeoPolygon)
          data = dict()
          data['geo_json'] = {
              "type": "Feature",
              "properties": {},
              "geometry": geopolygon.as_dict()
          }
          if name is not None:
              data['name'] = name
          status, payload = self.http_client.post(
              POLYGONS_URI,
              params={'appid': self.API_key},
              data=data,
              headers={'Content-Type': 'application/json'})
          return Polygon.from_dict(payload)
docs: Create a new polygon on the Agro API with the given parameters
  
          :param geopolygon: the geopolygon representing the new polygon
          :type geopolygon: `pyowm.utils.geo.Polygon` instance
          :param name: optional mnemonic name for the new polygon
          :type name: str
          :return: a `pyowm.agro10.polygon.Polygon` instance