docs: def on_post(self, req, resp):
          """
          Send a POST request with id/nic/interval/filter/iters and it will start
          a container for collection with those specifications
          """
          resp.content_type = falcon.MEDIA_TEXT
          resp.status = falcon.HTTP_200
  
          # verify payload is in the correct format
          # default to no filter
          payload = {}
          if req.content_length:
              try:
                  payload = json.load(req.stream)
              except Exception as e:  # pragma: no cover
                  resp.body = "(False, 'malformed payload')"
                  return
          else:
              resp.body = "(False, 'malformed payload')"
              return
  
          if 'filter' not in payload:
              payload['filter'] = ''
  
          # payload should have the following fields:
          # - id
          # - nic
          # - interval
          # - filter
          # - iters
          # should spin up a tcpdump container that writes out pcap files based
          # on the filter needs to be attached to the nic specified, if iters is
          # -1 then loops until killed, otherwise completes iters number of
          # captures (and creates that many pcap files) should keep track of
          # container id, container name, and id of filter and filter + whatever
  
          # verify payload has necessary information
          if 'nic' not in payload:
              resp.body = "(False, 'payload missing nic')"
              return
          if 'id' not in payload:
              resp.body = "(False, 'payload missing id')"
              return
          if 'interval' not in payload:
              resp.body = "(False, 'payload missing interval')"
              return
          if 'iters' not in payload:
              resp.body = "(False, 'payload missing iters')"
              return
  
          # connect to docker
          c = None
          try:
              c = docker.from_env()
          except Exception as e:  # pragma: no cover
              resp.body = "(False, 'unable to connect to docker because: " + str(e) + "')"
              return
  
          # spin up container with payload specifications
          if c:
              tool_d = {'network_mode': 'host',
                        'volumes_from': [socket.gethostname()]}
  
              cmd = '/tmp/run.sh ' + payload['nic'] + ' ' + payload['interval']
              cmd += ' ' + payload['id'] + ' ' + payload['iters'] + ' "'
              cmd += payload['filter'] + '"'
              try:
                  container = c.containers.run(image='cyberreboot/vent-ncapture:master',
                                               command=cmd, remove=True, detach=True, **tool_d)
                  resp.body = "(True, 'successfully created and started filter: " + \
                      str(payload['id']) + ' on container: ' + \
                      str(container.id) + "')"
              except Exception as e:  # pragma: no cover
                  resp.body = "(False, 'unable to start container because: " + str(e) + "')"
                  return
  
          return