In a call made for a campaign or for a callback queue,
which parameter tells me if the call has been answered by an agent or by a bot/ivr.
It can be the value of the conversationInitiator parameter, from the following api: - conversationInitiator -
/api/v2/analytics/conversations/{conversationId}/details ?
In /api/v2/outbound/campaigns, I can't find any parameter that returns who answered the call (Agent or bot).
I think you may be looking at it wrong. The campaign is just high level data about the campaign.
It will have minimal info about the specifics of individual calls. That will always be in Conversations.
You've already found where the initiator is in conversations, what you may be missing is that the OutboundCampaignId is an attribute of the Conversation -> Participant -> Session so you may tie the two sets together.
So you can easily run a conversation aggregate query grouped by some combination of outboundCampaignId, conversationInitiator, userId and purpose or similar to get summaries of campaign activity.