NationalSecurityAgency/datawave-query-service

Java

3

51 commits

updated Apr 23, 2025

See the code

README

Query Service

Apache License Build Status

The query service is a user-facing DATAWAVE microservice that serves as the main REST interface for DataWave query functionality.

Query Context

https://host:port/query/v1/

User API

Done?New?Admin?MethodOperationDescriptionPath ParamRequest BodyResponse Body
✓GET/listQueryLogicList QueryLogic types that are currently availableN/AN/A[QueryLogicResponse]
✓POST/{queryLogic}/defineDefine a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/createCreate a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/planGenerate a query plan using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/predictGenerate a query prediction using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/async/createCreate a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓PUT POST/{id}/resetResets the specified query[QueryId]N/A[VoidResponse]
[GenericResponse]
✓POST/{queryLogic}/createAndNextCreate a query using the specified query logic and params, and get the first page[QueryLogicName][QueryParameters][BaseQueryResponse]
✓POST/{queryLogic}/async/createAndNextCreate a query using the specified query logic and params, and get the first page[QueryLogicName][QueryParameters][BaseQueryResponse]
GET/lookupContentUUID/{uuidType}/{uuid}Returns content associated with the given UUID[UUIDType], [UUID]N/A[BaseQueryResponse] or [StreamingOutput]
POST/lookupContentUUIDReturns content associated with the given batch of UUIDsN/A[QueryParameters][BaseQueryResponse] or [StreamingOutput]
GET/lookupUUID/{uuidType}/{uuid}Returns event associated with the given batch of UUID[UUIDType], [UUID]N/A[BaseQueryResponse] or [StreamingOutput]
POST/lookupUUIDReturns event(s) associated with the given batch of UUIDsN/A[QueryParameters][BaseQueryResponse] or [StreamingOutput]
✓GET/{id}/planReturns the plan for the specified query[QueryId]N/A[GenericResponse]
✓GET/{id}/predictionsReturns the predictions for the specified query[QueryId]N/A[GenericResponse]
✓GET/{id}/async/nextReturns the next page of results for the specified query[QueryId]N/A[BaseQueryResponse]
✓GET/{id}/nextReturns the next page of results for the specified query[QueryId]N/A[BaseQueryResponse]
✓PUT POST/{id}/closeCloses the specified query[QueryId]N/A[VoidResponse]
✓✓PUT POST/{id}/adminCloseCloses the specified query[QueryId]N/A[VoidResponse]
✓✓✓PUT POST/adminCloseAllCloses all running queriesN/AN/A[VoidResponse]
✓PUT POST/{id}/cancelCancels the specified query[QueryId]N/A[VoidResponse]
✓✓PUT POST/{id}/adminCancelCancels the specified query[QueryId]N/A[VoidResponse]
✓✓✓PUT POST/adminCancelAllCancels all running queriesN/AN/A[VoidResponse]
✓GET/listAllReturns a list of queries associated with the current userN/AN/A[QueryImplListResponse]
✓GET/{id}Returns query info for the specified query[QueryId]N/A[QueryImplListResponse]
✓GET/listReturns a list of queries for this caller, filtering by the (optional) query id, and (optional) query nameN/A[QueryId], [QueryName][QueryImplListResponse]
✓✓✓GET/adminListReturns a list of queries, filtered by the (optional) user, (optional) query id, and (optional) query nameN/A[User], [QueryId], [QueryName][QueryImplListResponse]
✓DELETE/{id}/removeRemove (delete) the specified query[QueryId]N/A[VoidResponse]
✓✓✓DELETE/{id}/adminRemoveRemove (delete) the specified query[QueryId]N/A[VoidResponse]
✓✓✓DELETE/{id}/adminRemoveAllRemoves all queries which aren't runningN/AN/A[VoidResponse]
✓POST/{id}/duplicateDuplicates the specified query[QueryId][QueryParameters][GenericResponse]
✓PUT POST/{id}/updateUpdates the specified query[QueryId][QueryParameters][GenericResponse]
✓GET/{id}/listAllReturns a list of queries associated with the specified user[UserId]N/A[QueryImplListResponse]
✓POST/purgeQueryCachePurges the cache of query objectsN/AN/A[VoidResponse]
✓GET/enableTracingEnables tracing for queries which match the given criteriaN/A[QueryRegex], [User][VoidResponse]
✓GET/disableTracingDisables tracing for queries which match the given criteriaN/A[QueryRegex], [User][VoidResponse]
✓GET/disableAllTracingDisables tracing for all queriesN/AN/A[VoidResponse]
POST/{logicName}/executeCreate a query using the specified query logic and params, and stream the results[QueryLogicName][QueryParameters][StreamingOutput]
POST/{logicName}/async/executeCreate a query using the specified query logic and params, and stream the results[QueryLogicName][QueryParameters][StreamingOutput]

Getting Started

TBD

For now, refer to the Datawave Docker Compose Readme

NationalSecurityAgency/datawave-query-service

Java

3

51 commits

updated Apr 23, 2025

See the code

README

Query Service

Apache License Build Status

The query service is a user-facing DATAWAVE microservice that serves as the main REST interface for DataWave query functionality.

Query Context

https://host:port/query/v1/

User API

Done?New?Admin?MethodOperationDescriptionPath ParamRequest BodyResponse Body
✓GET/listQueryLogicList QueryLogic types that are currently availableN/AN/A[QueryLogicResponse]
✓POST/{queryLogic}/defineDefine a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/createCreate a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/planGenerate a query plan using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/predictGenerate a query prediction using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓POST/{queryLogic}/async/createCreate a query using the specified query logic and params[QueryLogicName][QueryParameters][GenericResponse]
✓PUT POST/{id}/resetResets the specified query[QueryId]N/A[VoidResponse]
[GenericResponse]
✓POST/{queryLogic}/createAndNextCreate a query using the specified query logic and params, and get the first page[QueryLogicName][QueryParameters][BaseQueryResponse]
✓POST/{queryLogic}/async/createAndNextCreate a query using the specified query logic and params, and get the first page[QueryLogicName][QueryParameters][BaseQueryResponse]
GET/lookupContentUUID/{uuidType}/{uuid}Returns content associated with the given UUID[UUIDType], [UUID]N/A[BaseQueryResponse] or [StreamingOutput]
POST/lookupContentUUIDReturns content associated with the given batch of UUIDsN/A[QueryParameters][BaseQueryResponse] or [StreamingOutput]
GET/lookupUUID/{uuidType}/{uuid}Returns event associated with the given batch of UUID[UUIDType], [UUID]N/A[BaseQueryResponse] or [StreamingOutput]
POST/lookupUUIDReturns event(s) associated with the given batch of UUIDsN/A[QueryParameters][BaseQueryResponse] or [StreamingOutput]
✓GET/{id}/planReturns the plan for the specified query[QueryId]N/A[GenericResponse]
✓GET/{id}/predictionsReturns the predictions for the specified query[QueryId]N/A[GenericResponse]
✓GET/{id}/async/nextReturns the next page of results for the specified query[QueryId]N/A[BaseQueryResponse]
✓GET/{id}/nextReturns the next page of results for the specified query[QueryId]N/A[BaseQueryResponse]
✓PUT POST/{id}/closeCloses the specified query[QueryId]N/A[VoidResponse]
✓✓PUT POST/{id}/adminCloseCloses the specified query[QueryId]N/A[VoidResponse]
✓✓✓PUT POST/adminCloseAllCloses all running queriesN/AN/A[VoidResponse]
✓PUT POST/{id}/cancelCancels the specified query[QueryId]N/A[VoidResponse]
✓✓PUT POST/{id}/adminCancelCancels the specified query[QueryId]N/A[VoidResponse]
✓✓✓PUT POST/adminCancelAllCancels all running queriesN/AN/A[VoidResponse]
✓GET/listAllReturns a list of queries associated with the current userN/AN/A[QueryImplListResponse]
✓GET/{id}Returns query info for the specified query[QueryId]N/A[QueryImplListResponse]
✓GET/listReturns a list of queries for this caller, filtering by the (optional) query id, and (optional) query nameN/A[QueryId], [QueryName][QueryImplListResponse]
✓✓✓GET/adminListReturns a list of queries, filtered by the (optional) user, (optional) query id, and (optional) query nameN/A[User], [QueryId], [QueryName][QueryImplListResponse]
✓DELETE/{id}/removeRemove (delete) the specified query[QueryId]N/A[VoidResponse]
✓✓✓DELETE/{id}/adminRemoveRemove (delete) the specified query[QueryId]N/A[VoidResponse]
✓✓✓DELETE/{id}/adminRemoveAllRemoves all queries which aren't runningN/AN/A[VoidResponse]
✓POST/{id}/duplicateDuplicates the specified query[QueryId][QueryParameters][GenericResponse]
✓PUT POST/{id}/updateUpdates the specified query[QueryId][QueryParameters][GenericResponse]
✓GET/{id}/listAllReturns a list of queries associated with the specified user[UserId]N/A[QueryImplListResponse]
✓POST/purgeQueryCachePurges the cache of query objectsN/AN/A[VoidResponse]
✓GET/enableTracingEnables tracing for queries which match the given criteriaN/A[QueryRegex], [User][VoidResponse]
✓GET/disableTracingDisables tracing for queries which match the given criteriaN/A[QueryRegex], [User][VoidResponse]
✓GET/disableAllTracingDisables tracing for all queriesN/AN/A[VoidResponse]
POST/{logicName}/executeCreate a query using the specified query logic and params, and stream the results[QueryLogicName][QueryParameters][StreamingOutput]
POST/{logicName}/async/executeCreate a query using the specified query logic and params, and stream the results[QueryLogicName][QueryParameters][StreamingOutput]

Getting Started

TBD

For now, refer to the Datawave Docker Compose Readme