the things you can learn about apis from trying to …...(social, geo, fintech, etc.) •...

64
The things you can learn about APIs from trying to classify them!

Upload: others

Post on 26-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

The things you can learn about APIs from trying to classify them!

Page 2: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

ProgrammingInterface

User Application

Page 3: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

What Problem Do We Solve?

What is an API?

Page 4: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 5: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API Resources

Libraries

MashupsBlogs

Frame-Works

Other

Code & How-To

• Category (Social, Geo, Fintech, etc.)

The old days.

Page 6: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 7: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 8: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 9: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 10: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API Resources

Libraries

MashupsBlogs

Frame-Works

Other

Code & How-To

• Category (Social, Geo, Fintech, etc.)

Page 11: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company

Page 12: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home

Page 13: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL

Page 14: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)

Page 15: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category

Page 16: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories

Page 17: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID

Page 18: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With?

Page 19: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?

Page 20: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?

Page 21: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)

Page 22: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)

Page 23: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API ? • API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)

Page 24: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Page 25: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Page 26: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Page 27: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Page 28: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Page 29: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API• API Provider/Company• Interactive Console Home• Description File URL• API Endpoint (unique)• Primary Category • Secondary Categories• Twitter ID• Complies With? • Non-Proprietary?• License Type if Non Proprietary?• Hypermedia? (y/n)• Restricted Access? (y/n)• Unofficial? (y/n)• Changelog (triggers emails)

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Reply• JSON• CSV• XML• Etc.

Page 30: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Before / After Example

Page 31: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

APIAPI

APIAPI

APIAPI

Version 3.1

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Reply• JSON• CSV• XML• Etc.

Page 32: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

API

1.0

1.1

2.0

3.0

3.1

Beta

Deactivated

Not supported, scheduled for deactivation

Supported, scheduled for Deprecation

Supported

Supported, recommended

Not supported, could change

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Reply• JSON• CSV• XML• Etc.

Page 33: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

API

1.0

1.1

2.0

3.0

3.1

Beta

Deactivated

Not supported, scheduled for deactivation

Supported, scheduled for Deprecation

Supported

Supported, recommended

Not supported, could change

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

Page 34: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

API

1.0

1.1

2.0

3.0

3.1

Beta

Deactivated

Not supported, scheduled for deactivation

Supported, scheduled for Deprecation

Supported

Supported, recommended

Not supported, could change

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

Official

Official

Official

Page 35: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API Resources

Libraries

MashupsBlogs

Frame-Works

Other

Code & How-To

• Category (Social, Geo, Fintech, etc.)

Page 36: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Other

FrameWorks

Libraries

SDKs

Resources

Page 37: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs vs. Libraries?

Page 38: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs vs. Libraries?

• SDKs = consumption

Page 39: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs vs. Libraries?

• SDKs = consumption• Libraries = provisioning and other non-consumption functions

Page 40: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs vs. Libraries?

• SDKs = consumption• Libraries = provisioning and other non-consumption functions

*Both are language specific

Page 41: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs vs. Libraries?

• SDKs = consumption• Libraries = provisioning and other non-consumption functions

*Both are language specific** Javascript APIs are treated as SDKs (it’s about search)

Page 42: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SDKs• API Provider’s Home Page• API Developer Portal

• Docs Home Page• Forum Home• ToS URL

• API Endpoint • Category (Social, Geo, Fintech, etc.)• Description• Support email• Protocols/Styles• Data Format• Authentication Model• Business Model• Etc.

API Resources

Libraries

MashupsBlogs

Frame-Works

Other

Code & How-To

• Category (Social, Geo, Fintech, etc.)

Page 43: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source SamplesSDKs

Source Samples

Source Samples

Source Samples

Frame-Works

Like APIs, New First Class Citizens

Source Samples

Source Samples

Source Samples

Mashup& Apps

Source Samples

Source Samples

Source SamplesAPIs

Page 44: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source SamplesSDKs

Source Samples

Source Samples

Source Samples

Frame-Works

Like APIs, New First Class Citizens

Source Samples

Source Samples

Source Samples

Mashup& Apps

Source Samples

Source Samples

Source SamplesAPIs

Language

Company

Page 45: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source SamplesSDKs

Source Samples

Source Samples

Source Samples

Frame-Works

Like APIs, New First Class Citizens

Source Samples

Source Samples

Source Samples

Mashup& Apps

Source Samples

Source Samples

Source SamplesAPIs

Language

Company

Page 46: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source SamplesSDKs

Source Samples

Source Samples

Source Samples

Frame-Works

Like APIs, New First Class Citizens

Source Samples

Source Samples

Source Samples

Mashup& Apps

Source Samples

Source Samples

Source SamplesAPIs

Language

Company

* What about How To’s?

Page 47: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 48: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

SponsoredContent

ContributedContent

Press Releases

Analysis

News

Articles

Page 49: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

How-To

SponsoredContent

ContributedContent

Press Releases

Analysis

News

Articles

Page 50: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

The API Endpoint is a Unique Identifier

Acme API

• Acme REST API v1.1• Acme RPC API v1.1• Acme REST API v2.0• Acme RPC API v2.0• Acme REST API v2.1• Acme GraphQL API Beta

VS.

Page 51: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Master API

Version 1.0Version 1.2

Version 2.0Beta

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Reply• JSON• CSV• XML• Etc.

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

Python SDK v. X.Y

PHP SDK v. X.Y

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesArticles

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source Samples

Frame-Works

Source Samples

Source Samples

Source SamplesApps

MetadataMetadata

MetadataMetadata

By Arch. Style

Page 52: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Master API

Version 1.0Version 1.2

Version 2.0Beta

Arch Style

• REST• Push/Streaming• RPC• Native/Browser• Indirect (eg: SDK only)

Type

• Web/Internet• Browser• Product• Standard Spec• System/Embedded

Scope• Single Purpose• Meta/Aggregate• Microservice

Request• SOAP• URI Query/CRUD• XML• Etc.

Reply• JSON• CSV• XML• Etc.

iOS SDK v. X.Y

Droid SDK v. X.Y

JS SDK v. X.Y

Node SDK v. X.Y

iOS SDK v. X.Y

Droid SDK v. X.Y

Python SDK v. X.Y

PHP SDK v. X.Y

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source Samples

Source SamplesArticles

Source Samples

Source Samples

Source SamplesLibraries

Source Samples

Source Samples

Source Samples

Frame-Works

Source Samples

Source Samples

Source SamplesApps

MetadataMetadata

MetadataMetadata

By Arch. Style

Better foundation for:• Site usability• Power Search

Page 53: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

But then, uh oh.

Page 54: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

RPC vs. Streaming

Page 55: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

RPC vs. Streaming

(not mutually exclusive)

Page 56: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

RPC vs. Streaming

(not mutually exclusive)

Whoops!

Page 57: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Some Real-Time Streaming Technologies

• Server-Sent Events (SSE)• XMPP• Webhooks• Websockets• PubSubHubbub• GraphQL• gRPC• MQTT

• Unidirectional• Unidirectional• Unidirectional• Bidirectional• Unidirectional• Unidirectional• Bidirectional (HTTP/2)• Unidirectional

Page 58: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 59: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 60: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model
Page 61: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

#1 Question

Page 62: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Where’s the API for APIs?

Page 63: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Some Key Takeaways and Observations• REST wasn’t the first architectural style, it already isn’t the last

• RPC, Network DDE, EDI, Corba, XML-RPC, SOAP, REST, gRPC, GraphQL…• Future proof yourself as best you can

• Publish your description files (Swagger, RAML, Blueprint, etc.)• Encourage open licensing

• Be opinionated about SDKs, Libraries, etc.• Encourage community contribution and involvement

• Think long and hard about versioning and how resources (docs, SDKs, etc.) will remain accessible on an ongoing basis

• Consider synching SDK version numbers with API version numbers• App Dev now involves all kinds of APIs (not just networkable ones)• The API economy will include meta and microservice (workflow) APIs• APIs related to the IoT will eventually dwarf all other APIs by orders of magnitude• API Security is the soft white underbelly of everything.

• Teach developers how to build secure apps• Have Developer Empathy

Page 64: The things you can learn about APIs from trying to …...(Social, Geo, Fintech, etc.) • Description • Support email • Protocols/Styles • Data Format • Authentication Model

Thank you EC!

@[email protected]