Can I use "needs: project" to get artifacts from a specific pipeline in another project?

I have a multi-project pipeline setup, i.e. a pipeline in one project triggers a pipeline in another project.
The upstream pipeline also contains some jobs that produces artifacts. The downstream pipeline needs to use these artifacts and I currently use the API to fetch the artifacts that I need.

But I was thinking that it would have been cleaner to use the needs:project keywords to get the artifacts, but there doesn’t seem to be a way to specify a specific pipeline in another project, only the ref and then to get artifacts from the latest pipeline for that ref.

In my case the upstream pipeline is not triggered by a commit in that project, it is in turn triggered in other ways. My pipeline need to target a specific pipeline id to be sure to get the correct artifacts. Is there a way to achieve this using the needs:project or is using the API the only option?

The needs:projects gets the artifacts off the last successfully built pipeline of the ref branch but you can also specify the specific job you want the artifacts from. If that doesn’t work I would consider breaking up that pipeline or possibly an artifact storage and pulling from there instead.