36
Crafting APIs for Mobile Apps @apigee

Crafting APIs for Mobile Apps - Everything You Need to Know

  • Upload
    apigee

  • View
    4.720

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Crafting APIs for Mobile Apps - Everything You Need to Know

Crafting APIs for Mobile Apps

@apigee

Page 2: Crafting APIs for Mobile Apps - Everything You Need to Know

Ed Anuff@edanuff

Marsh Gardiner@earth2marsh

Page 3: Crafting APIs for Mobile Apps - Everything You Need to Know

youtube.com/apigee

Page 4: Crafting APIs for Mobile Apps - Everything You Need to Know

slideshare.net/apigee

Page 5: Crafting APIs for Mobile Apps - Everything You Need to Know

j.mp/api-craft j.mp/app-craft

Page 6: Crafting APIs for Mobile Apps - Everything You Need to Know

Apigee powers Walgreens, Best Buy, Gilt Groupe, NewEgg, Cars.com, Dell, GraceNote, Shazam, HomeAway, Pearson, cheezburger, eBay…

Page 7: Crafting APIs for Mobile Apps - Everything You Need to Know

Almost all of those are Mobile Apps that connect to the cloud with APIs

Page 8: Crafting APIs for Mobile Apps - Everything You Need to Know
Page 9: Crafting APIs for Mobile Apps - Everything You Need to Know

2000 Today

SmartPhone

PartnerIntegration

MobileDevice

Connected Car

Internet TV Innovation

DVR

Web App

Gaming Console

Website

Tablet

Your Company

2006

The App Economy

Page 10: Crafting APIs for Mobile Apps - Everything You Need to Know

Mobile == APIs?

Just about…

Page 11: Crafting APIs for Mobile Apps - Everything You Need to Know

100x Devices To Servers

Internet of Everything?Internet of APIs

Page 12: Crafting APIs for Mobile Apps - Everything You Need to Know

Websites Apps

MultipleDevices

Companies

ConsumerApps & Developers

Page 13: Crafting APIs for Mobile Apps - Everything You Need to Know

1.5M Apps150 Times a day2B Smartphones

300B API calls a day?

Some Quick Math…

Quite Possibly

Page 14: Crafting APIs for Mobile Apps - Everything You Need to Know

PersonalizationContentSocialTransactionsAnalytics

Page 15: Crafting APIs for Mobile Apps - Everything You Need to Know

Push NotificationsGeolocationIdentity ManagementFile StoragePicture SharingSocial NetworkingSecurity

Page 16: Crafting APIs for Mobile Apps - Everything You Need to Know

Requirements of all modern app development

User Management Datastore

Location

Messaging

Social Graph

Analytics

Activity Streams

Page 17: Crafting APIs for Mobile Apps - Everything You Need to Know

Sign-inUploadPhoto

CalculateCost

PlaceOrder

/photos /coupons /orders/token

Page 18: Crafting APIs for Mobile Apps - Everything You Need to Know

Example: Mobile Conference AppSign In To

The Conferenc

e

/token

See What Colleagues Are Here

/users/me/friends

What sessions should I attend?

/sessions

Page 19: Crafting APIs for Mobile Apps - Everything You Need to Know

Example: Mobile Conference AppRSVP to

sessionsAsk

Questions

/users/me/sessions

Check-in at

a Session

/users/me/activities /sessions/23/questions

Page 20: Crafting APIs for Mobile Apps - Everything You Need to Know

What’s different?

Page 21: Crafting APIs for Mobile Apps - Everything You Need to Know

ArchitectureClient DevelopmentSecurity ModelsAsync & DisconnectedDebugging

Page 22: Crafting APIs for Mobile Apps - Everything You Need to Know

Architecture

Page 23: Crafting APIs for Mobile Apps - Everything You Need to Know

2-Tier (and 2 Teams)Web is a clientMore logic on deviceNew Stacks (Node.js)Backend-as-a-Service

Page 24: Crafting APIs for Mobile Apps - Everything You Need to Know

ServerInfrastructure

AppCode

SDK API

Page 25: Crafting APIs for Mobile Apps - Everything You Need to Know

Client Development

Page 26: Crafting APIs for Mobile Apps - Everything You Need to Know

SDK or API?Static Obj-C and JavaHTML5/JS (PhoneGap)Async (& background)

Page 27: Crafting APIs for Mobile Apps - Everything You Need to Know

Security

Page 28: Crafting APIs for Mobile Apps - Everything You Need to Know

Identity (FB, OAuth) Untrusted DeviceToken VendingPolicies & PermissionsUntrusted NetworkMITM

Page 29: Crafting APIs for Mobile Apps - Everything You Need to Know

Async & Offline

Page 30: Crafting APIs for Mobile Apps - Everything You Need to Know

NotificationsPush, Poll, WebSocketNetwork AvailabilityIntermittent & OfflineMessage Queues SQS, etc.Latency

Page 31: Crafting APIs for Mobile Apps - Everything You Need to Know

Debugging

Page 32: Crafting APIs for Mobile Apps - Everything You Need to Know

Where To Start?App, Network, ServerTimeoutsMissing HeadersAuth & SecurityLog EVERYTHING

Page 33: Crafting APIs for Mobile Apps - Everything You Need to Know

Summary

Apps & APIs

2 sides of same coin

Page 34: Crafting APIs for Mobile Apps - Everything You Need to Know

Key App Features Cloud ConnectedNew Architecture Client/Server ReduxNew Development SDKs, Async, Offline

Page 35: Crafting APIs for Mobile Apps - Everything You Need to Know

Questions?

Ed Anuff@edanuff

Marsh Gardiner@earth2marsh

Page 36: Crafting APIs for Mobile Apps - Everything You Need to Know

Thanks!

youtube.com/apigee

slideshare.net/apigee

linkedin.com/company/apigee