API Proposals (New APIs Start Here)

This page on Google intranet: go/new-chrome-api

So you want to make a new extension or app API?  That's great!

You should expect three distinct phases for your API's development: Proposal, Development, and Going Live.  Expect to go through the API review meeting twice: once before implementation (proposal), and once after implementation (final review before Chrome stable).

Need help?  Send an email to extensions-dev@chromium.org or apps-dev@chromium.org.

Have feedback on this proposal process?  Send an email to pludwig@chromium.org.

Proposal Phase
  1. Fill out an API Proposal.
  2. Add your API to the list at the bottom of this page with Status "1: proposing."  Make sure to link to your proposal doc in the "Proposal" column.
  3. Sign up for your first (proposal stage) API Review Meeting to present your proposal and get some feedback before coding.  (If you are external to Google, email mpcomplete@chromium.org to find sponsors for your API proposal.  You'll need to work with a Google engineer and PM to go through the review and launch process.)
Development Phase
  1. Change the Status of your item in the list below to "2: under development."
  2. Code your extension/app API according to the implementation guidelines.  Your implementation must be kept behind its own feature flag until it works and is secure.  See chrome/common/extensions/feature_switch.h.
  3. Write documentation for your API.
    1. After your docs are uploaded to codereview, you can preview how it looks at http://developer.chrome.com/_patch/<your CL number>/<your api>, for example http://developer.chrome.com/_patch/14990011/extensions/storage.html.
    2. After your docs CL lands, make sure it appears on the dev channel's API page for extensions and/or apps (depending on what your API is targeted for).
  4. After your implementation both works and is secure, you should enable your API on the dev channel as described in the implementation guidelines.
  5. Encourage usage of the API in the dev channel; the more adoption during dev, the easier your final approval will be.
  6. Remain restricted to the dev channel for a full release cycle (in most cases).
  7. After receiving and addressing feedback from a few major extensions or apps, proceed to the going live phase.
Going Live Phase
  1. Sign up for your second/final (going live phase) API Review Meeting to petition enabling your stable, well-tested API on all channels.
  2. Have your PM file a Type-Launch bug.  Your PM should usher the API through all of the launch reviews, including privacy and security.
  3. Update all sample extensions/apps for your API.
  4. Land a CL to enable the API for all channels, and change the Status of your item in the list below to "3: complete."
  5. Publicize the new API.  Write a post for the Chromium blog about the API.  Send an email to chromium-extensions@chromium.org or chromium-apps@chromium.org.  Talk to Joe Marini (joemarini@) or Mike West (mkwst@) for advice.

Showing 25 items
API NameContact (@chromium.org)Entry Last Modified (Today)StatusProposalDocs
Sort 
 
Sort 
 
Sort 
 
Sort 
 
Sort 
 
Sort 
 
Location vadimt February 14, 2013 1: proposing Proposal  
Eject Device gbillock  1: proposing Proposal  
Redirect URLs to apps sergeygs@  1: proposing Proposal  
Input Injection wez@, dcaiafa@ April 22, 2013 1: proposing Input Injection - New Chrome API Proposal Chrome Input Injection API 
Identity courage February 4, 2013 1: proposing Proposal  
Thumbnails for topSites oleg March 19, 2013 1: proposing Proposal  
Remote Attestation Reset API hctsai May 22, 2013 1: proposing Proposal  
Bluetooth keybuk  1: proposing update to existing dev-channel API API Changes Doc 
Managed Storage Schema joaodasilva  1: proposing Proposal  
TLS Channel ID juanlang@, mschilder@ (eng) samsrinivas@ (pm) March 27, 2013 1: proposing Proposal  
Synced Device Info pavely March 25, 2013 1: proposing Proposal  
Tab History mpcomplete@, ttr314@googlemail.com April 8, 2013 1: proposing Proposal  
System Indicator dewittj@ November 8, 2012 1: proposing Proposal  
Activity Log API felt April 24, 2013 2: under development Proposal  
Desktop Notification miket@ January 24, 2013 2: under development Proposal  
SystemInfo hongbo.min@intel.com July 16, 2012 2: under development Proposal  
Spellcheck rlp@ January 2, 2013 2: under development Proposal  
WebRTC Tab Content Capture mfoltz@ October 29, 2012 2: under development Proposal  
Profiles rlp@ January 2, 2013 2: under development Proposal  
Enterprise Key dkrahn@ March 22, 2013 2: under development Proposal  
Power Management derat April 30, 2013 3: complete Proposal http://developer.chrome.com/dev/extensions/power.html 
Process Model nasko@ February 24, 2012 x: inactive Proposal  
Record mpcomplete@ July 27, 2012 x: inactive Proposal  
Power Interface (old) rkc@ March 21, 2013 x: inactive Proposal Docs 
Auto-install of android companion extensions mwd743@ January 9, 2013 x: inactive Proposal  
Showing 25 items
Comments