No, there is no such API in ACS.
You might create a workflow with a Signal activity and call that with parameters via API.
Or as an alternative, create a custom resource to store the data via API and then a acheduled workflow to process these records
As you mentioned on your first approach(signal activity), Is it possible to update the campaign metadata? not a custom schema