Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm due to meet with a developer/sales person from a new 3rd party resource we're about to start using. The main topic I'll be interested in, is their API as I will be the developer making use of it and explaining it to the rest of the team.

What questions would you recommend asking?

Things I'm already thinking about are:

  • What happens and how will I be notified when they depreciate a method?
  • Is there ever any downtime?
  • Who will I deal with first when I have API issues?
share|improve this question

closed as not constructive by Thomas Owens Dec 10 '12 at 17:40

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

Your question is too vague. We do not know what matters to you. – M. Dudley Dec 10 '12 at 15:54
@emddudley I think there are certainly general concerns that all developers will have about an API. – Glenn Nelson Dec 10 '12 at 16:01
ask him what the meaning of life is. – ADP Dec 10 '12 at 16:08
Ask if their source code is in escrow? Think risk mitigation. – Guy Coder Dec 10 '12 at 16:21
List questions don't make particularly good questions for a Stack Exchange site. Also, the questions that would be most helpful to ask are dependent on your end goals. – Thomas Owens Dec 10 '12 at 17:41

Besides the things you suggested by yourself (among which "who will I deal with first when I have API issues" is IMHO the most important question) I would ask

  • What kind of documentation do you provide?

  • Do you provide samples how to use the API?

  • How often do you provide new releases?

  • Do you provide a detailed and complete (!) change list for a new release with special hints on breaking changes?

  • Do your developers have a test suite in place (for example, to detect breaking changes)? (if the answer is no or "just for parts", you may consider bringing your own test suite in place)

  • Which requirements for the OS environment or run time environment does the lib have? What happens if there is a new version of the OS / run time environment, how quick can you test the lib / provide a new version if necessary?

  • What requirements on resources (memory, network, file system space, processor speed etc.) does the lib have?

share|improve this answer

Though there is a laundry list of potential questions, the answer to your question is simply:

Read the API documentation before the initial meeting on the API and ask for any additional information that you will need for the success of the project.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.