For the last month, I've been trying to use check50 to see if I wrote the right code for the problem sets, but no matter which problem, it always fails with status code 400.

Any idea what I should do since I can't submit any of the assignments?

jharvard@appliance (~/Dropbox/pset1): check50 2014/x/pset1/mario mario.c
Compressing mario.c... Compressed.
Uploading..... Uploaded.
Checking..... server responded with status code 400. Try again later!
  • Have you confirmed that you have Internet connection? I know had issues with check50 until I realized I didn't have outside connectivity from the appliance.
    – user83
    Jun 8, 2014 at 16:59

2 Answers 2


Status 400 usually refers to an error during the connection of your appliance to the "back-end" that controls the status of your requests.

You can get such error for various reasons:

1 - Your internet connection is not working properly
2 - Your appliance is misconfigured in its network section
3 - The back-end server is too busy at the moment to correctly handle your request.

To be sure everything works fine on your side:

1 - Check your internet connection (i.e. firing up your browser):
a) if your browser doensn't connect, you definitely have problems on your internet connection.
b) If your browser works pproperly, move to point 2.

2 - Check your appliance's connection (i.e. fining up Chrome from inside the aplliance).
a) If Chrome inside the appliance doesn't connect, your appliance's networking connection is misconfigured. Configure it using the following this link
b) If Chrome works correctly, move to point 3

3 - Update your appliance's configuration
a) Open a terminal window inside the appliance
b) Write the command "connect50" (without quotes) and hit enter
c) Write the command "update50" (without quotes) and hit enter
d) Retry the command that gave you the error 400 message.

4 - If you still get the error 400 message:
a) Retry later in the day: odds are that the back-end server is too busy answering requests coming from students)
b) If you are connecting behind a proxy server (i.e. at your office) you should reconfigure some of the networking preferences of the appliance. But how to know if you are behind a proxy? If you can seamlessly connect from home receiving no error 400, that's the case.



Did you update the CS50 appliance? Try running update50 in the terminal.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .