catalog-svc

Escanear e indexar un fichero

Pide los facts del fichero al motor de medios del daemon (qry.media.probe sobre una raíz de STYX_MEDIA_ROOTS, nunca una ruta absoluta), crea o actualiza el asset y su MediaIndex y publica evt.catalog.assetIndexed. Un fichero que el motor dice que no es un medio entra como asset `unidentified` (indexed=false, sin índice) en vez de rechazarse. Gasta un presupuesto propio por actor (5/s, ráfaga 20) además del del servicio. Acceso: Bearer de identity con policy `resource:asset:scan`.

POST
/scan

Pide los facts del fichero al motor de medios del daemon (qry.media.probe sobre una raíz de STYX_MEDIA_ROOTS, nunca una ruta absoluta), crea o actualiza el asset y su MediaIndex y publica evt.catalog.assetIndexed. Un fichero que el motor dice que no es un medio entra como asset unidentified (indexed=false, sin índice) en vez de rechazarse. Gasta un presupuesto propio por actor (5/s, ráfaga 20) además del del servicio.

Acceso: Bearer de identity con policy resource:asset:scan.

Authorization

bearerAuth
AuthorizationBearer <token>

Access token de identity-svc (JWT EdDSA, caducidad corta). Se verifica en local y después contra la sesión viva (revocation-aware).

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

editionId?string
path*string
Length1 <= length
workId?string

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X POST "https://example.com/scan" \  -H "Content-Type: application/json" \  -d '{    "path": "string"  }'
{  "asset": {    "container": "string",    "createdAt": 0,    "editionId": "string",    "fastHash": "string",    "id": "string",    "identification": "identified",    "kind": "logical-composition",    "layout": "file",    "path": "string",    "sizeBytes": 0,    "updatedAt": 0  },  "index": {    "assetId": "string",    "bitrateBps": 0,    "capabilities": [      "string"    ],    "container": "string",    "createdAt": 0,    "durationMs": 0,    "id": "string",    "indexVersion": 0,    "keyframesMs": [      0    ],    "streams": [      {        "bitRateBps": 0,        "channels": 0,        "codec": "string",        "defaultFlag": true,        "frameRate": 0,        "height": 0,        "index": 0,        "language": "string",        "sampleRate": 0,        "type": "video",        "width": 0      }    ]  },  "indexed": true}