docs: def create_secret(self, name, data, labels=None, driver=None):
          """
              Create a secret
  
              Args:
                  name (string): Name of the secret
                  data (bytes): Secret data to be stored
                  labels (dict): A mapping of labels to assign to the secret
                  driver (DriverConfig): A custom driver configuration. If
                      unspecified, the default ``internal`` driver will be used
  
              Returns (dict): ID of the newly created secret
          """
          if not isinstance(data, bytes):
              data = data.encode('utf-8')
  
          data = base64.b64encode(data)
          if six.PY3:
              data = data.decode('ascii')
          body = {
              'Data': data,
              'Name': name,
              'Labels': labels
          }
  
          if driver is not None:
              if utils.version_lt(self._version, '1.31'):
                  raise errors.InvalidVersion(
                      'Secret driver is only available for API version > 1.31'
                  )
  
              body['Driver'] = driver
  
          url = self._url('/secrets/create')
          return self._result(
              self._post_json(url, data=body), True
          )