API - Descripción general

API - Recursos e importaciones

Explora el catálogo de recursos, descarga manifiestos y archivos e importa proyectos.

Resumen de endpoints

MétodoEndpointDescripciónAcceso
GET/public-api/v1/assetsLista los elementos del catálogo de recursos del tipo solicitado.cualquier credencial autenticada
GET/public-api/v1/assets/:type/:assetIdDevuelve un manifiesto del recurso con las funciones de archivo descargables.cualquier credencial autenticada
GET/public-api/v1/assets/:type/:assetId/files/:roleDescarga un archivo de recurso según su función.cualquier credencial autenticada
GET/public-api/v1/design-importsLista los diseños importables alojados en Alter.credencial autenticada, se requiere plan Business
GET/public-api/v1/design-imports/:idDevuelve la carga útil de importación de un diseño y los descriptores de archivos.credencial autenticada, se requiere plan Business
GET/public-api/v1/design-imports/:id/files/:fileIdDescarga un archivo a partir del descriptor de importación de un diseño.credencial autenticada, se requiere plan Business

Catálogo de recursos

El catálogo de recursos ofrece recursos originales de productos, fondos, entornos, elementos de la biblioteca gráfica, plantillas de diseño y recursos de mockups. Los endpoints de listas devuelven descriptores ligeros; los de detalles incluyen manifiestos de archivos.

TipoDescripción
productsRecursos de productos base, vistas previas, modelos 3D y descriptores de materiales y texturas.
backgroundsFondos estáticos de Viewer.
environmentsMapas de entorno e imágenes de vista previa.
image_libraryRecursos de la biblioteca gráfica, incluidos gráficos específicos de la tienda.
design_templatesVistas previas de plantillas de diseño y referencias a archivos de capas. Admite el filtro product_id.
mockupsRecursos del generador de mockups, fondos y mapas de superposición. Admite el filtro product_id.

Ejemplo de solicitud (fetch)

const assets = await alterFetch('/assets?' + new URLSearchParams({
  type: 'products',
  limit: '20',
  offset: '0',
  search: 'mug'
}));

const details = await alterFetch('/assets/products/4');

const fileResponse = await fetch(
  'https://alterproduct.com/public-api/v1/assets/products/4/files/preview_medium',
  {
    headers: authHeaders
  }
);

const fileBlob = await fileResponse.blob();

Ejemplo de respuesta

{
  "type": "products",
  "items": [
    {
      "assetType": "products",
      "assetId": "4",
      "title": "Mug 450ml",
      "slug": "product-4",
      "description": "Base product 4",
      "primaryRole": "preview_big",
      "fileCount": 8,
      "remoteVersion": "1.0",
      "thumbnail": {
        "role": "preview_small",
        "fileName": "product-4-preview-small.png",
        "mime": "image/png",
        "downloadPath": "/v1/assets/products/4/files/preview_small"
      },
      "metadata": {
        "productCategoryId": 2,
        "productModelCount": 1,
        "isDedicated": false
      }
    }
  ],
  "total": 1,
  "limit": 20,
  "offset": 0
}

Importaciones de diseños

Las importaciones de diseños proporcionan diseños alojados en Alter y sus archivos para procesos externos de producción o migración. La API comprueba la elegibilidad del plan Business.

ParámetroObligatorioDetalles
searchnoBusca por título o ID del diseño.
offsetnoPredeterminado: 0.
limitnoPredeterminado: 20; máximo: 100.

Ejemplo de solicitud (fetch)

const imports = await alterFetch('/design-imports?' + new URLSearchParams({
  limit: '20',
  offset: '0',
  search: 'mug'
}));

const details = await alterFetch('/design-imports/381');

const fileId = details.files[0].id;
const fileResponse = await fetch(
  `https://alterproduct.com/public-api/v1/design-imports/381/files/${fileId}`,
  {
    headers: authHeaders
  }
);

const fileBlob = await fileResponse.blob();

Ejemplo de respuesta

{
  "eligible": true,
  "requiredPlan": "Business",
  "currentPlanName": "Business",
  "designs": [
    {
      "id": 381,
      "title": "Men's T-Shirt",
      "createdAt": "2026-01-03T23:55:05.000Z",
      "sourceStorefrontId": 12,
      "productId": 4,
      "productName": {
        "pl": "Koszulka",
        "en": "T-Shirt"
      },
      "storageMode": "alter",
      "runtimeStatus": {
        "designer": true,
        "viewer": true,
        "configurator": true,
        "customizer": true
      },
      "thumbnail": {
        "kind": "design-mockup",
        "fileId": "7df7...",
        "downloadPath": "/v1/design-imports/381/files/7df7..."
      }
    }
  ],
  "total": 1
}