Go sąsaja (interface) apibrėžia metodų signatūrų rinkinį — elgesio sutartį. Labai svarbu, kad sąsajos yra tenkinamos netiesiogiai: bet koks tipas, kuris turi tuos metodus, automatiškai tenkina sąsają, be jokios aiškios "implements" deklaracijos. Šis struktūrinis, duck-typing požiūris yra savitai ir galingas.
Sąsajos apibrėžimas ir neteisioginė realizacija
Speaker {
Speak()
}
Dog {}
Speak() { }
Cat {}
Speak() { }
s Speaker = Dog{}
s.Speak()
