Skills Market
Marketplace de habilidades donde los clientes pueden publicar y compartir habilidades de extracción.
GET /api/skills-market/
Lista todas las habilidades disponibles en el marketplace.
/api/skills-market/Headers
Authorization: Bearer JWT_TOKEN Ejemplos
curl -X GET https://api-docmind.devol.es/api/skills-market/ \
-H "Authorization: Bearer JWT_TOKEN" Respuesta
{
"skills": [
{"id": "market-uuid", "nombre": "Factura Genérica", "descripcion": "Extrae datos comunes de facturas", "autor": "Docmind", "descargas": 150}
]
}Lista de skills publicadas en el marketplace.
Errores
401UnauthorizedToken inválido.
{"msg": "Token inválido"}POST /api/skills-market/publish
Publica una habilidad del cliente en el marketplace para que otros clientes puedan usarla.
/api/skills-market/publishHeaders
Content-Type: application/json
Authorization: Bearer JWT_TOKEN Body (JSON)
{"habilidad_id": "uuid-habilidad", "descripcion": "Descripción para el marketplace"} habilidad_id: (obligatorio) ID de la habilidad a publicar.descripcion: (opcional) Descripción pública.
Ejemplos
curl -X POST https://api-docmind.devol.es/api/skills-market/publish \
-H "Content-Type: application/json" -H "Authorization: Bearer JWT_TOKEN" \
-d '{"habilidad_id": "uuid", "descripcion": "Extrae datos de facturas"}' Respuesta
{"message": "Habilidad publicada en el marketplace", "market_id": "market-uuid"}La habilidad queda visible para todos los clientes del marketplace.
Errores
404Not FoundHabilidad no encontrada.
{"error": "Habilidad no encontrada"}409ConflictYa está publicada.
{"error": "Esta habilidad ya está publicada"}POST /api/skills-market/add
Agrega una habilidad del marketplace a tu cliente (la copia a tu organización).
/api/skills-market/addHeaders
Content-Type: application/json
Authorization: Bearer JWT_TOKEN Body (JSON)
{"market_id": "market-uuid"} market_id: (obligatorio) ID de la skill en el marketplace.
Ejemplos
curl -X POST https://api-docmind.devol.es/api/skills-market/add \
-H "Content-Type: application/json" -H "Authorization: Bearer JWT_TOKEN" \
-d '{"market_id": "market-uuid"}' Respuesta
{"message": "Habilidad agregada a tu organización", "habilidad_id": "nueva-uuid"}Se crea una copia de la habilidad en tu organización.
Errores
404Not FoundSkill no encontrada en el marketplace.
{"error": "Skill no encontrada en el marketplace"}DELETE /api/skills-market/delete/{market_id}
Elimina una habilidad del marketplace (solo el publicador o global_admin).
/api/skills-market/delete/{market_id}Headers
Authorization: Bearer JWT_TOKEN Ejemplos
curl -X DELETE https://api-docmind.devol.es/api/skills-market/delete/MARKET_ID \
-H "Authorization: Bearer JWT_TOKEN" Respuesta
{"message": "Skill eliminada del marketplace"}La skill se retira del marketplace. Las copias existentes en clientes no se eliminan.
Errores
403ForbiddenSin permisos para eliminar.
{"error": "No tienes permisos para eliminar esta skill"}404Not FoundSkill no encontrada.
{"error": "Skill no encontrada"}POST /api/skills-market/create
Crea una skill directamente en el marketplace (solo global_admin).
/api/skills-market/createHeaders
Content-Type: application/json
Authorization: Bearer JWT_TOKEN Body (JSON)
{
"nombre": "Factura Universal",
"descripcion": "Habilidad genérica para facturas",
"campos": [{"nombre": "total", "tipo": "float", "descripcion": "Monto total"}]
} nombre: (obligatorio) Nombre de la skill.descripcion: (opcional) Descripción.campos: (obligatorio) Campos de la habilidad.
Ejemplos
curl -X POST https://api-docmind.devol.es/api/skills-market/create \
-H "Content-Type: application/json" -H "Authorization: Bearer JWT_TOKEN" \
-d '{"nombre": "Factura Universal", "campos": [{"nombre": "total", "tipo": "float"}]}' Respuesta
{"message": "Skill creada en el marketplace", "market_id": "new-market-uuid"}La skill se crea directamente en el marketplace sin necesidad de publicar una existente.
Errores
400Bad RequestDatos inválidos.
{"error": "Datos inválidos"}403ForbiddenRequiere global_admin.
{"error": "Se requiere rol de administrador global"}