code: def create_question(participant_id):
      
      # Get the participant.
      try:
          ppt = models.Participant.query.filter_by(id=participant_id).one()
      except NoResultFound:
          return error_response(
              error_type="/question POST no participant found", status=403
          )
  
      question = request_parameter(parameter="question")
      response = request_parameter(parameter="response")
      number = request_parameter(parameter="number", parameter_type="int")
      for x in [question, response, number]:
          if isinstance(x, Response):
              return x
  
      # Consult the recruiter regarding whether to accept a questionnaire
      # from the participant:
      rejection = ppt.recruiter.rejects_questionnaire_from(ppt)
      if rejection:
          return error_response(
              error_type="/question POST, status = {}, reason: {}".format(
                  ppt.status, rejection
              ),
              participant=ppt,
          )
  
      try:
          # execute the request
          models.Question(
              participant=ppt, question=question, response=response, number=number
          )
          session.commit()
      except Exception:
          return error_response(error_type="/question POST server error", status=403)
  
      # return the data
      return success_response()
docs: Send a POST request to the question table.
  
      Questions store information at the participant level, not the node
      level.
      You should pass the question (string) number (int) and response
      (string) as arguments.