The idea of a completion endpoint is pretty straightforward, you send it some amount of text and it will continue that text. You could build so many tools off of just that one API endpoint essentially. Combine that with an embedding endpoint and you sort of have all you need to make complex AI apps.