My answer is purely anecdotal, but I am a software dev who worked for a distributer that sold Civil Engineeringcivil engineering software. (itIt was an application rather than an API/library).)
The model was a bit of a gray area,: they would sell licenses per user but for larger businesses they would make per business-business agreements that would mean they could get X licenses for XY fee on a per project-project basis. The nature of Civil Engineeringcivil engineering is to work per project, so when a client won a big project for a highway, dam, etc. they would hire more Civil Engineerscivil engineers and then approach us saying; wesaying, "We are working on project X and need Y licenses what. What kind of deal can you do.?" For smaller clients, the sales model was simply per user with no wiggle room.