@hugh Mastodon already had an API when they adopted the ActivityPub protocol, and they did not want to use the ActivityPub API.
I think they made the mistake of thinking that a standard API had to replace their app-specific API, rather than being complimentary.
This is too bad; ActivityPub was designed to make clients innovative and interesting, and let servers concentrate on performance and reliability.
I think as we get more ActivityPub API clients, servers will start supporting the API.