I'm learning C# because I want to develop tools and integrations for Tekla Structures. Are there any free tutorials or learning resources you would recommend? I'm also confused about the terminology: is an API a general programming concept, while the Tekla Structures API is the specific interface I need to learn?
3 Answers
“API” is a general term for Application Programming Interface. It describes the rules and functions that let one piece of software communicate with another. The Tekla Structures API is a specific API exposed by Tekla Structures, so you need to learn that particular API rather than some generic thing called “API.”
Every API is different: the available classes, methods, parameters, request formats, and returned data all depend on the software providing it. Since your goal is to automate or interact with Tekla Structures, start with the official Tekla Structures API documentation and examples, while building up your C# fundamentals at the same time.
Think of an API as a controlled front desk between your code and an application. It exposes selected operations and data without giving your program unrestricted access to the application’s internals. For general background, free C# and API tutorials can help explain concepts like classes, methods, objects, requests, and responses. After that, apply those ideas directly to the Tekla Structures API. C# is a perfectly reasonable language for working with it.

That makes sense. I’ll focus on the Tekla-specific documentation after reviewing the C# basics.