How can I find the transaction that spends a specific output via an API?
I would parse the blockchain. There are libraries for almost any programming language. You can in a 5-liner scan through all transactions and see which input they spent. You need to do this with a local parser and not via an remote api as remote api calls would take way too much time. 
If the input txid is an element of your funding txset wich you collected before it is a channel close (for now while we don't have Splicing)

On the other side 1ml.com has a history of channels with the closing tx. So you might be able to get the data you seek from them.