IDL, сокращение от Interface Description Language, - это язык, используемый для описания открытого интерфейса программного компонента независимым от языка программирования способом. (Не путать с [tag:idl-programming-language], языком, используемым для научного и медицинского анализа изображений)

Как описано в Википедии:

Описание язык интерфейса или язык описания интерфейсов (IDL), является языком спецификации, используемым для описания интерфейса прикладного программирования компонента программного обеспечения (API). IDL описывают интерфейс независящим от языка способом, позволяя взаимодействовать между программными компонентами, которые не используют один язык. Например, между написанными на C++ и написанными на Java.

IDL обычно используются в программном обеспечении удаленного вызова процедур. В этих случаях машины на обоих концах связи могут использовать разные операционные системы и компьютерные языки. IDL предлагают мост между двумя разными системами.

Программные системы, основанные на IDL, включают Sun ONC RPC, распределенную вычислительную среду Open Group, системную объектную модель IBM, CORBA Object Management Group (который реализует OMG IDL, IDL на основе DCE/RPC), Mozilla XPCOM, Facebook Thrift и WSDL для Веб-сервисы.

Веб-спецификации используют специальную форму IDL, называемую WebIDL: https://heycam.github.io/webidl/