Fetch posts sorted by date

Hey!

Api version 0.1

My query has a filter looking like this
/ghost/api/v0.1/posts/?client_id=xxx&client_secret=xxx&absolute_urls=true&include=tags&page=1&limit=10&filter=tags:[banana-blog]

But the posts returned are not ordered by published_at, they seem ordered by random.

How can I get ordered by published_at?

Without the filter they are returned sorted by published_at

Hi @banana_303 :wave: Sounds like a regression to me, will be able to have a closer look into it on Monday. In a meanwhile, could you provide a bit more context around what version of Ghost and environment/configuration you are using? Did you try running similar queries against Content/Admin v2 APIs?

Hey!

We are using a Docker container with node:10-slim
GOSU_VERSION 1.10
GHOST_CLI_VERSION 1.9.9
GHOST_VERSION 2.19.1

Tried also v2 api:
/ghost/api/v2/content/posts/?key=xxx&absolute_urls=true&include=tags&page=1&limit=10&filter=tags:[banana-blog]

And url encoding the tags:
/ghost/api/v2/content/posts/?key=xxx&absolute_urls=true&include=tags&page=1&limit=10&filter=tags%3A%5Bbanana-blog%5D

@banana_303 have you tried specifying an explicit order parameter? https://docs.ghost.org/api/content/#order

1 Like

Oh, didn’t know you could add that. It works! :smiley: Super, thank you!

I added this at the end of my url.
&order=published_at%20desc

After some investigation came across this issue - https://github.com/TryGhost/Ghost/issues/10377 , so my conclusion is that that this is intended default behavior of Ghost when including filter for related object. Comes down to this line in code.