<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://osimdev.org/wiki/index.php?action=history&amp;feed=atom&amp;title=OpenSimulator_Internals%2FInventoryService</id>
	<title>OpenSimulator Internals/InventoryService - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://osimdev.org/wiki/index.php?action=history&amp;feed=atom&amp;title=OpenSimulator_Internals%2FInventoryService"/>
	<link rel="alternate" type="text/html" href="http://osimdev.org/wiki/index.php?title=OpenSimulator_Internals/InventoryService&amp;action=history"/>
	<updated>2026-08-04T15:31:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>http://osimdev.org/wiki/index.php?title=OpenSimulator_Internals/InventoryService&amp;diff=14&amp;oldid=prev</id>
		<title>Jwbshaw: first</title>
		<link rel="alternate" type="text/html" href="http://osimdev.org/wiki/index.php?title=OpenSimulator_Internals/InventoryService&amp;diff=14&amp;oldid=prev"/>
		<updated>2026-06-21T06:58:10Z</updated>

		<summary type="html">&lt;p&gt;first&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= OpenSimulator Internals/InventoryService =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
InventoryService manages user inventory. Folder tree and item references. Permissions live here, not in the asset table.&lt;br /&gt;
&lt;br /&gt;
This service is stateless and can be load-balanced across multiple ROBUST instances.&lt;br /&gt;
&lt;br /&gt;
Unlike [[OpenSimulator Internals/AssetService|AssetService]], the xinventory service is an RPC interface exposing a single URI (e.g. http://localhost:8003/xinventory). Different operations (add item, get item, etc.) are controlled via a METHOD parameter.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Inventory Item ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| ID || UUID || UUID of the item&lt;br /&gt;
|-&lt;br /&gt;
| Name || string ||&lt;br /&gt;
|-&lt;br /&gt;
| Description || string || May be blank&lt;br /&gt;
|-&lt;br /&gt;
| AssetID || UUID || UUID of the underlying asset&lt;br /&gt;
|-&lt;br /&gt;
| AssetType || int || See AssetType enum in libopenmetaverse&lt;br /&gt;
|-&lt;br /&gt;
| InvType || int || See InventoryType enum in libopenmetaverse. May differ from AssetType.&lt;br /&gt;
|-&lt;br /&gt;
| Folder || UUID || UUID of the containing folder&lt;br /&gt;
|-&lt;br /&gt;
| Owner || UUID || UUID of the owner&lt;br /&gt;
|-&lt;br /&gt;
| CreatorId || UUID || UUID of the creator&lt;br /&gt;
|-&lt;br /&gt;
| CreatorData || string || Extended creator data, used by --creators option in &amp;quot;save iar&amp;quot;. May be blank.&lt;br /&gt;
|-&lt;br /&gt;
| CreationDate || int || Unix timestamp&lt;br /&gt;
|-&lt;br /&gt;
| BasePermissions || int || See PermissionMask flags enum in libopenmetaverse&lt;br /&gt;
|-&lt;br /&gt;
| CurrentPermissions || int || Permissions the current owner has when rezzed&lt;br /&gt;
|-&lt;br /&gt;
| NextPermissions || int || Permissions granted to next owner&lt;br /&gt;
|-&lt;br /&gt;
| EveryOnePermissions || int || Permissions anyone has when rezzed&lt;br /&gt;
|-&lt;br /&gt;
| GroupPermissions || int || Group permissions, if applicable&lt;br /&gt;
|-&lt;br /&gt;
| GroupID || UUID || UUID of group owner. UUID.Zero if none.&lt;br /&gt;
|-&lt;br /&gt;
| GroupOwned || bool || True if group owned&lt;br /&gt;
|-&lt;br /&gt;
| Flags || int || For wearables, encodes WearableType enum (see libopenmetaverse). Other uses need documentation.&lt;br /&gt;
|-&lt;br /&gt;
| SalePrice || int ||&lt;br /&gt;
|-&lt;br /&gt;
| SaleType || int || See SaleType enum in libopenmetaverse&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Permissions live here, not in the asset table. The same underlying asset UUID can exist in multiple inventories with different permissions on each copy.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Inventory Folder ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| ID || UUID || UUID of the folder&lt;br /&gt;
|-&lt;br /&gt;
| Name || string ||&lt;br /&gt;
|-&lt;br /&gt;
| Owner || UUID || UUID of the owning avatar&lt;br /&gt;
|-&lt;br /&gt;
| ParentID || UUID || Parent folder UUID. UUID.Zero for root (&amp;quot;My Inventory&amp;quot;) folder.&lt;br /&gt;
|-&lt;br /&gt;
| Type || int || See InventoryType enum in libopenmetaverse. Root folder type = 9 (RootCategory).&lt;br /&gt;
|-&lt;br /&gt;
| Version || int || Version counter for viewer inventory caching&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note: where multiple folders are returned, the folder element may have an underscore and index appended (e.g. folder_0). Historical reasons.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
&lt;br /&gt;
See [[OpenSimulator Internals/Data Dictionaries#inventoryitems|inventoryitems]] and [[OpenSimulator Internals/Data Dictionaries#inventoryfolders|inventoryfolders]] tables for the full database schema.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[OpenSimulator Internals/ROBUST Services]]&lt;br /&gt;
* [[OpenSimulator Internals/AssetService]]&lt;br /&gt;
* [[OpenSimulator Internals/Data Dictionaries]]&lt;/div&gt;</summary>
		<author><name>Jwbshaw</name></author>
	</entry>
</feed>