Issue:
When uploading a piece of proof using a Service Account token through the Hyperproof API, the operation fails with this error : "Service accounts cannot be proof owners."
Root cause:
For accountability and traceability reasons, Hyperproof does not allow the Service Account to be the primary owner of any Hyperproof object, and it must be owned by a Hyperproof user.
Workaround:
To successfully upload a proof via the API using a service account, you must explicitly assign the proof's ownership to one of the Hyperproof users. When making your API call to upload the proof, include the following header or metadata field:
Key: hp-proof-owned-by
Value: UUID of the user who should own the proof (Refer to this article to retrieve a list of users with UUIDs. https://developer.hyperproof.app/api-details#api=users-api&operation=get-org-users )
Conclusion:
To avoid the "Service accounts cannot be proof owners" error when uploading a proof via API, always assign a real user as the owner using the "hp-proof-owned-by" field. This ensures proper ownership and visibility in the UI.
If you need any more help, please email support at support@hyperproof.io.
REF 000001549

