Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/lucidworks:lucidworks-webapps-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Fusion Admin Webapps API
description: These APIs provide general administrative functions for your Fusion instance. Use these APIs to manage Fusion objects, App Studio objects, connections to Solr clusters, license files, job schedules, and more. You can also use them to create a history of service events.
termsOfService: https://lucidworks.com/legal/developer-license-agreement/
contact:
name: Lucidworks
url: www.lucidworks.com
email: support@lucidworks.com
license:
name: License of API
url: https://lucidworks.com/legal/developer-license-agreement/
version: '5.9'
servers:
- url: https://{FUSION HOST}/api
description: Fusion
variables:
FUSION HOST:
default: FUSION_HOST
description: Your environment host.
- url: https://{FUSION HOST}/api/apps/{APP_NAME}
description: Fusion app
variables:
FUSION HOST:
default: FUSION_HOST
description: Your environment host.
APP_NAME:
default: APP_NAME
description: The name of your Fusion application.
tags:
- name: Webapps
description: Deprecated.
paths:
/webapps/{id}/edits/{sessionId}/files/{file}:
get:
tags:
- Webapps
summary: Get a file
description: Access a file within an editing session.
operationId: getFile
parameters:
- name: id
in: path
description: The webapp ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
- name: file
in: path
description: File.
required: true
schema:
pattern: .*
type: string
responses:
'200':
description: successful operation
content: {}
x-hidden: true
put:
tags:
- Webapps
summary: Update a file
description: Update a file within an editing session.
operationId: putFile
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
- name: file
in: path
description: File.
required: true
schema:
pattern: .*
type: string
- name: If-Match
in: header
description: If-Match value.
schema:
type: string
default: '0'
requestBody:
description: File contents.
content:
'*/*':
schema:
$ref: '#/components/schemas/InputStream'
required: false
responses:
'200':
description: successful operation
content: {}
x-codegen-request-body-name: body
x-hidden: true
delete:
tags:
- Webapps
summary: Delete a file
description: Delete a file within an editing session.
operationId: deleteFile
parameters:
- name: id
in: path
description: The webapp ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
- name: file
in: path
description: File.
required: true
schema:
pattern: .*
type: string
- name: If-Match
in: header
description: If-Match value.
schema:
type: string
default: '0'
responses:
'200':
description: successful operation
content: {}
x-hidden: true
/webapps/{id}/edits/{sessionId}:
get:
tags:
- Webapps
summary: Get an editing session
description: Get editing session.
operationId: getSession
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/EditingSession'
x-hidden: true
delete:
tags:
- Webapps
summary: Delete an editing session
description: Delete an editing session.
operationId: deleteSession
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content: {}
x-hidden: true
/webapps/{id}/edits/{sessionId}/action:
post:
tags:
- Webapps
summary: Perform an action
description: Perform an action on an editing session.
operationId: action
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
requestBody:
description: JSON-formatted configuration values.
content:
application/json:
schema:
$ref: '#/components/schemas/SessionAction'
required: false
responses:
'200':
description: successful operation
content: {}
x-codegen-request-body-name: body
x-hidden: true
/webapps/{id}/edits:
get:
tags:
- Webapps
summary: List all editing sessions
description: List editing sessions.
operationId: listSessions
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/EditingSession'
x-hidden: true
post:
tags:
- Webapps
summary: Start an editing session
description: Start an editing session.
operationId: startSession
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
requestBody:
description: JSON-formatted configuration values.
content:
application/json:
schema:
$ref: '#/components/schemas/EditingSession'
required: false
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/EditingSession'
x-codegen-request-body-name: body
x-hidden: true
/webapps/{id}:
get:
tags:
- Webapps
summary: Get a webapp
description: Get the specified webapp.
operationId: getEntity_1
parameters:
- name: id
in: path
description: The webapp ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Entity'
x-hidden: true
delete:
tags:
- Webapps
summary: Delete a webapp
description: Delete a webapp.
operationId: deleteEntityWithBody_1
parameters:
- name: id
in: path
description: The webapp ID.
required: true
schema:
type: string
- name: If-Match
in: header
description: An optional tag to match.
schema:
type: string
default: '-1'
requestBody:
description: For supplying additional request parameters (such as relatedObjectIds) via request body instead of as request parameters. Use this if the URL is getting too long.
content:
application/json:
schema:
$ref: '#/components/schemas/BodyRequestParams'
required: false
responses:
'200':
description: successful operation
content: {}
x-codegen-request-body-name: body
x-hidden: true
/webapps:
get:
tags:
- Webapps
summary: List all webapps
description: Get all entities.
operationId: getAllEntities_1
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Entity'
x-hidden: true
post:
tags:
- Webapps
summary: Import webapp metadata
description: Import Application metadata including all editing sessions.
operationId: importApp
requestBody:
description: Application metadata.
content:
application/vnd.lucidworks-appkit-export+json:
schema:
$ref: '#/components/schemas/AppkitAppExportContainer'
required: false
responses:
'200':
description: successful operation
content: {}
x-codegen-request-body-name: body
x-hidden: true
/webapps/{id}/edits/{sessionId}/files:
get:
tags:
- Webapps
summary: List all files
description: List all files within an editing session.
operationId: listFiles
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
- name: sessionId
in: path
description: Session ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Blob'
x-hidden: true
/webapps/{id}/war:
get:
tags:
- Webapps
summary: Download a .war file
description: Download a .war file for an app.
operationId: downloadWar
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content: {}
x-hidden: true
put:
tags:
- Webapps
summary: Upload a .war file
description: Upload a war file for an app.
operationId: uploadWar
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
requestBody:
description: War file.
content:
'*/*':
schema:
$ref: '#/components/schemas/InputStream'
required: false
responses:
'200':
description: successful operation
content: {}
x-codegen-request-body-name: body
x-hidden: true
head:
tags:
- Webapps
summary: Get .war file metadata
description: Get metadata (modifiedTime, md5, etc) of war file as HTTP headers.
operationId: getWarMetadata
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content: {}
x-hidden: true
/webapps/{id}/war/manifest:
get:
tags:
- Webapps
summary: Get MANIFEST.MF
description: Get the MANIFEST.MF of war file.
operationId: getWarManifestAsText
parameters:
- name: id
in: path
description: Application ID.
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
text/plain:
schema:
type: string
x-hidden: true
/webapps/_schema:
get:
tags:
- Webapps
summary: Get the webapps schema
description: Get JSON schema for objects managed by this API.
operationId: getEntitySchema_1
responses:
'200':
description: successful operation
content:
application/schema+json; qs=1.0:
schema:
$ref: '#/components/schemas/ObjectType'
application/json; qs=0.9:
schema:
$ref: '#/components/schemas/ObjectType'
x-hidden: true
/webapps/status:
get:
tags:
- Webapps
summary: Get the service status
description: Get the status of the service.
operationId: getStatus_1
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceStatus'
x-hidden: true
components:
schemas:
AppkitApp:
type: object
properties:
id:
type: string
readOnly: true
name:
type: string
readOnly: true
description:
type: string
readOnly: true
contextPath:
type: string
readOnly: true
enabled:
type: boolean
readOnly: true
type:
type: string
war:
type: string
readOnly: true
warMd5:
type: string
readOnly: true
warSize:
type: integer
format: int64
readOnly: true
PropertyGroup:
type: object
properties:
label:
type: string
readOnly: true
properties:
type: array
readOnly: true
items:
type: string
ServiceStatus:
type: object
properties:
status:
type: string
enum:
- starting
- ok
- warning
- error
- shutdown
node:
type: string
readOnly: true
messages:
type: array
readOnly: true
items:
$ref: '#/components/schemas/StatusMessage'
StatusMessage:
type: object
properties:
date:
type: string
format: date-time
readOnly: true
message:
type: string
readOnly: true
EditingSession:
type: object
properties:
id:
type: string
readOnly: true
owner:
type: string
readOnly: true
createdAt:
type: string
format: date-time
readOnly: true
version:
type: string
InputStream:
type: object
ObjectType:
type: object
properties:
type:
type: string
readOnly: true
enum:
- String
- Number
- Integer
- Boolean
- Object
- Array
- 'Null'
- Ref
title:
type: string
readOnly: true
description:
type: string
readOnly: true
required:
uniqueItems: true
type: array
readOnly: true
items:
type: string
properties:
type: object
additionalProperties:
$ref: '#/components/schemas/AnyType'
readOnly: true
additionalProperties:
type: object
properties: {}
readOnly: true
minProperties:
type: integer
format: int32
readOnly: true
maxProperties:
type: integer
format: int32
readOnly: true
definitions:
type: object
additionalProperties:
$ref: '#/components/schemas/AnyType'
readOnly: true
category:
type: string
readOnly: true
categoryPriority:
type: integer
format: int32
readOnly: true
enum:
uniqueItems: true
type: array
readOnly: true
items:
type: object
properties: {}
hints:
uniqueItems: true
type: array
readOnly: true
items:
type: string
unsafe:
type: boolean
readOnly: true
default:
type: object
properties: {}
readOnly: true
oneOf:
type: array
readOnly: true
items:
$ref: '#/components/schemas/AnyTypeObjectObject'
propertyGroups:
type: array
readOnly: true
items:
$ref: '#/components/schemas/PropertyGroup'
SessionAction:
type: object
properties:
type:
type: string
readOnly: true
discriminator:
propertyName: type
AnyTypeObjectObject:
type: object
properties:
type:
type: string
readOnly: true
enum:
- String
- Number
- Integer
- Boolean
- Object
- Array
- 'Null'
- Ref
title:
type: string
readOnly: true
description:
type: string
readOnly: true
enum:
uniqueItems: true
type: array
readOnly: true
items:
type: object
properties: {}
default:
type: object
properties: {}
readOnly: true
category:
type: string
readOnly: true
categoryPriority:
type: integer
format: int32
readOnly: true
hints:
uniqueItems: true
type: array
readOnly: true
items:
type: string
unsafe:
type: boolean
readOnly: true
oneOf:
type: array
readOnly: true
items:
$ref: '#/components/schemas/AnyTypeObjectObject'
BodyRequestParam:
type: object
properties:
name:
type: string
readOnly: true
values:
type: array
readOnly: true
items:
type: string
Entity:
type: object
properties:
id:
type: string
BodyRequestParams:
type: object
properties:
params:
type: array
readOnly: true
items:
$ref: '#/components/schemas/BodyRequestParam'
Blob:
type: object
properties:
id:
type: string
readOnly: true
path:
type: string
readOnly: true
dir:
type: string
readOnly: true
filename:
type: string
readOnly: true
contentType:
type: string
readOnly: true
size:
type: integer
format: int64
readOnly: true
modifiedTime:
type: string
format: date-time
readOnly: true
version:
type: integer
format: int64
readOnly: true
md5:
type: string
readOnly: true
metadata:
type: object
additionalProperties:
type: string
readOnly: true
AnyType:
type: object
properties:
type:
type: string
readOnly: true
enum:
- String
- Number
- Integer
- Boolean
- Object
- Array
- 'Null'
- Ref
title:
type: string
readOnly: true
description:
type: string
readOnly: true
enum:
uniqueItems: true
type: array
readOnly: true
items:
type: object
properties: {}
default:
type: object
properties: {}
readOnly: true
category:
type: string
readOnly: true
categoryPriority:
type: integer
format: int32
readOnly: true
hints:
uniqueItems: true
type: array
readOnly: true
items:
type: string
unsafe:
type: boolean
readOnly: true
oneOf:
type: array
readOnly: true
items:
$ref: '#/components/schemas/AnyTypeObjectObject'
AppkitAppExportContainer:
type: object
properties:
appkitApp:
$ref: '#/components/schemas/AppkitApp'
editingSessions:
type: array
readOnly: true
items:
$ref: '#/components/schemas/EditingSession'
securitySchemes:
Basic_auth:
type: http
scheme: basic
API_key:
name: x-api-key
type: apiKey
in: header
x-original-swagger-version: '2.0'
x-provenance:
method: harvested
publisher: Lucidworks
source: https://doc.lucidworks.com/api-reference/5.9/fusion-api-swagger.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)