An application programming interface (API) is the specification for which software is meant to be used by other software.

learn more… | top users | synonyms

3
votes
2answers
504 views

Strategy for designing a plugin API

I am working on an application for which a rich plugin API is crucial. What is the best process for creating an API that is intuitive and easy to learn?
3
votes
6answers
1k views

Is it smart to store application keys, ids, etc directly inside an application?

I have heard some say it isn't but they never suggest an alternative. Is this true? UPDATE Is it possible to store this external from application and have it called?
3
votes
1answer
392 views

API Design Question

I am currently designing a API and have come to a slight design issue and was hoping for a few other opinions. My url structure for accessing basic data from the API is: ...
3
votes
3answers
540 views

What is the best way to implement different views of one resource in RESTful manner?

Imagine, there is a resource, for example event. User is able to get list of events in HTML format. He should be able to view that list in two ways: as a list and as a calendar. How the API should ...
5
votes
1answer
575 views

Application internal API

I am currently building a small python CLI (Command Line Interface) application with ambition. In the first development phase I would concentrate on making it work through the CLI interface only, but ...
4
votes
6answers
1k views

Reverse engineering airline reservations systems

I saw an interesting conversation on here about airline reservation systems and the services that connect them (like Sabre). This is an almost identical analog to a problem I've been trying to figure ...
0
votes
1answer
98 views

User directory - framework

I'ld like to create a very basic directory where user can enter their social network profiles and pick a username. From that data a little website gets generated. The sign in process should be managed ...
8
votes
3answers
1k views

Deprecate a web API: Best Practices?

Eventually you need to depreciate parts of your public web API. However I'm confused on what would be the best way to do it. If you have a large 3rd party app base just yanking old versions of the API ...
1
vote
1answer
307 views

Translating error messages from an external API?

If I am localizing a piece of software that uses an external API, how should I handle error messages that originate in this API? I do not control the API, I only consume it. The error responses are ...
16
votes
5answers
6k views

Internal and external API architecture

The company I work for maintains a successful SaaS product that grew "organically" over the years. We are planning to expand the line with a suite of new products that will share data with the ...
4
votes
2answers
940 views

What are the best patterns/designs for stateful API development?

I am about to implement a API for my TCP/IP server written in Java. Right now I have a temporary method that takes a String, executes a command based on the String and returns a String basically like ...
13
votes
6answers
5k views

Are Java's public fields just a tragic historical design flaw at this point? [closed]

It seems to be Java orthodoxy at this point that one should basically never use public fields for object state. (I don't necessarily agree, but that's not relevant to my question.) Given that, would ...
4
votes
2answers
29k views

How do I use an API? [closed]

Background I have no idea how to use an API. I know that all APIs are different, but I've been doing research and I don't fully understand the documentation that comes along with them. There's a ...
10
votes
4answers
1k views

How are undocumented functions discovered? [closed]

I've always wondered how do you find undocumented / private API ? Example the Apple undocumented / private API, Play Station, Windows Phone 7, Win32 Kernel, Windows API, hidden callback, etc... ...
9
votes
4answers
2k views

Evolution of the Win32 API [closed]

Has the Windows 32 API changed much over time? Does the Charles Petzold book "Programming Windows, 5th Edition" from 1998 still contain relevant information, or is most of it obsolete/outdated? What ...
47
votes
4answers
98k views

Difference between Web API and Web Service?

I have heard about Web Services and Web API's a lot, is there any difference between them or are the same?
3
votes
1answer
1k views

Why has the PowerCollections C# library recently declined in popularity? [closed]

I just looked at the statistics for the PowerCollections C# library and noticed a sharp decrease in quantity of downloads. What may be the cause? Is there something better I should be using?
2
votes
1answer
416 views

Question about API and Web application code sharing

This is a design question. I have a multi part application with several user types. There is a user client for the patient that interacts with a web service. There is an API evolving behind the web ...
3
votes
2answers
852 views

Guidance for Web XML Api's

I have to create an API for our application that is accessible over HTTP. I envision the API's responses to be simple XML documents. It won't be a REST API (not in the strict sense of REST). I am ...
5
votes
2answers
3k views

Determining Cost of API Calls [closed]

[This is a cross-post originally posted by me in SO. I think the question is more appropriate here.] I was going through the adwords API and came across their rate sheet - ...
23
votes
4answers
19k views

Web api authentication techniques

We have a asp.net MVC web service framework for serving out xml/json for peoples Get requests but are struggling to figure out the best way (fast, easy, trivial for users coding with javascript or OO ...
14
votes
3answers
21k views

How do web APIs work? [closed]

I have heard of many web APIs like that of Facebook, Twitter, etc., which helps third party access data and manipulate it. I would like to know how a web API works. What are the basics of a web API? ...
2
votes
1answer
277 views

How to define template directives (from an API perspective)?

Preface I'm writing a template language (don't bother trying to talk me out of it), and in it, there are two kinds of user-extensible nodes. TemplateTags and TemplateDirectives. A TemplateTag ...
9
votes
3answers
1k views

Balancing dependency injection with public API design

I've been contemplating how to balance testable design using dependency injection with providing simple fixed public API. My dilemma is: people would want to do something like var server = new ...
3
votes
1answer
143 views

Legal aspects of Java specification implementations in other programming languages

I am planning to implement an official Java specification in a different programming language. Would this be a copyright violation? Hypothetical examples: a JMX "wrapper" library for C++ which can ...
5
votes
2answers
606 views

API/Technical Writers Guide [closed]

Is there any good book/tutorial/guide for programmers, which can help them to write good programming documentation/tutorials/guides?
3
votes
1answer
994 views

Concepts: API Level Testing

I'm college grad, soon to be graduating. SO i have started my job search. So my question is for New Grad who is interested in QA (API Level testing in particular). What is level of knowledge in JAVA ...
6
votes
8answers
964 views

Examples of Java APIs that demand an action sequence

As part of a research I'm working on, I'm looking for public APIs that only work correctly when you apply a certain sequence of actions on them. For example, the java.nio.channels.SocketChannel ...
8
votes
6answers
409 views

What core principles would you want in a library?

Theres talk about what syntax and feature you like in a programming language; i'll now ask what core principles or feature would you like in a library in your favorite (or any) language? An example ...
5
votes
3answers
258 views

When you write wrappers for APIs how do you handle usage errors?

When you write wrappers for APIs how do you handle usage errors? Do you assume that the user uses it right and write the wrapper such that it makes the call to the server and let the server return ...