There does not appear to be any documented way to Disable a Customer Account via API.
I assume it's possible, since it seems inconsistent to have a way of sending an Account Invite for a customer, thus Enabling the Account, but no way of then Disabling the Account.
Is this functionality available in one of the API calls, and I've just missed it?
There's no API property that you can use to set the state of the customer to Disabled. The option to disable a customers account is limited to staff in the Admin itself.
Imagine that. Allowing API access to disabling a customer. Some stupid coding error could essentially shut down an entire store by accidentally disabling all customer accounts. Imagine how that would go over... seems like a hard no on that, even in 2020 ;)
Got your point.
But I have a scenario where I have synced my customers from an external source via a custom app. If in an external source, if a customer is marked disable then I need to mark it as disable (not delete). As this customer might have order in history the deleting the customer may not be a good choice.
You don't define what it means to disable a customer. Without a definition of what that means, clearly there is no resolution possible. If you do define what it means from an external perspective to disable a customer, then there could very well be some suggestions on what you could do.