@startuml
'Параметры для интерфейсов
skinparam interface {
  backgroundColor #1a2eff
  borderColor black
}

'Параметры для компонентов
skinparam component {
  FontSize 13
  ArrowFontStyle Bold
  FontName Times New Roman
  BorderColor black
  BackgroundColor #e6ffef
  ArrowFontName Courier
  ArrowColor #111111
  ArrowFontColor #111111
}

frame Sherlock_scheme #ededed {

database "Elasticsearch" #turquoise {
    [database]
}
    [user_request] -u-> http_request_autocomplete
    [user_request] -u-> http_request_full_text
    http_request_autocomplete -u-> [database]
    http_request_full_text -u-> [database]

    note top of http_request_full_text: POST /api/v1/product
    note top of http_request_autocomplete: POST /api/v1/autocomplete

    [database] -u-> [filtering, sorting]
    [filtering, sorting] -u-> [response_for_user]

    [response_for_user] -u-> http_response
}
@enduml