OpenVibe.Inventory API
Generated at from
openvibe-contracts v0.127.0 and
openvibe-sdk v0.37.0.
Server https://inventory.openvibe.network. 15 routes performing 7 capabilities. OpenAPI 3.1 document.
GET /api/v1/definitions
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>POST /api/v1/definitions
Create, edit, submit and retire definitions in the caller's namespace (POST /api/v1/definitions, PATCH /api/v1/definitions/:id with inventory.definition-request@1 → inventory.definition@1).
- Capabilities
- inventory.definition.manage
- Visibility
- first-party
- Request body
application/jsoninventory.definition-request@1- Response
application/jsoninventory.definition@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.definition.manage</strong> (first-party): Create, edit, submit and retire definitions in the caller's namespace (POST /api/v1/definitions, PATCH /api/v1/definitions/:id with inventory.definition-request@1 → inventory.definition@1). A creator's definition goes to review; a service's or app's is published when it asks.</p>GET /api/v1/definitions/{id}
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Parameters
id(path, required)
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>PATCH /api/v1/definitions/{id}
Create, edit, submit and retire definitions in the caller's namespace (POST /api/v1/definitions, PATCH /api/v1/definitions/:id with inventory.definition-request@1 → inventory.definition@1).
- Capabilities
- inventory.definition.manage
- Visibility
- first-party
- Parameters
id(path, required)
- Request body
application/jsoninventory.definition-request@1- Response
application/jsoninventory.definition@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.definition.manage</strong> (first-party): Create, edit, submit and retire definitions in the caller's namespace (POST /api/v1/definitions, PATCH /api/v1/definitions/:id with inventory.definition-request@1 → inventory.definition@1). A creator's definition goes to review; a service's or app's is published when it asks.</p>POST /api/v1/definitions/{id}/review
Staff publish or reject a submitted Workshop definition (POST /api/v1/definitions/:id/review with { decision: publish | reject, reason, rarity?
- Capabilities
- inventory.definition.review
- Visibility
- internal
- Parameters
id(path, required)
- Request body
application/jsoninventory.review-request@1- Response
application/jsoninventory.definition@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.definition.review</strong> (internal): Staff publish or reject a submitted Workshop definition (POST /api/v1/definitions/:id/review with { decision: publish | reject, reason, rarity? } → inventory.definition@1), checking safety, art rights and an honest rarity (ADR-054 §6). Persons with the staff role only.</p>GET /api/v1/equipped
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>POST /api/v1/grants
Grant an instance of a definition the caller issued (POST /api/v1/grants with inventory.grant-request@1 → inventory.instance@1; Idempotency by idempotency_key).
- Capabilities
- inventory.item.grant
- Visibility
- first-party
- Request body
application/jsoninventory.grant-request@1- Response
application/jsoninventory.instance@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.grant</strong> (first-party): Grant an instance of a definition the caller issued (POST /api/v1/grants with inventory.grant-request@1 → inventory.instance@1; Idempotency by idempotency_key). Outside the issuer's namespace: 403 inventory.not_issuer. Sold out: 409 inventory.supply_exhausted. Never for money (ADR-054 §5).</p>POST /api/v1/instances/{id}/consume
Consume or revoke an instance of a definition the caller issued (POST /api/v1/instances/:id/consume | /revoke → inventory.instance@1).
- Capabilities
- inventory.item.consume
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsoninventory.instance@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.consume</strong> (first-party): Consume or revoke an instance of a definition the caller issued (POST /api/v1/instances/:id/consume | /revoke → inventory.instance@1).</p>POST /api/v1/instances/{id}/revoke
Consume or revoke an instance of a definition the caller issued (POST /api/v1/instances/:id/consume | /revoke → inventory.instance@1).
- Capabilities
- inventory.item.consume
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsoninventory.instance@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.consume</strong> (first-party): Consume or revoke an instance of a definition the caller issued (POST /api/v1/instances/:id/consume | /revoke → inventory.instance@1).</p>GET /api/v1/kinds
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>GET /api/v1/kinds/{id}
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Parameters
id(path, required)
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>PUT /api/v1/me/equipped
Equip or clear a slot with an instance the person owns (PUT /api/v1/me/equipped with inventory.equip-request@1 → inventory.equipped@1).
- Capabilities
- inventory.equip.manage
- Visibility
- public
- Request body
application/jsoninventory.equip-request@1- Response
application/jsoninventory.equipped@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.equip.manage</strong> (public): Equip or clear a slot with an instance the person owns (PUT /api/v1/me/equipped with inventory.equip-request@1 → inventory.equipped@1). One item per slot. Refuses an instance not owned or not in state owned (409 inventory.not_owned).</p>GET /api/v1/me/items
The person's own full inventory, consumed and revoked instances included (GET /api/v1/me/items → inventory.inventory@1).
- Capabilities
- inventory.item.list
- Visibility
- public
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.list</strong> (public): The person's own full inventory, consumed and revoked instances included (GET /api/v1/me/items → inventory.inventory@1). A service may read it acting for the person (on_behalf_of).</p>GET /api/v1/people/{subject}/equipped
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Parameters
subject(path, required)
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>inventory.item.read</strong> (public): Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /api/v1/equipped?subjects=… up to 100 → inventory.equipped-batch@1), definitions and kinds.</p>GET /api/v1/people/{subject}/items
Read a person's public inventory (GET /api/v1/people/:subject/items → inventory.inventory@1: owned instances of published definitions), their equipped set (GET /api/v1/people/:subject/equipped, GET /a
- Capabilities
- inventory.item.read
- Visibility
- public
- Parameters
subject(path, required)
- Response
application/jsoninventory.inventory@1- Errors
- errors.problem@1 (application/problem+json)