Skip to main content
Returns the complete record for a single catalog item. By default this includes pricing, category data, and supplier information. Pass ExtendedDetails=true to also receive the full long description, technical specifications, linked PDF and video resources, and additional image URLs. When ItemType is Labor or CustomItem, the item is sourced from your account’s private library rather than the shared catalog.
The Catalog endpoints require separate authorization. Contact your Portal.io representative to confirm your account has catalog API access enabled.

Request

GET /public/catalog/{ItemId}

Headers

Accept
string
required
Must be application/json.
X-MSS-API-APPID
string
required
Your API Application Key.
X-MSS-API-USERKEY
string
required
Your User API Key.
X-MSS-CUSTOM-DATE
string
required
Current UTC timestamp in RFC 7231 format (e.g. Mon, 06 Apr 2026 00:22:19 GMT).
X-MSS-SIGNATURE
string
required
HMAC-SHA256 signature of the canonical request, Base64-encoded.

Path Parameters

ItemId
integer
required
Unique numeric identifier of the catalog item to retrieve.

Query Parameters

ExtendedDetails
boolean
When true, includes description, specs, pdfResourceLinks, videoResourceLinks, and additionalImageUrls in the response.
ItemType
string
Item type to look up. One of Part (default), Labor, or CustomItem. Labor and CustomItem items are returned from your account’s private library.

Response

200 Success

id
integer
Unique numeric identifier of the catalog item.
brand
string
Manufacturer or brand name.
model
string
Model number or name.
shortDescription
string
Brief description of the item.
description
string
Full long-form description. Only present when ExtendedDetails=true.
productUrl
string
URL to the item’s page in the Portal.io catalog.
manufacturerProductUrl
string
URL to the manufacturer’s product page, when available.
primaryImageUrl
string
URL of the item’s primary product image.
additionalImageUrls
array
Additional image URLs. Only present when ExtendedDetails=true.
parentCategoryId
integer
ID of the item’s parent (industry-level) category.
categoryId
integer
ID of the item’s direct category.
isFavorite
boolean
true if the item is marked as a favorite in your account.
isDiscontinued
boolean
true if the item has been discontinued.
msrp
object
MSRP pricing object containing msrpUsd, value, regularValue, isCustom, currency, lastModifiedDate, modifiedBy, and optional futurePrice.
suppliers
array
Array of supplier objects, each containing id, name, and a cost object with value, isPromo, isInStock, unitOfMeasure, discountPercentage, lastVerifiedDate, currency, and optional futurePrice. Only present when ExtendedDetails=true.
specs
array
Technical specification pairs. Each object contains name and value strings. Only present when ExtendedDetails=true.
Array of linked PDF documents, each with name and url. Only present when ExtendedDetails=true.
Array of linked video resources, each with name and url. Only present when ExtendedDetails=true.

Error Codes

CodeMeaning
204The requested item does not exist.
401Not authorized. Your HMAC signature was incorrect or credentials are invalid.
402An active Portal.io subscription is required to use this endpoint.
403Your user account does not have permission for this API call.
A 204 response (not 404) is returned when the ItemId does not match any catalog item. Check for this status code in your error handling logic.

Example

curl -i -X GET \
  'https://api.portal.io/public/catalog/8821?ExtendedDetails=true' \
  -H 'Accept: application/json' \
  -H 'X-MSS-API-APPID: YOUR_APP_ID' \
  -H 'X-MSS-API-USERKEY: YOUR_USER_KEY' \
  -H 'X-MSS-CUSTOM-DATE: Mon, 06 Apr 2026 00:22:19 GMT' \
  -H 'X-MSS-SIGNATURE: BASE64_SIGNATURE'
{
  "description": "The AVR-X3800H is a 9.4-channel, 105W AV receiver with 8K video support...",
  "productUrl": "https://portal.io/catalog/8821",
  "manufacturerProductUrl": "https://www.denon.com/avr-x3800h",
  "additionalImageUrls": [
    "https://images.portal.io/catalog/8821/angle.jpg"
  ],
  "pdfResourceLinks": [
    { "name": "Owner's Manual", "url": "https://docs.denon.com/avr-x3800h-manual.pdf" }
  ],
  "videoResourceLinks": [],
  "specs": [
    { "name": "Channels", "value": "9.4" },
    { "name": "Power Output", "value": "105W per channel" }
  ],
  "suppliers": [
    {
      "id": 5,
      "name": "D&H Distributing",
      "cost": {
        "value": 975.00,
        "isPromo": false,
        "isInStock": true,
        "unitOfMeasure": "Each",
        "discountPercentage": 0,
        "currency": { "code": "USD", "symbol": "$" },
        "lastVerifiedDate": "2026-04-01T00:00:00Z"
      }
    }
  ],
  "id": 8821,
  "brand": "Denon",
  "model": "AVR-X3800H",
  "shortDescription": "9.4-Channel 105W 8K AV Receiver",
  "primaryImageUrl": "https://images.portal.io/catalog/8821/primary.jpg",
  "parentCategoryId": 12,
  "categoryId": 47,
  "isFavorite": false,
  "isDiscontinued": false,
  "msrp": {
    "msrpUsd": 1299.00,
    "value": 1299.00,
    "regularValue": 1299.00,
    "isCustom": false,
    "currency": { "code": "USD", "symbol": "$" },
    "lastModifiedDate": "2026-01-15T00:00:00Z"
  }
}