23

For some questions, using a filter parameter appears to break the API, causing it to return a "400 Bad Request" status code with the following payload:

{"error_id":404,"error_message":"no method found with this name","error_name":"no_method"}

Examples

  • Broken: https://api.stackexchange.com/2.2/questions/72303483?site=stackoverflow.com&filter=!b0OfMvgVcFN2Ro&key=ZCNbdLB0bpKnf4EjSy8bdQ((
  • Working: https://api.stackexchange.com/2.2/questions/72356719?site=stackoverflow.com&filter=!b0OfMvgVcFN2Ro&key=ZCNbdLB0bpKnf4EjSy8bdQ(( (same as broken, different question).
  • Working: https://api.stackexchange.com/2.2/questions/72303483?site=stackoverflow.com&key=ZCNbdLB0bpKnf4EjSy8bdQ(( (same as broken, no filter)

This is breaking many userscripts, and according to one report, the SE iOS app.

7
  • In the iOS app, many sites are still working but Meta.SE doesn't.
    – Glorfindel Mod
    May 24 at 6:28
  • 3
    MSE, MSO and Meta MathOverflow (at minimum) aren't available in the iOS App. Other meta and main sites seem fine.
    – Catija StaffMod
    May 24 at 6:28
  • I'm seeing 400 Bad Request in addition to 404. The Unclosed Request Review Script gets a 400 when requesting something like https://api.stackexchange.com/2.2/questions/72357743;72351987;42650412;7380828;72254536;72303483;72166432;72271052;5837077;72174614;72347339;72357457;72334967;72356829;72357188;37560979;72058205;44052754?pagesize=100&site=stackoverflow&key=YvvkfBc3LOSK*mwaTPkUVQ((&filter=!m)9LJxKwexI9h92EPpSH6vR(2S7pz3L9cXWiH9ar04WP8BSWy0Mtyl7P although I get a 404 when I visit that URL afterwards. May 24 at 6:44
  • 1
    @StephenOstermiller I have corrected the post; it's a "400 Bad Request" status code, but the JSON payload has an error_id of 404.
    – Ryan M
    May 24 at 6:47
  • 1
    Ah, HTTP status doesn't match status reported in payload. May 24 at 6:50
  • 2
    I'll be looking into it. If there are new examples of different kinds of queries not working (different from what is already posted) please add them here as well.
    – Yaakov Ellis StaffMod
    May 24 at 8:16
  • @YaakovEllis so see my Q posted with the update about "newest" and "active". engineering.meta.stackexchange.com/q/643/10902
    – Solar Mike
    May 24 at 9:45

1 Answer 1

19

I think that this is fixed. Issue was that we forgot to deploy new code for the API, and as a result, some API queries included meta-data about some posts that the old deployed code did not know how to process (resulting in the errors). New deploy seems to have solved this (if you still see any errors, please leave them as comments here).

More details: we are in the middle of switching our deployment tools (from Team City to CircleCI/Octopus, for those who are interested), and (obviously) still need to sort out and optimize some things with our workflow to ensure that missed-deployments like this don't happen. Apologies for the inconvenience.

API GET Error!
Old code still live, needs refresh…
New deploy fixed it.

4
  • 1
    Team City is broken, or is this violation of "If it ain't broken, don't fix it" mantra? :) May 24 at 10:24
  • 9
    Team City isn't broken, but not being broken isn't the same as "meets all of our needs". That said, I am not on the team who is working on deployments, and thus can't give any more information on the different factors at play here. Hopefully we can post about it in the future.
    – Yaakov Ellis StaffMod
    May 24 at 10:31
  • Re my comment and linked post, all working fine between "active" and "newest". Cheers.
    – Solar Mike
    May 24 at 11:57
  • 2
    Well, nothing is perfect, but I do trust your deployment people that they had good reason to make the switch. Hopefully, it would go smoothly. May 25 at 6:11

You must log in to answer this question.

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