title: Are there APIs for custom vibrations in iOS?
body: <p>Starting in iOS 5, users are able to create custom vibration patterns for alerts and rings. The following screenshot shows the UI for creating one (Contacts app in iOS 6):</p>
  
  <p><img src="https://i.stack.imgur.com/AyT26.png" width="320" height="480" alt="Screenshot of UI for creating custom vibrations in iOS 6"></p>
  
  <p>I've been searching around, including the documentation, and I cannot find any public APIs that expose the creation or playback of custom vibrations. The closest thing is to use the <code>AudioToolbox</code> framework to play a short, constant vibration:</p>
  
  <pre class="lang-c prettyprint-override"><code>AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
  </code></pre>
  
  <p><strong>Does anyone know if there are APIs for custom vibrations?</strong> It doesn't necessarily have to be public APIs. I'm curious to know what the Contacts app uses. Does anyone know?</p>
  
  <p><em>P.S. Others have suggested <code>_CTServerConnectionCreate</code> in <code>CoreTelephony</code> (<a href="https://stackoverflow.com/questions/265761/how-do-you-make-the-iphone-vibrate-for-arbitrary-durations">example</a>). I tried it, but couldn't get any vibration going for some reason.</em></p>
  
  <blockquote>
    <p><strong>October 2015 Update:</strong></p>
    
    <p>There are new private APIs in iOS 9 to interact with the Taptic Engine in compatible devices. See <a href="https://stackoverflow.com/questions/32526868/taptic-in-ios-9">Taptic in iOS 9</a> for more.</p>
  </blockquote>