Page Properties | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||
Status |
| |||||||||||||||||||||
Priority | 1 | Note | ||||||||||||||||||||
Assignee | Max, Inga | |||||||||||||||||||||
Excerpt | ||||||||||||||||||||||
| ||||||||||||||||||||||
Resources & Remarks Modification History
|
Excerpt |
---|
Graphical overviews describing the interaction of the yuuvis® Momentum core services in exemplary basic use case flows. |
Section | ||||||
---|---|---|---|---|---|---|
| ||||||
|
Introduction
By chunking up the system into microservices it can be tough to keep the overview of all available services, their relationships and dependencies to each other. The following graphical overview of our microservice architecture offers you a first entry point into the yuuvis® Momentum landscape. By providing further and more detailed examples based on special use cases (flows) you'll get a better and easy way of understanding our entire landscape.
Graphical Overview
For visualizing the topology of our microservices the following overview shows - on a higher level - many of our core microservices.
For understanding various flows - on a more granular level - check out the detailed diagrams visualizing special use case.
Anchor | ||||
---|---|---|---|---|
|
Login to the Core API - Authentication (Browser / Application)
To interact with yuuvis® it is necessary to log in with a user account. The user accounts are managed by at least one external identity provider.
Note |
---|
The authentication flow is always part of all described flows. It is used to get a valid authentication token for further processing. |
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
Include Page | ||||
---|---|---|---|---|
|
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
Include Page | ||||
---|---|---|---|---|
|
Note |
---|
The authentication flow is always part of all described flows. It is used to get a valid authentication token for further processing. |
To interact with yuuvis® Momentum, it is necessary to log in with a user account. The user accounts are managed by at least one external identity provider.
>> Concept: Authentication against the Core API
>> Example Tutorial: Login to the Core API (Java)
Anchor | ||||
---|---|---|---|---|
|
Importing Documents
Expand | ||||||
---|---|---|---|---|---|---|
| ||||||
|
Documents can be imported into a yuuvis® Momentum system using the provided core API's HTTP requests for importing documents (POST /api/dms/objects).
...
title | Click here to show the import flow >> |
---|
...
...
1. - HTTP Post request containing metadata and content
2. - enrichment of request with authentication token
3. - defer content to storage services
3.1 - analyze content file
3.2 - skip content analyzer
4. - content storage handling
4.1 - using custom storage via archive service
4.2 - using s3 interface of repository
5. - create metadata based on previous steps
6. - write metadata to storage / index instances
7. - index new object in ES
8. - create initial audit entry
9. - create API response from metadata
10. - return metadata as HTTP response
During asynchronous import operations, the controller service provides messaging for the boxed in services
Webhook entry points
*1 - dms.request.import.storage.before
*2 - dms.response.objects
>> Example Tutorial: Importing Documents via Core API
Anchor | ||||
---|---|---|---|---|
|
Retrieval of Content by ID / Older Version
...
Expand | ||||
---|---|---|---|---|
| ||||
1. - HTTP get request to object URL 2. - Enrichment of request with authentication Token 3. - Check for User Authorization using search service query 4. - Query elastic search for object ID 5. - Elasticsearch metadata reponse (if user is authorized) 6. - Repository url of objectId 7. - Request content of objectID 8. - Query objectId in Storage Provider 9. - Storage Provider metadata response 10. - Return metadata object metadata 11. - Write CONTENT_ACCESSED audit entry 12. - Create API response from metadata 13. - Return HTTP metadata response Webhook entry points *1 - dms.response.objects |
Include Page | ||||
---|---|---|---|---|
|
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
Include Page | ||||
---|---|---|---|---|
|
The content of already imported documents into the yuuvis® Momentum system can be retrieved using the provided core API's HTTP requests for retrieving content files (GET /api/dms/objects/{objectId}/contents/file). If a specific version of the document's content is to be requested, the endpoint to be called changes and includes the specific version (GET /api/dms/objects/{objectId}/versions/{versionNr}/contents/file).
>> Example Tutorial: Retrieving Documents via Core API
Anchor | ||||
---|---|---|---|---|
|
Retrieval of Metadata by ID / Older Version
...
xxx
Expand | ||||
---|---|---|---|---|
| ||||
1. - HTTP get request to object URL 2. - Enrichment of request with authentication Token 3. - Request metadata 4. - Query 5. - DB metadata response 6. - Write METADATA_ACCESSED audit entry 7. - Return metadata object metadata 8. - Create API response from metadata 9. - Return HTTP metadata response Webhook entry points *1 - dms.response.objects |
Include Page | ||||
---|---|---|---|---|
|
Expand | ||
---|---|---|
| ||
1. - HTTP get request to object URL 2. - Enrichment of request with authentication Token 3. - Query Metadata availability using Search Service 4. - Query objectId in ES 5. - Elastic Search version data response 6. - Return registry link if user is authorized for to access the object 7. - Retrieve metadata version using Registry Service 8. - Retrieve object version from data base 9. - Database object metadata response 10. - Return metadata object metadata 11.- Write METADATA_ACCESSED audit entry 12. - Create API response from metadata 13. - Return HTTP metadata response Webhook entry points *1 - dms.response.objects |
Search Queries ...
xxx
|
The metadata of already imported documents into the yuuvis® Momentum system can be retrieved using the provided core API's HTTP requests for retrieving the metadata (GET /api/dms/objects/{objectId}). If a specific version or all versions of the document's metadata is to be requested, the endpoint to be called changes and includes the specific version (GET /api/dms/objects/{objectId}/versions / GET /api/dms/objects/{objectId}/versions/{versionNr}).
>> Example Tutorial: Retrieving Documents via Core API
Anchor | ||||
---|---|---|---|---|
|
Search Queries
Expand | ||
---|---|---|
| ||
1. - HTTP get request to object URL 2. - Enrichment of request with authentication Token 3. - Request query execution 4. - Translate and send ES query 5. - Recieve ES query results 6. - Return metadata object list 7. - Create API response from metadata 8. - Return HTTP metadata response Webhook entry points *1 - dms.request.search *2 - dms.response.objects |
Update Content ...
xxx
|
Already imported objects into the yuuvis® Momentum system can be queried using the provided core API's HTTP request with the search query as request body (POST /api/dms/objects/search).
>> Concept: Search Query Language
Anchor | ||||
---|---|---|---|---|
|
Update Content
Expand | ||
---|---|---|
| ||
1. - HTTP post request to content url of object 2. - Enrichment of the Request with authentication token 3. - Verify user has writing permissions on object using Search Service 4. - Query object in Elastic Search 5. - Return ElasticSearch query results 6. - Return User Authorization Verification results 7. - Infer analysis of new content item 8. - Commit new content to storage 9. - Content Storage Handling 9.1 - Using custom storage via Archive Service 9.2 - Using s3 interface of repository 10. - Update object metadata contentstream attribute 11. - Commit updated metadata to database and index 12. - Index the updated metadata in ES 13. - Write CONTENT_UPDATED audit entry 14. - Return updated metadata 15. - Create API response from metadata 16. - Return updated metadata Webhook entry points *1 - dms.response.objects |
Update Metadata ...
xxx
|
The content of an already imported document into the yuuvis® Momentum system can be updated using the provided core API's HTTP requests for updating the content (POST /api/dms/objects/{objectId}/contents/file).
>> Example Tutorial: Updating Documents via Core API
Anchor | ||||
---|---|---|---|---|
|
Update Metadata
Expand | ||
---|---|---|
| ||
| ||
1. - HTTP post request to object id URL 2. - Enrichment of request with authentication token 3. - Query for 4. - Query Elasticsearch for object 5. - Elasticsearch object response (if user is properly authenticated) 6. - Authorization Test query response 7. - Infer metadata validation and update 8. - Commit updated metadata to index 9. - Index updated metadata in ES 10. - If Expiration Date has changed: update content storage via Archive Service 11. - Update metadata in Database 12. - Write METADATA_UPDATED audit entry 13. - Return updated metadata 14. - Create API response from metadata 15. - Return metadata HTTP response Webhook entry points *1 - dms.request.update.metadat *2 - dms.response.objects |
Deletion ...
xxx
|
The metadata of an already imported document into the yuuvis® Momentum system can be updated using the provided core API's HTTP requests for updating the metadata (POST /api/dms/objects/{objectId} / PATCH /api/dms/objects/{objectId}).
>> Example Tutorial: Updating Documents via Core API
Anchor | ||||
---|---|---|---|---|
|
Deletion
Expand | ||
---|---|---|
| ||
1. - xxx Webhook entry points *1 - xxx |
...
|
An already imported document into the yuuvis® Momentum system can be deleted using the provided core API's HTTP requests for deleting documents (DELETE /api/dms/objects/{objectId}).
>> Example Tutorial: Deleting Documents via Core API
Info | ||||||
---|---|---|---|---|---|---|
| ||||||
Read on
|
...
Another Tutorial
...
|
Another Concept Article
...
|
...
Another interesting Tutorial
...
|