Intuit RealmIds are changing from Integer to Long

NOTE: Updated: August 2015

Action Required: You must ensure your application can accommodate the new long RealmId format that will be in Production by June 2015 toward the end of calendar year 2015.

What is Happening: RealmIds are the numeric identifier that Intuit Identity Services use to identify a QuickBooks company record. The current format is a 10-digit Integer. At the current rate, we will run out of IDs in about two years in the Production environment. To address this, we are changing the RealmId type from Integer to Long (64-bit).

Note: The existing RealmIds will be unchanged. Only new RealmIds will get the Long type.


Benefits of the Long RealmId

  • Gives us a wider range for RealmIds, so we will not run out of IDs.
  • The new ID generation will include patterns that cannot be predicted easily, greatly improving security.

Modifying Your Code

Intuit has documented the RealmId as a string for 3rd-party developers. The underneath implementation will change from integer to long. Depending on how you define the RealmId, you might need to modify your code. You need to modify your code if any of these scenarios applies:

  • If you define RealmId as int or Integer, change it to long or Long, and ensure the validation for the long RealmIds.
  • If you define RealmId as String and validate the string, make sure the validation logic (checking the string length) accommodates the maximum string size as 19 (positive RealmIds only) instead of 10.
  • If you have a database table to store IDs, make sure it can hold 64-bit numbers.

If you have any questions, please ask!

Jarred Keneally
Intuit Developer Group






2 responses to “Intuit RealmIds are changing from Integer to Long”

  1. Prateek Bajpayee Avatar
    Prateek Bajpayee

    Are the users that are using QBO API in their production informed in case such a change is made ?
    Just concerned because we would be moving to production soon.

  2. Jarred Keneally Avatar
    Jarred Keneally

    Any breaking changes, outages, or maintenance notifications are sent to our developer via our status dashboard at status.developer.intuit.com. This is an interesting case and we have been reaching out via email and blog posts to inform our developers of this change. This field is always typed as a string in our documentation and because it is XML/Json so it should not cause issues for the service. It only affects how you store the field.

    Hope that helps

Leave a Reply

Your email address will not be published. Required fields are marked *