Правильно ли я понимаю определение библиотек и фреймворков?
в общем – все верно.
кроме 6. API это внешний интерфейс, то есть по сути тоже библиотека только для работы с каким то сервисом или технологией?
библиотека только для работы с каким то сервисом или технологией называется врапером/оберткой/etc. a api - это набор средств доступа к приложению со стороны, предоставленный разработчиком этого приложения.
Всё примерно так и есть.
Чётких определений не существует.
Важно это просто ощущать и понимать