In Software Defined Networking (SDN), Northbound and Southbound APIs are used to describe how interfaces operate between the different planes - data plane, control plane and application plane.
Southbound interfaces define the way the SDN controller should interact with the data plane (aka forwarding plane) to make adjustments to the network, so it can better adapt to changing requirements. OpenFlow is a well-known southbound interface. With OpenFlow, entries can be added and removed to the internal flow-table of switches and potentially routers to make the network more responsive to real-time traffic demands.
Northbound interfaces define the way the SDN controller should interact with the application plane. Applications and services are things like load-balancers, firewalls, security services and cloud resources. The idea is to abstract the inner-workings of the network, so that application developers can ‘hook’ into the network and make changes to accommodate the needs of the application without having to understand exactly what that means for the network.