Hello! I am getting 400 errors when hitting the piefed.social. Hitting other piefed instances appear to work.

The exact error I get is:

{"code":400,"message":"{'my_user': {'instance_blocks': {0: {'site': ['Missing data for required field.']}}}}","status":"Bad Request"}

As an example I get this error when I make a GET request to https://piefed.social/api/alpha/site.

Note that I am making with request without an Authorization header.

Update

It seems that only alpha/site endpoint is broken. I can GET https://piefed.social/api/alpha/federated_instances just fine.

  • wjs018@piefed.wjs018.xyz
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    3 months ago

    Ok, I was able to reproduce this and made a PR for a fix. This issue only pops up when a user has instance blocks and works fine otherwise, which is why others in this thread (and myself when I was testing) aren’t running into issues.

    The root cause really is that I was creating schema for input and output validation to match the manually created swagger docs, but the output for instance_blocks was different than specified (and I marked it as a required field, likely from a copy/paste error). So, thanks for helping us as we are going through endpoints and making them self-documenting.