Public APIs:

What are they?  Why do we want one?  How to we build it?

What is an API?

Application Programming Interface

  • toolkit/platform to build upon
  • write & read data
  • someone needs to write code

What does it mean

to be Public?

 

  • powers other software 
  • we are still the gatekeepers
  • technical customer facing product
  • common consumers:
    • enterprise customers
    • 3rd party consultants
    • professional services

What does an API "look" like?

{
    "counts": {
        "4640": {
            "id": "4640",
            "dateCreated": "2018-03-07T18:15:13.000Z",
            "createdBy": "bob27",
            "kitchenId": "7047",
            "name": "Inventory - Full Count",
            "isComplete": false,
            "percentComplete": 0.20999999344348907,
            "countTypeId": "1001",
            "participants": [
                "bob27", "bob25"
            ]
        },
        "4661": {
            "id": "4661",
            "dateCreated": "2018-03-08T17:44:21.000Z",
            "createdBy": "bob27",
            "kitchenId": "7047",
            "name": "Inventory - Full Count",
            "isComplete": false,
            "percentComplete": 0.5299999713897705,
            "countTypeId": "1001",
            "description": "",
            "participants": [
                "bob27"
            ]
        }
}
{
  "id": "1e0cd95c-eced-4950-bc26-4b0bfefdbf5f",
  "name": "Opening Duties",
  "day": "2018-04-12",
  "sections": [
    {
      "name": "Sweep Walk in",
      "type": "boolean",
      "value": true
    },
    {
      "name": "Test1",
      "type": "text",
      "entries": [
        {
          "text": "A very important VIP came in today!",
          "updatedby": "appleavero",
          "dateUPdated": "2018-04-12T15:53:00.000Z"
        }
      ]
    },
    {
      "name": "Check booths",
      "type": "boolean",
      "value": false
    }
  ]
}

Why is having a Public API important?

Enterprise Customers

A public API is a tool that can be used to bridge the gap between features that all of our customers want and a specific feature that one customer really wants.

Integrations

  • fold Avero into existing process/workflow
  • company specific reports/metrics
  • customer retention

Example: Bookings + Logbook

Example: Event Sync

Example: BI Solution

Enabling Partnerships

  • production ready access
  • leverage their expertise
  • additional exposure

Internal Innovation

  • tool for creative problem solving
  • build POCs quickly
  • ...?

Becoming a Platform

An API is a public statement, defining the standards we think should be used.

How do we Build a Public API?

APIs are Products

  • owned by a team
  • generic, but with personas in mind
  • well written & maintained documentation

Built on Internal APIs

Questions? Comments?

Public APIs:

By Chris Langager

Public APIs:

  • 263