So i Found the solution to the first part of my problem,
You need to use the filter property in the find() like this
let draftArticleToPublish = await strapi.api.article.services.article.find(
{
publicationState: 'preview',
filters: {
publishedAt: null,
publishOn: new Date(new Date().setSeconds(0, 0)) // round the date to minute
}
}
)