codice:
# qui indenti il def a uno quando dovrebbe stare a zero
 def parse(data):
      # qui indenti di quattro *rispetto al def*, ok
      print(data)

# qui indenti il def a quattro quando dovrebbe stare a zero
    def get_set(json_url):
      # qui indenti a due rispetto al def, perché se prima avevi usato quattro?
      url = json_url
      response = urllib.urlopen(url)
      data = json.loads(response.read())


      s_code = '0'


      print (data)
      s_code = data["statusCode"]
      print (s_code)


      seconds_waiting = 10

      if s_code == 200:
        # ancora a due... perché?
        url = json_url
        response = urllib.urlopen(url)
        data = json.loads(response.read())
        parse(data)
      elif s_code != 200:
        print ("waiting ") + str(seconds_waiting) + (" second(s)...")
        time.sleep(seconds_waiting)
get_set(json_url)