An API is a set of specifications that outline how a programming language can interact with a program. It's not a programming language itself. You can program PowerPoint using VBA (through the VBA IDE built into the program), Visual Basic or C# (using Visual Studio), JavaScript (using Office.js), Python and others. All of these languages follow the PowerPoint API to manipulate the program.
A shapes array is not read-only. You have to work with it using the ShapeRange object, which is a bit of a pain, but certainly possible.
To provide code examples, you would have to specify the language you want to work with.