code: def patch_project(self, owner, id, **kwargs):
          
          kwargs['_return_http_data_only'] = True
          if kwargs.get('callback'):
              return self.patch_project_with_http_info(owner, id, **kwargs)
          else:
              (data) = self.patch_project_with_http_info(owner, id, **kwargs)
              return data
docs: Update a project
          Update an existing project. Note that only elements, files or linked datasets included in the request will be updated. All omitted elements, files or linked datasets will remain untouched.
          This method makes a synchronous HTTP request by default. To make an
          asynchronous HTTP request, please define a `callback` function
          to be invoked when receiving the response.
          >>> def callback_function(response):
          >>>     pprint(response)
          >>>
          >>> thread = api.patch_project(owner, id, callback=callback_function)
  
          :param callback function: The callback function
              for asynchronous request. (optional)
          :param str owner: User name and unique identifier of the creator of a project. For example, in the URL: [https://data.world/government/how-to-add-depth-to-your-data-with-the-us-census-acs](https://data.world/government/how-to-add-depth-to-your-data-with-the-us-census-acs), government is the unique identifier of the owner. (required)
          :param str id: Project unique identifier. For example, in the URL:[https://data.world/government/how-to-add-depth-to-your-data-with-the-us-census-acs](https://data.world/government/how-to-add-depth-to-your-data-with-the-us-census-acs), how-to-add-depth-to-your-data-with-the-us-census-acs is the unique identifier of the project. (required)
          :param ProjectPatchRequest body:
          :return: SuccessMessage
                   If the method is called asynchronously,
                   returns the request thread.