Как организовать структуру Symfony проекта для взаимодействия со сторонним API?
Структура Entity -> Repository -> Service -> Controller универсальна и не завязана на БД. 
Entity это ваши сущности (посты, клиенты, заказы). Repository позволяют изолировать логику хранения данных. На каждую сущность создаем репозиторий, который будет иметь зависимость от ApiClient (а лучше от интерфейса клиента) через DI. Основная идея репозиториев впоследствии безболезненно переходить на другие способы хранения/получения данных, поэтому следует создать для них интерфейсы и сделать реализацию этих интерфейсов для API. В Service описываем бизнес логику, используем репозитории. Контроллеры оставляем тонкими — получение сервисов и вызов их методов. Можно пойти дальше и взаимодействие сервисов перенести в специальные сервисы. Это полезно, если потребуется использовать данную логику в других частях приложения, например, в командах
Надеюсь, ответил на все вопросы. Если что-то неясно, спрашивайте
Вопрос написан сумбурно и не понятно. Какая решается задача - не ясно совсем.1. Можно ли каждую сущность представить сервисом?
Нужно разобраться с терминологией "сущность представить сервисом" - каша какая-то. Сущность это сущность, сервис это сервис.Как получать данные для таких сущностей?
"Получать данные для сущностей" это, опять же, каша какая-то. Пишите гейтвей к апишке и грузите данные.Service/PostService.php
И нормально именовать тоже нужно учиться. PostService - ни о чём, что делает класс - не ясно.Создал отдельный сервис ApiService.php
Снова название ни о чём.от которого наследуются сервисы которым нужно получать данные из api.
Наследование - выпилить и забыть как страшный сон. Экземпляры API - клиента через DI поставлять в те классы, где он нужен.