Obtaining (i) all members from a specific country and (ii) All journals, each one with its member ID included

Is there a better way to obtain the following data via the Metadata Retrieval service (API)?

  1. All members from a specific country.
  2. All journals, each one with its member ID included.

For the first request, I’m currently obtaining all members and then filtering by the field location in a Python script. For the second one, I’m also using a Python script to obtain all journals and matching the publisher field to a list of Crossref members. None of those approaches are working the way I expect, there’s always an edge-case that breaks everything :sweat_smile: I think there’s a better way to go about this, but I can’t find it.

Hello @wisentini,

Thank you for your post.

The way that you have described is unfortunately the best way to get this at the moment, via the location element in the members route. The issue is that the member location can be based on the overarching member account. So any members that have membership under a larger member could be lost into the parent members location. But if you were looking at that element, that would be the best option.

We do not have a specific filter in the API to get this information currently I am afraid.

The journals route would be the same option for your next case as well. Collate all of the journals from the route and then return the member IDs from that list.

If you want to let me know any edge cases then we can try and look at those but at the moment this is the best option.

It is something that I have been wanting to get a better option for and it is something we are looking into.

Many thanks,
Paul