26516 lines
792 KiB
YAML
26516 lines
792 KiB
YAML
basePath: /
|
|
definitions:
|
|
internal_transport_http_handlers.loginBrandingContentAttrsDTO:
|
|
properties:
|
|
subtitle:
|
|
type: string
|
|
title:
|
|
type: string
|
|
updated_at:
|
|
type: string
|
|
version:
|
|
type: string
|
|
type: object
|
|
internal_transport_http_handlers.loginBrandingContentData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/internal_transport_http_handlers.loginBrandingContentAttrsDTO'
|
|
type:
|
|
type: string
|
|
type: object
|
|
internal_transport_http_handlers.loginBrandingContentDocument:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/internal_transport_http_handlers.loginBrandingContentData'
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionAttributes:
|
|
properties:
|
|
completed:
|
|
example: 1
|
|
type: integer
|
|
created_at:
|
|
example: "2026-04-09T05:00:00Z"
|
|
type: string
|
|
done_file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionFileChecklistItem'
|
|
type: array
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionFileChecklistItem'
|
|
type: array
|
|
flight_data_count:
|
|
example: 2
|
|
type: integer
|
|
flight_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionResource'
|
|
flight_inspection_id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
flight_time_seconds:
|
|
example: 9000
|
|
type: integer
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResource'
|
|
hydraulic_lh_checked:
|
|
example: "1"
|
|
type: string
|
|
hydraulic_rh_checked:
|
|
example: "1"
|
|
type: string
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
mission_code:
|
|
example: M-2026-001
|
|
type: string
|
|
mission_type:
|
|
items:
|
|
type: string
|
|
type: array
|
|
note:
|
|
example: All checks completed
|
|
type: string
|
|
oil_engine_nr1_checked:
|
|
example: "1"
|
|
type: string
|
|
oil_engine_nr2_checked:
|
|
example: "1"
|
|
type: string
|
|
oil_transmission_igb_checked:
|
|
example: "1"
|
|
type: string
|
|
oil_transmission_mgb_checked:
|
|
example: "1"
|
|
type: string
|
|
oil_transmission_tgb_checked:
|
|
example: "1"
|
|
type: string
|
|
route:
|
|
items:
|
|
type: string
|
|
type: array
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
total_flight:
|
|
example: 3
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-04-09T05:00:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionFileChecklistItem:
|
|
properties:
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_name:
|
|
example: After Flight Checklist.pdf
|
|
type: string
|
|
helicopter_file_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-111111111111
|
|
type: string
|
|
is_done:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionAttributes'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
type:
|
|
example: after_flight_inspection
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionUpsertAttributes:
|
|
properties:
|
|
hydraulic_lh_checked:
|
|
type: string
|
|
hydraulic_rh_checked:
|
|
type: string
|
|
note:
|
|
type: string
|
|
oil_engine_nr1_checked:
|
|
type: string
|
|
oil_engine_nr2_checked:
|
|
type: string
|
|
oil_transmission_igb_checked:
|
|
type: string
|
|
oil_transmission_mgb_checked:
|
|
type: string
|
|
oil_transmission_tgb_checked:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionUpsertData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionUpsertAttributes'
|
|
type:
|
|
enum:
|
|
- after_flight_inspection_upsert
|
|
- after_flight_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.AfterFlightInspectionUpsertRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionUpsertData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.AirRescuerProfileAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
responsible_flight_rescuer:
|
|
type: boolean
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AirRescuerProfileUpdateAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
responsible_flight_rescuer:
|
|
type: boolean
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AuthCurrentUserAttributes:
|
|
properties:
|
|
auth_provider:
|
|
example: email
|
|
type: string
|
|
dul_bases:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULBase'
|
|
type: array
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
email_sso:
|
|
example: user.sso@example.com
|
|
type: string
|
|
email_verified_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
foto:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserFoto'
|
|
is_previously_configured:
|
|
example: false
|
|
type: boolean
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
linked_sso:
|
|
example: false
|
|
type: boolean
|
|
login_method:
|
|
example: email
|
|
type: string
|
|
microsoft_scope:
|
|
example: openid profile email offline_access User.Read
|
|
type: string
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
permission_modules:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionGroupResource'
|
|
type: array
|
|
permissions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionMini'
|
|
type: array
|
|
pin_blocked:
|
|
example: false
|
|
type: boolean
|
|
pin_configured:
|
|
example: false
|
|
type: boolean
|
|
roles:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleMini'
|
|
type: array
|
|
timezone:
|
|
example: Asia/Jakarta
|
|
type: string
|
|
totp_enabled:
|
|
example: false
|
|
type: boolean
|
|
webauthn_configured:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.AuthCurrentUserResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthCurrentUserAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: user
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.AuthSessionDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_session_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.AuthSessionItem:
|
|
properties:
|
|
active_now:
|
|
example: true
|
|
type: boolean
|
|
created_at:
|
|
example: "2026-03-13T12:00:00Z"
|
|
type: string
|
|
device_name:
|
|
example: Chrome on macOS
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
ip_address:
|
|
example: 127.0.0.1
|
|
type: string
|
|
last_active_at:
|
|
example: "2026-03-13T12:10:00Z"
|
|
type: string
|
|
user_agent:
|
|
example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) ...
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.AuthSessionsResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
sessions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionItem'
|
|
type: array
|
|
type: object
|
|
type:
|
|
example: auth_sessions
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseAttributes:
|
|
properties:
|
|
address:
|
|
example: Lude Airfield
|
|
type: string
|
|
base:
|
|
example: Lude
|
|
type: string
|
|
base_abbreviation:
|
|
example: LOIG
|
|
type: string
|
|
base_category:
|
|
enum:
|
|
- regular
|
|
- hems
|
|
example: regular
|
|
type: string
|
|
checklist:
|
|
example: false
|
|
type: boolean
|
|
control_center:
|
|
example: false
|
|
type: boolean
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
default_end_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
default_start_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
dul:
|
|
example: false
|
|
type: boolean
|
|
email:
|
|
example: lude@wucher.local
|
|
type: string
|
|
foto:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseFoto'
|
|
hems_edc:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseContact'
|
|
type: array
|
|
hems_edc_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: +62-21-1234
|
|
type: string
|
|
latitude:
|
|
example: 47.3769
|
|
type: number
|
|
leg_time:
|
|
example: "00:20"
|
|
type: string
|
|
longitude:
|
|
example: 8.5417
|
|
type: number
|
|
med_pax:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseContact'
|
|
type: array
|
|
med_pax_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
mobile_number:
|
|
example: +62-812-1234
|
|
type: string
|
|
notes:
|
|
example: Main base
|
|
type: string
|
|
operational_shift_times:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseOperationalShiftTime'
|
|
type: array
|
|
responsible_pilot_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
responsible_pilots:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseContact'
|
|
type: array
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseShiftTime'
|
|
sms_alert:
|
|
example: false
|
|
type: boolean
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
utc:
|
|
example: "0"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseContact:
|
|
properties:
|
|
first_name:
|
|
type: string
|
|
id:
|
|
type: string
|
|
last_name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseCreateAttributes:
|
|
properties:
|
|
address:
|
|
example: Lude Airfield
|
|
type: string
|
|
base:
|
|
example: Lude
|
|
type: string
|
|
base_abbreviation:
|
|
example: LOIG
|
|
type: string
|
|
base_category:
|
|
enum:
|
|
- regular
|
|
- hems
|
|
example: regular
|
|
type: string
|
|
checklist:
|
|
example: false
|
|
type: boolean
|
|
control_center:
|
|
example: false
|
|
type: boolean
|
|
default_end_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
default_shift_end:
|
|
example: "21:00:00"
|
|
type: string
|
|
default_shift_start:
|
|
example: "06:00:00"
|
|
type: string
|
|
default_shift_time:
|
|
example: "12:00"
|
|
type: string
|
|
default_start_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
dul:
|
|
example: false
|
|
type: boolean
|
|
email:
|
|
example: lude@wucher.local
|
|
type: string
|
|
file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
hems_edc_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: +62-21-1234
|
|
type: string
|
|
latitude:
|
|
example: 47.3769
|
|
maximum: 90
|
|
minimum: -90
|
|
type: number
|
|
leg_time:
|
|
example: "00:20"
|
|
type: string
|
|
longitude:
|
|
example: 8.5417
|
|
maximum: 180
|
|
minimum: -180
|
|
type: number
|
|
med_pax_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
mobile_number:
|
|
example: +62-812-1234
|
|
type: string
|
|
notes:
|
|
example: Main base
|
|
type: string
|
|
operational_shift_times:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseOperationalShiftTime'
|
|
type: array
|
|
responsible_pilot_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseShiftTime'
|
|
sms_alert:
|
|
example: false
|
|
type: boolean
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
utc:
|
|
example: "0"
|
|
type: string
|
|
required:
|
|
- base
|
|
- latitude
|
|
- longitude
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseCreateAttributes'
|
|
type:
|
|
enum:
|
|
- base
|
|
example: base
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseDeleteAttributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseDeleteResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseDeleteAttributes'
|
|
id:
|
|
example: 019d6b10-a385-7e9e-a553-8e892bcec0ef
|
|
type: string
|
|
type:
|
|
example: base_delete
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseDeleteResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseDeleteResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseFoto:
|
|
properties:
|
|
download_url:
|
|
example: https://storage.example.com/base/lude.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
original_size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
thumbnail_download_url:
|
|
example: https://storage.example.com/base/lude.thumb.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseOperationalShiftTime:
|
|
properties:
|
|
date_end:
|
|
example: "2026-04-12"
|
|
type: string
|
|
date_start:
|
|
example: "2026-04-12"
|
|
type: string
|
|
end_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseShiftTime'
|
|
start_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: base
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseShiftTime:
|
|
properties:
|
|
end:
|
|
example: "21:00"
|
|
type: string
|
|
start:
|
|
example: "06:00"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseUpdateAttributes:
|
|
properties:
|
|
address:
|
|
example: Lude Airfield
|
|
type: string
|
|
base:
|
|
example: Lude
|
|
type: string
|
|
base_abbreviation:
|
|
example: LOIG
|
|
type: string
|
|
base_category:
|
|
enum:
|
|
- regular
|
|
- hems
|
|
example: regular
|
|
type: string
|
|
checklist:
|
|
example: false
|
|
type: boolean
|
|
control_center:
|
|
example: false
|
|
type: boolean
|
|
default_end_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
default_shift_end:
|
|
example: "21:00:00"
|
|
type: string
|
|
default_shift_start:
|
|
example: "06:00:00"
|
|
type: string
|
|
default_shift_time:
|
|
example: "12:00"
|
|
type: string
|
|
default_start_time_type:
|
|
enum:
|
|
- FIXED
|
|
- BMCT
|
|
- ECET
|
|
example: FIXED
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
dul:
|
|
example: false
|
|
type: boolean
|
|
email:
|
|
example: lude@wucher.local
|
|
type: string
|
|
file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
hems_edc_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: +62-21-1234
|
|
type: string
|
|
latitude:
|
|
example: 47.3769
|
|
maximum: 90
|
|
minimum: -90
|
|
type: number
|
|
leg_time:
|
|
example: "00:20"
|
|
type: string
|
|
longitude:
|
|
example: 8.5417
|
|
maximum: 180
|
|
minimum: -180
|
|
type: number
|
|
med_pax_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
mobile_number:
|
|
example: +62-812-1234
|
|
type: string
|
|
notes:
|
|
example: Main base
|
|
type: string
|
|
operational_shift_times:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseOperationalShiftTime'
|
|
type: array
|
|
responsible_pilot_contact_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseShiftTime'
|
|
sms_alert:
|
|
example: false
|
|
type: boolean
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
utc:
|
|
example: "0"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- base_update
|
|
example: base_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.BaseUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactBaseRole:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
base_name:
|
|
type: string
|
|
role_code:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactBulkUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
user_ids:
|
|
example:
|
|
- 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d1
|
|
items:
|
|
type: string
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- user_ids
|
|
type: object
|
|
type:
|
|
example: contact_bulk_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactBulkUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactBulkUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactChiefFlagsUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
is_chief_physician:
|
|
type: boolean
|
|
is_chief_pilot:
|
|
type: boolean
|
|
is_chief_technician:
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactChiefFlagsUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactChiefFlagsUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactCreateAttributes:
|
|
properties:
|
|
air_rescuer:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AirRescuerProfileAttributes'
|
|
doctor:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DoctorProfileAttributes'
|
|
email:
|
|
type: string
|
|
file_uuid:
|
|
maxLength: 64
|
|
type: string
|
|
first_name:
|
|
maxLength: 100
|
|
type: string
|
|
flight_assistant:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightAssistantProfileAttributes'
|
|
is_active:
|
|
type: boolean
|
|
is_admin:
|
|
type: boolean
|
|
last_name:
|
|
maxLength: 100
|
|
type: string
|
|
mobile_phone:
|
|
maxLength: 32
|
|
type: string
|
|
pilot:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PilotProfileAttributes'
|
|
role_id:
|
|
example: 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d1
|
|
type: string
|
|
role_ids:
|
|
example:
|
|
- 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d1
|
|
- 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d2
|
|
items:
|
|
type: string
|
|
type: array
|
|
sortkey:
|
|
type: integer
|
|
sso_email:
|
|
type: string
|
|
staff:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.StaffProfileAttributes'
|
|
technician:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TechnicianProfileAttributes'
|
|
timezone:
|
|
maxLength: 64
|
|
type: string
|
|
username:
|
|
maxLength: 100
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactCreateAttributes'
|
|
type:
|
|
example: contact_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactLicenseUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
license_no:
|
|
type: string
|
|
type: object
|
|
type:
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactLicenseUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactLicenseUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactListAttributes:
|
|
properties:
|
|
air_rescuer:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AirRescuerProfileAttributes'
|
|
base_roles:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactBaseRole'
|
|
type: array
|
|
created_at:
|
|
type: string
|
|
created_by:
|
|
type: string
|
|
doctor:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DoctorProfileAttributes'
|
|
email:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
flight_assistant:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightAssistantProfileAttributes'
|
|
is_active:
|
|
type: boolean
|
|
is_admin:
|
|
type: boolean
|
|
last_name:
|
|
type: string
|
|
license_no:
|
|
type: string
|
|
location:
|
|
type: string
|
|
mobile_phone:
|
|
type: string
|
|
note:
|
|
type: string
|
|
pilot:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PilotProfileAttributes'
|
|
pilot_category:
|
|
type: string
|
|
role_code:
|
|
type: string
|
|
role_name:
|
|
type: string
|
|
roles:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactRole'
|
|
type: array
|
|
set_password:
|
|
type: boolean
|
|
short_name:
|
|
type: string
|
|
sortkey:
|
|
type: integer
|
|
sso_email:
|
|
type: string
|
|
staff:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.StaffProfileAttributes'
|
|
technician:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TechnicianProfileAttributes'
|
|
updated_at:
|
|
type: string
|
|
updated_by:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactListItem:
|
|
properties:
|
|
created_at:
|
|
type: string
|
|
created_by:
|
|
type: string
|
|
email:
|
|
type: string
|
|
first_name:
|
|
type: string
|
|
id:
|
|
type: string
|
|
is_active:
|
|
type: boolean
|
|
is_admin:
|
|
type: boolean
|
|
last_name:
|
|
type: string
|
|
license_no:
|
|
type: string
|
|
location:
|
|
type: string
|
|
mobile_phone:
|
|
type: string
|
|
note:
|
|
type: string
|
|
pilot_category:
|
|
type: string
|
|
role_code:
|
|
type: string
|
|
role_name:
|
|
type: string
|
|
set_password:
|
|
type: boolean
|
|
short_name:
|
|
type: string
|
|
sortkey:
|
|
type: integer
|
|
updated_at:
|
|
type: string
|
|
updated_by:
|
|
type: string
|
|
username:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListAttributes'
|
|
id:
|
|
example: 019dcce4-f15e-7685-8e4c-76f8ad20594b
|
|
type: string
|
|
type:
|
|
example: contact
|
|
type: string
|
|
type: object
|
|
type: array
|
|
meta:
|
|
properties:
|
|
limit:
|
|
type: integer
|
|
offset:
|
|
type: integer
|
|
total:
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactPilotCategoryUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
pilot_category:
|
|
enum:
|
|
- regular
|
|
- freelance
|
|
- dry_lease
|
|
type: string
|
|
required:
|
|
- pilot_category
|
|
type: object
|
|
type:
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactPilotCategoryUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactPilotCategoryUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactRole:
|
|
properties:
|
|
id:
|
|
type: string
|
|
role_code:
|
|
type: string
|
|
role_name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactRoleUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
role_code:
|
|
enum:
|
|
- pilot
|
|
- doctor
|
|
- air_rescuer
|
|
- technician
|
|
- flight_assistant
|
|
- staff
|
|
type: string
|
|
required:
|
|
- role_code
|
|
type: object
|
|
type:
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactRoleUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactRoleUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactSimpleSuccessResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
count:
|
|
type: integer
|
|
deleted:
|
|
type: boolean
|
|
updated:
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactStatusUpdateData:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
is_active:
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactStatusUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactStatusUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactUpdateAttributes:
|
|
properties:
|
|
air_rescuer:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AirRescuerProfileUpdateAttributes'
|
|
doctor:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DoctorProfileUpdateAttributes'
|
|
email:
|
|
type: string
|
|
file_uuid:
|
|
maxLength: 64
|
|
type: string
|
|
first_name:
|
|
maxLength: 100
|
|
type: string
|
|
flight_assistant:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightAssistantProfileUpdateAttributes'
|
|
is_active:
|
|
type: boolean
|
|
is_admin:
|
|
type: boolean
|
|
last_name:
|
|
maxLength: 100
|
|
type: string
|
|
mobile_phone:
|
|
maxLength: 32
|
|
type: string
|
|
pilot:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PilotProfileUpdateAttributes'
|
|
role_id:
|
|
example: 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d1
|
|
type: string
|
|
role_ids:
|
|
example:
|
|
- 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d1
|
|
- 0195f6f8-0f8d-7e3e-b8f2-8abff9b5c1d2
|
|
items:
|
|
type: string
|
|
type: array
|
|
sortkey:
|
|
type: integer
|
|
sso_email:
|
|
type: string
|
|
staff:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.StaffProfileUpdateAttributes'
|
|
technician:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TechnicianProfileUpdateAttributes'
|
|
timezone:
|
|
maxLength: 64
|
|
type: string
|
|
username:
|
|
maxLength: 100
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactUpdateAttributes'
|
|
type:
|
|
example: contact_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ContactUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULAttributes:
|
|
properties:
|
|
base:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULBaseRef'
|
|
created_at:
|
|
type: string
|
|
created_by:
|
|
type: string
|
|
date:
|
|
example: "2026-05-25"
|
|
type: string
|
|
images:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULImage'
|
|
type: array
|
|
info:
|
|
type: string
|
|
name:
|
|
type: string
|
|
"no":
|
|
type: integer
|
|
updated_at:
|
|
type: string
|
|
updated_by:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULBase:
|
|
properties:
|
|
category:
|
|
example: hems
|
|
type: string
|
|
id:
|
|
example: 0197f3b2-c4d8-4b12-a1f9-c1de23456789
|
|
type: string
|
|
name:
|
|
example: Halim Base
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULBaseRef:
|
|
properties:
|
|
category:
|
|
type: string
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULCreateAttributes:
|
|
properties:
|
|
base_id:
|
|
example: 019e3ec1-94f6-7b6b-9cc5-1b5d05f46d74
|
|
type: string
|
|
date:
|
|
example: "2026-05-25"
|
|
type: string
|
|
file_uuid:
|
|
items:
|
|
type: string
|
|
type: array
|
|
info:
|
|
type: string
|
|
name:
|
|
maxLength: 128
|
|
type: string
|
|
required:
|
|
- base_id
|
|
- date
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULCreateAttributes'
|
|
type:
|
|
enum:
|
|
- dul_create
|
|
- dul
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULGroup'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
records_filtered:
|
|
example: 120
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
total_bases:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: dul_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULGroup:
|
|
properties:
|
|
base:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULBaseRef'
|
|
duls:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULImage:
|
|
properties:
|
|
download_url:
|
|
type: string
|
|
original_size_bytes:
|
|
type: integer
|
|
thumbnail_download_url:
|
|
type: string
|
|
uuid:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULGroup'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
total_bases:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULAttributes'
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULUpdateAttributes:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
date:
|
|
example: "2026-05-25"
|
|
type: string
|
|
file_uuid:
|
|
items:
|
|
type: string
|
|
type: array
|
|
info:
|
|
type: string
|
|
name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- dul_update
|
|
- dul
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.DULUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.DoctorProfileAttributes:
|
|
properties:
|
|
is_chief_physician:
|
|
type: boolean
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
specialization:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
sub_specialization:
|
|
maxLength: 120
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.DoctorProfileUpdateAttributes:
|
|
properties:
|
|
is_chief_physician:
|
|
type: boolean
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
specialization:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
sub_specialization:
|
|
maxLength: 120
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPSendAttributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
required:
|
|
- challenge_token
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPSendData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPSendAttributes'
|
|
type:
|
|
example: auth_email_otp_send
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPSendRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPSendData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPSendResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
sent:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_email_otp_send
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPVerifyAttributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
code:
|
|
example: "123456"
|
|
type: string
|
|
required:
|
|
- challenge_token
|
|
- code
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPVerifyData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPVerifyAttributes'
|
|
type:
|
|
example: auth_email_otp_verify
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPVerifyRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPVerifyData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.EmailOTPVerifyResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
requires_totp_setup:
|
|
example: true
|
|
type: boolean
|
|
verified:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_email_otp_verify
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ErrorResponse:
|
|
properties:
|
|
errors:
|
|
items:
|
|
properties:
|
|
detail:
|
|
example: email is required
|
|
type: string
|
|
source:
|
|
properties:
|
|
pointer:
|
|
example: /data/attributes/email
|
|
type: string
|
|
type: object
|
|
status:
|
|
example: "422"
|
|
type: string
|
|
title:
|
|
example: Validation error
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.ExchangeAttributes:
|
|
properties:
|
|
access_token:
|
|
example: eyJ0eXAiOiJKV1Qi...
|
|
type: string
|
|
id_token:
|
|
example: eyJ0eXAiOiJKV1Qi...
|
|
type: string
|
|
id_token_claims:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ExchangeIDTokenClaims'
|
|
required:
|
|
- access_token
|
|
- id_token
|
|
type: object
|
|
wucher_internal_transport_http_dto.ExchangeData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ExchangeAttributes'
|
|
type:
|
|
example: auth_exchange
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ExchangeIDTokenClaims:
|
|
properties:
|
|
aud:
|
|
example: 12345678-1234-1234-1234-123456789012
|
|
type: string
|
|
email:
|
|
example: andrio@mybit-innovation.com
|
|
type: string
|
|
exp:
|
|
example: 1715603600
|
|
type: integer
|
|
iat:
|
|
example: 1715600000
|
|
type: integer
|
|
iss:
|
|
example: https://login.microsoftonline.com/abc-tenant-id/v2.0
|
|
type: string
|
|
name:
|
|
example: Andrio Effendi
|
|
type: string
|
|
nbf:
|
|
example: 1715600000
|
|
type: integer
|
|
oid:
|
|
example: 00000000-0000-0000-1234-567890abcdef
|
|
type: string
|
|
preferred_username:
|
|
example: andrio@mybit-innovation.com
|
|
type: string
|
|
sub:
|
|
example: AbCdEfGhIjKlMnOpQrStUvWxYz
|
|
type: string
|
|
tid:
|
|
example: abc-tenant-id
|
|
type: string
|
|
ver:
|
|
example: "2.0"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ExchangeRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ExchangeData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportAirframeValues:
|
|
properties:
|
|
cycles:
|
|
example: 320
|
|
type: number
|
|
hours:
|
|
example: 1523.5
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportAttachmentItem:
|
|
properties:
|
|
download_url:
|
|
type: string
|
|
file_id:
|
|
type: string
|
|
id:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportAttachments:
|
|
properties:
|
|
additional_fm_report:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttachmentItem'
|
|
type: array
|
|
briefing:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttachmentItem'
|
|
type: array
|
|
ofp:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttachmentItem'
|
|
type: array
|
|
weight_balance:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttachmentItem'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportAttributes:
|
|
properties:
|
|
after_flight_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionResource'
|
|
completed_at:
|
|
example: "2026-04-20T10:15:00Z"
|
|
type: string
|
|
completed_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
created_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
engine1_gpc_n1:
|
|
example: GPC/N1 63.2
|
|
type: string
|
|
engine1_ptc_n2:
|
|
example: PTC/N2 61.8
|
|
type: string
|
|
engine2_gpc_n1:
|
|
example: GPC/N1 62.9
|
|
type: string
|
|
engine2_ptc_n2:
|
|
example: PTC/N2 61.5
|
|
type: string
|
|
fleet_status:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResource'
|
|
flight:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightResource'
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
flight_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionResource'
|
|
flight_inspection_id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
fm_report_attachments:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttachments'
|
|
helicopter_identifier:
|
|
example: OE-TEST
|
|
type: string
|
|
helicopter_usage:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResource'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
missions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResource'
|
|
type: array
|
|
pilot_name:
|
|
example: John Doe
|
|
type: string
|
|
report_code:
|
|
example: EC-135-1
|
|
type: string
|
|
takeover_files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverFileResource'
|
|
type: array
|
|
takeover_id:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
usage_breakdown:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportUsageBreakdown'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportCountersValues:
|
|
properties:
|
|
flight_reports:
|
|
example: 80
|
|
type: number
|
|
hook_releases:
|
|
example: 10
|
|
type: number
|
|
landings:
|
|
example: 120
|
|
type: number
|
|
rotor_brake_cycles:
|
|
example: 8
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportEngineValues:
|
|
properties:
|
|
ccc:
|
|
example: 44
|
|
type: number
|
|
gpc_ng_n1:
|
|
example: 63.2
|
|
type: number
|
|
hours:
|
|
example: 1523.5
|
|
type: number
|
|
ptc_nf_n2:
|
|
example: 61.8
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAttributes'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
type:
|
|
example: fm_report
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportUsageBreakdown:
|
|
properties:
|
|
prev:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportUsageSnapshot'
|
|
today:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportUsageSnapshot'
|
|
total:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportUsageSnapshot'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FMReportUsageSnapshot:
|
|
properties:
|
|
airframe:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportAirframeValues'
|
|
counters:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportCountersValues'
|
|
engine_1:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportEngineValues'
|
|
engine_2:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportEngineValues'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityAttributes:
|
|
properties:
|
|
category:
|
|
example: heslo-rope-label
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
electric:
|
|
example: available
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
length:
|
|
example: 10m
|
|
type: string
|
|
name:
|
|
example: Fuel Truck Rope Label
|
|
type: string
|
|
note:
|
|
example: Dry lease fuel truck
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type:
|
|
example: Sling
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
weight:
|
|
example: 10kg
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityCreateAttributes:
|
|
properties:
|
|
category:
|
|
example: heslo-rope-label
|
|
type: string
|
|
electric:
|
|
example: available
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
length:
|
|
example: 10m
|
|
type: string
|
|
name:
|
|
example: Fuel Truck Rope Label
|
|
type: string
|
|
note:
|
|
example: Dry lease fuel truck
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type:
|
|
example: Sling
|
|
type: string
|
|
weight:
|
|
example: 10kg
|
|
type: string
|
|
required:
|
|
- category
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityCreateAttributes'
|
|
type:
|
|
enum:
|
|
- facility_create
|
|
- facility
|
|
example: facility_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: facility_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: facility
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityUpdateAttributes:
|
|
properties:
|
|
category:
|
|
example: heslo-rope-label
|
|
type: string
|
|
electric:
|
|
example: available
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
length:
|
|
example: 10m
|
|
type: string
|
|
name:
|
|
example: Fuel Truck Rope Label
|
|
type: string
|
|
note:
|
|
example: Dry lease fuel truck
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type:
|
|
example: Sling
|
|
type: string
|
|
weight:
|
|
example: 10kg
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- facility_update
|
|
- facility
|
|
example: facility_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FacilityUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
land_iso_code:
|
|
example: DE
|
|
type: string
|
|
land_name:
|
|
example: Germany
|
|
type: string
|
|
name:
|
|
example: Bayern
|
|
type: string
|
|
note:
|
|
example: Central region
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateCreateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Bayern
|
|
type: string
|
|
note:
|
|
example: Central region
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- land_id
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateCreateAttributes'
|
|
type:
|
|
enum:
|
|
- federal_state_create
|
|
- federal_state
|
|
example: federal_state_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: federal_state_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: federal_state
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateUpdateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Bayern
|
|
type: string
|
|
note:
|
|
example: Central region
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- federal_state_update
|
|
- federal_state
|
|
example: federal_state_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FederalStateUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightAssistantProfileAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightAssistantProfileUpdateAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-04-09T05:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
inspection_date:
|
|
example: "2026-04-09"
|
|
type: string
|
|
status:
|
|
example: Draft
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-09T05:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionCreateAttributes:
|
|
properties:
|
|
inspection_date:
|
|
example: "2026-04-09"
|
|
type: string
|
|
required:
|
|
- inspection_date
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionCreateAttributes'
|
|
type:
|
|
enum:
|
|
- flight_inspection_create
|
|
- flight_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionAttributes'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
type:
|
|
example: flight_inspection
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionUpdateAttributes:
|
|
properties:
|
|
inspection_date:
|
|
example: "2026-04-09"
|
|
type: string
|
|
status:
|
|
example: InProgress
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionUpdateAttributes'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
type:
|
|
enum:
|
|
- flight_inspection_update
|
|
- flight_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.FlightInspectionUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FlightInspectionUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Firefighter Team A
|
|
type: string
|
|
note:
|
|
example: On-site responders
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentCreateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Firefighter Team A
|
|
type: string
|
|
note:
|
|
example: On-site responders
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentCreateAttributes'
|
|
type:
|
|
enum:
|
|
- forces_present_create
|
|
- forces_present
|
|
example: forces_present_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: forces_present
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentUpdateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Firefighter Team A
|
|
type: string
|
|
note:
|
|
example: On-site responders
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- forces_present_update
|
|
- forces_present
|
|
example: forces_present_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForcesPresentUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotPasswordAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
required:
|
|
- email
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotPasswordData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotPasswordAttributes'
|
|
type:
|
|
example: auth_forgot_password
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotPasswordRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotPasswordData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotSecurityPINAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
required:
|
|
- email
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotSecurityPINData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotSecurityPINAttributes'
|
|
type:
|
|
example: auth_forgot_pin
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ForgotSecurityPINRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotSecurityPINData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.GenericDeleteAttributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.GenericDeleteResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponseData'
|
|
type: object
|
|
wucher_internal_transport_http_dto.GenericDeleteResponseData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteAttributes'
|
|
type:
|
|
example: delete_result
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
date:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
hems_operation_category:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryRef'
|
|
hems_operation_category_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mission:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationMissionRef'
|
|
mission_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
operational_data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationOperationalDataRef'
|
|
operational_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Firefighting
|
|
type: string
|
|
type:
|
|
example: first
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: Firefighting
|
|
type: string
|
|
type:
|
|
enum:
|
|
- first
|
|
- secondary
|
|
- misuse
|
|
example: first
|
|
type: string
|
|
required:
|
|
- name
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryCreateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operation_category_create
|
|
- hems_operation_category
|
|
example: hems_operation_category_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryRef:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Firefighting
|
|
type: string
|
|
type:
|
|
example: first
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: hems_operation_category
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateAttributes:
|
|
properties:
|
|
name:
|
|
example: Firefighting
|
|
type: string
|
|
type:
|
|
enum:
|
|
- first
|
|
- secondary
|
|
- misuse
|
|
example: first
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operation_category_update
|
|
- hems_operation_category
|
|
example: hems_operation_category_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCreateAttributes:
|
|
properties:
|
|
date:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
hems_operation_category_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mission_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
operational_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- date
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCreateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operation_create
|
|
- hems_operation
|
|
example: hems_operation_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationMissionRef:
|
|
properties:
|
|
flight_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationOperationalDataRef:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: hems_operation
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationUpdateAttributes:
|
|
properties:
|
|
date:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
hems_operation_category_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mission_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
operational_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operation_update
|
|
- hems_operation
|
|
example: hems_operation_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataAttributes:
|
|
properties:
|
|
additional_info:
|
|
example: Additional information about the operational data
|
|
type: string
|
|
altitude:
|
|
example: 5.2
|
|
type: number
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
darkness:
|
|
type: boolean
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
false_information:
|
|
type: boolean
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataFileAttributes'
|
|
type: array
|
|
fog:
|
|
type: boolean
|
|
force_present_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
instrument_flight:
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
landing_site_search:
|
|
type: boolean
|
|
location:
|
|
example: 123 Main St, Anytown, USA
|
|
type: string
|
|
mountain_use:
|
|
type: boolean
|
|
nfo_search:
|
|
type: boolean
|
|
night_flight:
|
|
type: boolean
|
|
notes:
|
|
example: Notes about the operational data
|
|
type: string
|
|
postcode:
|
|
example: "12345"
|
|
type: string
|
|
precipitation:
|
|
type: boolean
|
|
rope_recovery:
|
|
type: boolean
|
|
state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
temperature:
|
|
example: 23.5
|
|
type: number
|
|
terrain_index:
|
|
example: Only helicopter landing
|
|
type: string
|
|
time:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
vocation_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
wind:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataCreateAttributes:
|
|
properties:
|
|
additional_info:
|
|
example: Additional information about the operational data
|
|
type: string
|
|
altitude:
|
|
example: 5.2
|
|
type: number
|
|
darkness:
|
|
type: boolean
|
|
false_information:
|
|
type: boolean
|
|
file_attachment_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
fog:
|
|
type: boolean
|
|
force_present_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
instrument_flight:
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
landing_site_search:
|
|
type: boolean
|
|
location:
|
|
example: 123 Main St, Anytown, USA
|
|
type: string
|
|
mountain_use:
|
|
type: boolean
|
|
nfo_search:
|
|
type: boolean
|
|
night_flight:
|
|
type: boolean
|
|
notes:
|
|
example: Notes about the operational data
|
|
type: string
|
|
postcode:
|
|
example: "12345"
|
|
type: string
|
|
precipitation:
|
|
type: boolean
|
|
rope_recovery:
|
|
type: boolean
|
|
state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
temperature:
|
|
example: 23.5
|
|
type: number
|
|
terrain_index:
|
|
example: Only helicopter landing
|
|
type: string
|
|
time:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
vocation_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
wind:
|
|
type: boolean
|
|
required:
|
|
- location
|
|
- time
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataCreateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operational_data_create
|
|
- hems_operational_data
|
|
example: hems_operational_data_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataFileAttributes:
|
|
properties:
|
|
file_attachment_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: hems_operational_data
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataUpdateAttributes:
|
|
properties:
|
|
additional_info:
|
|
example: Additional information about the operational data
|
|
type: string
|
|
altitude:
|
|
example: 5.2
|
|
type: number
|
|
darkness:
|
|
type: boolean
|
|
false_information:
|
|
type: boolean
|
|
file_attachment_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
fog:
|
|
type: boolean
|
|
force_present_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
instrument_flight:
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
landing_site_search:
|
|
type: boolean
|
|
location:
|
|
example: 123 Main St, Anytown, USA
|
|
type: string
|
|
mountain_use:
|
|
type: boolean
|
|
nfo_search:
|
|
type: boolean
|
|
night_flight:
|
|
type: boolean
|
|
notes:
|
|
example: Notes about the operational data
|
|
type: string
|
|
postcode:
|
|
example: "12345"
|
|
type: string
|
|
precipitation:
|
|
type: boolean
|
|
rope_recovery:
|
|
type: boolean
|
|
state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
temperature:
|
|
example: 23.5
|
|
type: number
|
|
terrain_index:
|
|
example: Only helicopter landing
|
|
type: string
|
|
time:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
vocation_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
wind:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- hems_operational_data_update
|
|
- hems_operational_data
|
|
example: hems_operational_data_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HEMSOperationalDataUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyAttributes:
|
|
properties:
|
|
address:
|
|
example: Main Street 10
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
email:
|
|
example: info@abc-insurance.local
|
|
type: string
|
|
federal_state:
|
|
example: Bayern
|
|
type: string
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
land_iso_code:
|
|
example: DE
|
|
type: string
|
|
land_name:
|
|
example: Germany
|
|
type: string
|
|
mobile_number:
|
|
example: "+4912345678"
|
|
type: string
|
|
name:
|
|
example: ABC Insurance
|
|
type: string
|
|
note:
|
|
example: Preferred insurance provider
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
state:
|
|
example: Berlin
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateAttributes:
|
|
properties:
|
|
address:
|
|
example: Main Street 10
|
|
type: string
|
|
email:
|
|
example: info@abc-insurance.local
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mobile_number:
|
|
example: "+4912345678"
|
|
type: string
|
|
name:
|
|
example: ABC Insurance
|
|
type: string
|
|
note:
|
|
example: Preferred insurance provider
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
state:
|
|
example: Berlin
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateAttributes'
|
|
type:
|
|
enum:
|
|
- health_insurance_company_create
|
|
- health_insurance_company
|
|
example: health_insurance_company_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: health_insurance_company
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateAttributes:
|
|
properties:
|
|
address:
|
|
example: Main Street 10
|
|
type: string
|
|
email:
|
|
example: info@abc-insurance.local
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mobile_number:
|
|
example: "+4912345678"
|
|
type: string
|
|
name:
|
|
example: ABC Insurance
|
|
type: string
|
|
note:
|
|
example: Preferred insurance provider
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
state:
|
|
example: Berlin
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- health_insurance_company_update
|
|
- health_insurance_company
|
|
example: health_insurance_company_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
helicopter_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
total_airframe_cycles:
|
|
example: 320
|
|
type: number
|
|
total_airframe_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_1_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_1_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_engine_2_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_2_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_2_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_2_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_flight_report:
|
|
example: 80
|
|
type: number
|
|
total_hook_release:
|
|
example: 10
|
|
type: number
|
|
total_landing:
|
|
example: 120
|
|
type: number
|
|
total_rotor_brake_cycle:
|
|
example: 8
|
|
type: number
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageCreateAttributes:
|
|
properties:
|
|
helicopter_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
total_airframe_cycles:
|
|
example: 320
|
|
type: number
|
|
total_airframe_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_1_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_1_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_engine_2_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_2_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_2_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_2_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_flight_report:
|
|
example: 80
|
|
type: number
|
|
total_hook_release:
|
|
example: 10
|
|
type: number
|
|
total_landing:
|
|
example: 120
|
|
type: number
|
|
total_rotor_brake_cycle:
|
|
example: 8
|
|
type: number
|
|
required:
|
|
- helicopter_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageCreateAttributes'
|
|
type:
|
|
enum:
|
|
- helicopter_usage_create
|
|
- helicopter_usage
|
|
example: helicopter_usage_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: helicopter_usage
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageUpdateAttributes:
|
|
properties:
|
|
helicopter_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
total_airframe_cycles:
|
|
example: 320
|
|
type: number
|
|
total_airframe_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_1_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_1_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_1_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_engine_2_ccc:
|
|
example: 44
|
|
type: number
|
|
total_engine_2_gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
total_engine_2_hours:
|
|
example: 1523.5
|
|
type: number
|
|
total_engine_2_ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
total_flight_report:
|
|
example: 80
|
|
type: number
|
|
total_hook_release:
|
|
example: 10
|
|
type: number
|
|
total_landing:
|
|
example: 120
|
|
type: number
|
|
total_rotor_brake_cycle:
|
|
example: 8
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- helicopter_usage_update
|
|
- helicopter_usage
|
|
example: helicopter_usage_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HelicopterUsageUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalAttributes:
|
|
properties:
|
|
address:
|
|
example: Jl. Merdeka No. 10
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
email:
|
|
example: info@hospital.local
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: "0211234567"
|
|
type: string
|
|
mobile_number:
|
|
example: "08123456789"
|
|
type: string
|
|
name:
|
|
example: RSUD Kota
|
|
type: string
|
|
note:
|
|
example: Nearest trauma center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalCreateAttributes:
|
|
properties:
|
|
address:
|
|
example: Jl. Merdeka No. 10
|
|
type: string
|
|
email:
|
|
example: info@hospital.local
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: "0211234567"
|
|
type: string
|
|
mobile_number:
|
|
example: "08123456789"
|
|
type: string
|
|
name:
|
|
example: RSUD Kota
|
|
type: string
|
|
note:
|
|
example: Nearest trauma center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalCreateAttributes'
|
|
type:
|
|
enum:
|
|
- hospital_create
|
|
- hospital
|
|
example: hospital_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: hospital
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalUpdateAttributes:
|
|
properties:
|
|
address:
|
|
example: Jl. Merdeka No. 10
|
|
type: string
|
|
email:
|
|
example: info@hospital.local
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
landline_number:
|
|
example: "0211234567"
|
|
type: string
|
|
mobile_number:
|
|
example: "08123456789"
|
|
type: string
|
|
name:
|
|
example: RSUD Kota
|
|
type: string
|
|
note:
|
|
example: Nearest trauma center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- hospital_update
|
|
- hospital
|
|
example: hospital_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.HospitalUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOAttributes:
|
|
properties:
|
|
address:
|
|
example: Muehlenstrasse 1
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
email:
|
|
example: ops@example.local
|
|
type: string
|
|
federal_state:
|
|
example: Bayern
|
|
type: string
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
icao_code:
|
|
example: EDDB
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
land_iso_code:
|
|
example: DE
|
|
type: string
|
|
land_name:
|
|
example: Germany
|
|
type: string
|
|
landline_number:
|
|
example: "030123456"
|
|
type: string
|
|
mobile_number:
|
|
example: "0170123456"
|
|
type: string
|
|
name:
|
|
example: Berlin Base
|
|
type: string
|
|
note:
|
|
example: Night operations supported
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOCreateAttributes:
|
|
properties:
|
|
address:
|
|
example: Muehlenstrasse 1
|
|
type: string
|
|
email:
|
|
example: ops@example.local
|
|
type: string
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
icao_code:
|
|
example: EDDB
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
landline_number:
|
|
example: "030123456"
|
|
type: string
|
|
mobile_number:
|
|
example: "0170123456"
|
|
type: string
|
|
name:
|
|
example: Berlin Base
|
|
type: string
|
|
note:
|
|
example: Night operations supported
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- icao_code
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOCreateAttributes'
|
|
type:
|
|
enum:
|
|
- icao_create
|
|
- icao
|
|
example: icao_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAODataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: icao
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOUpdateAttributes:
|
|
properties:
|
|
address:
|
|
example: Muehlenstrasse 1
|
|
type: string
|
|
email:
|
|
example: ops@example.local
|
|
type: string
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
icao_code:
|
|
example: EDDB
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
land_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
landline_number:
|
|
example: "030123456"
|
|
type: string
|
|
mobile_number:
|
|
example: "0170123456"
|
|
type: string
|
|
name:
|
|
example: Berlin Base
|
|
type: string
|
|
note:
|
|
example: Night operations supported
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- icao_update
|
|
- icao
|
|
example: icao_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ICAOUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
federal_state:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataFederalState'
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_companies_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_company:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataHealthInsuranceCompany'
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataCreateAttributes:
|
|
properties:
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_companies_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- federal_state_id
|
|
- health_insurance_companies_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataCreateAttributes'
|
|
type:
|
|
enum:
|
|
- insurance_patient_data_create
|
|
- insurance_patient_data
|
|
example: insurance_patient_data_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataFederalState:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Bayern
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataHealthInsuranceCompany:
|
|
properties:
|
|
address:
|
|
example: Main Street 10
|
|
type: string
|
|
email:
|
|
example: info@abc-insurance.local
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mobile_number:
|
|
example: "+4912345678"
|
|
type: string
|
|
name:
|
|
example: ABC Insurance
|
|
type: string
|
|
state:
|
|
example: Berlin
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: insurance_patient_data
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataUpdateAttributes:
|
|
properties:
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_companies_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- insurance_patient_data_update
|
|
- insurance_patient_data
|
|
example: insurance_patient_data_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.InsurancePatientDataUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.InviteAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
role_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
role_ids:
|
|
example:
|
|
- '["018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d"'
|
|
- '"018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e"]'
|
|
items:
|
|
type: string
|
|
type: array
|
|
username:
|
|
example: john.doe
|
|
maxLength: 100
|
|
minLength: 3
|
|
type: string
|
|
required:
|
|
- email
|
|
- first_name
|
|
- last_name
|
|
- role_id
|
|
- username
|
|
type: object
|
|
wucher_internal_transport_http_dto.InviteData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InviteAttributes'
|
|
type:
|
|
example: auth_invite
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.InviteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InviteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandAttributes:
|
|
properties:
|
|
bmd_export_id:
|
|
example: DE001
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
federal_state_list:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandFederalStateDTO'
|
|
type: array
|
|
federal_state_total:
|
|
example: 2
|
|
type: integer
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
iso_code:
|
|
example: DE
|
|
type: string
|
|
name:
|
|
example: Germany
|
|
type: string
|
|
note:
|
|
example: Central Europe
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandCreateAttributes:
|
|
properties:
|
|
bmd_export_id:
|
|
example: DE001
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
iso_code:
|
|
example: DE
|
|
type: string
|
|
name:
|
|
example: Germany
|
|
type: string
|
|
note:
|
|
example: Central Europe
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandCreateAttributes'
|
|
type:
|
|
enum:
|
|
- land_create
|
|
- land
|
|
example: land_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandFederalStateDTO:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Bayern
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: land
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandUpdateAttributes:
|
|
properties:
|
|
bmd_export_id:
|
|
example: DE001
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
iso_code:
|
|
example: DE
|
|
type: string
|
|
name:
|
|
example: Germany
|
|
type: string
|
|
note:
|
|
example: Central Europe
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- land_update
|
|
- land
|
|
example: land_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.LandUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.LoginAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
type: string
|
|
required:
|
|
- email
|
|
- password
|
|
type: object
|
|
wucher_internal_transport_http_dto.LoginData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LoginAttributes'
|
|
type:
|
|
example: auth_login
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.LoginEmailOTPRequiredResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
linked_sso:
|
|
example: false
|
|
type: boolean
|
|
max_resend_per_hour:
|
|
example: 5
|
|
type: integer
|
|
pin_configured:
|
|
example: false
|
|
type: boolean
|
|
requires_email_otp:
|
|
example: true
|
|
type: boolean
|
|
requires_totp_setup:
|
|
example: true
|
|
type: boolean
|
|
resend_cooldown_seconds:
|
|
example: 60
|
|
type: integer
|
|
webauthn_configured:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_email_otp_required
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.LoginRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LoginData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.LoginTOTPRequiredResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
email_otp_challenge_token:
|
|
example: qA9j1...
|
|
type: string
|
|
email_otp_enabled:
|
|
example: false
|
|
type: boolean
|
|
email_otp_max_resend_per_hour:
|
|
example: 5
|
|
type: integer
|
|
email_otp_resend_cooldown_seconds:
|
|
example: 60
|
|
type: integer
|
|
linked_sso:
|
|
example: false
|
|
type: boolean
|
|
pin_configured:
|
|
example: false
|
|
type: boolean
|
|
requires_totp:
|
|
example: true
|
|
type: boolean
|
|
totp_enabled:
|
|
example: true
|
|
type: boolean
|
|
webauthn_configured:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_totp_required
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineAttributes:
|
|
properties:
|
|
column:
|
|
example: 1
|
|
type: integer
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
medicine_group:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResource'
|
|
medicine_group_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResource'
|
|
motor_reaction_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
motor_reactions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResource'
|
|
type: array
|
|
name:
|
|
example: Paracetamol
|
|
type: string
|
|
note:
|
|
example: Main stock medicine
|
|
type: string
|
|
pack:
|
|
example: 500mg
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
unit:
|
|
example: tablet
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineCreateAttributes:
|
|
properties:
|
|
column:
|
|
example: 1
|
|
type: integer
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
medicine_group_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
name:
|
|
example: Paracetamol
|
|
type: string
|
|
note:
|
|
example: Main stock medicine
|
|
type: string
|
|
pack:
|
|
example: 500mg
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
unit:
|
|
example: tablet
|
|
maxLength: 50
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineCreateAttributes'
|
|
type:
|
|
enum:
|
|
- medicine_create
|
|
- medicine
|
|
example: medicine_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Spritze
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: Spritze
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupCreateAttributes'
|
|
type:
|
|
enum:
|
|
- medicine_group_create
|
|
- medicine_group
|
|
example: medicine_group_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: medicine_group
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupUpdateAttributes:
|
|
properties:
|
|
name:
|
|
example: Spritze
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- medicine_group_update
|
|
- medicine_group
|
|
example: medicine_group_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineGroupUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: medicine
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineUpdateAttributes:
|
|
properties:
|
|
column:
|
|
example: 1
|
|
type: integer
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
medicine_group_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
motor_reaction_ids:
|
|
example:
|
|
- 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
items:
|
|
type: string
|
|
type: array
|
|
name:
|
|
example: Paracetamol
|
|
type: string
|
|
note:
|
|
example: Main stock medicine
|
|
type: string
|
|
pack:
|
|
example: 500mg
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
unit:
|
|
example: tablet
|
|
maxLength: 50
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- medicine_update
|
|
- medicine
|
|
example: medicine_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MedicineUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.MicrosoftCallbackResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
provider:
|
|
example: microsoft
|
|
type: string
|
|
provider_subject:
|
|
example: 00000000-0000-0000-0000-000000000000
|
|
type: string
|
|
type: object
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: auth_identity
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MicrosoftLoginResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
redirect_url:
|
|
example: https://login.microsoftonline.com/...
|
|
type: string
|
|
url:
|
|
example: https://login.microsoftonline.com/...
|
|
type: string
|
|
type: object
|
|
type:
|
|
example: auth_microsoft_url
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: gezielt auf Schmerzreiz
|
|
type: string
|
|
score:
|
|
example: 5
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: gezielt auf Schmerzreiz
|
|
type: string
|
|
score:
|
|
example: 5
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionCreateAttributes'
|
|
type:
|
|
enum:
|
|
- motor_reaction_create
|
|
- motor_reaction
|
|
example: motor_reaction_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: motor_reaction
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionUpdateAttributes:
|
|
properties:
|
|
name:
|
|
example: gezielt auf Schmerzreiz
|
|
type: string
|
|
score:
|
|
example: 5
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- motor_reaction_update
|
|
- motor_reaction
|
|
example: motor_reaction_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.MotorReactionUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary operation control center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
title:
|
|
example: Main OPC Base
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcCreateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary operation control center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
title:
|
|
example: Main OPC Base
|
|
type: string
|
|
required:
|
|
- title
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcCreateAttributes'
|
|
type:
|
|
enum:
|
|
- opc_create
|
|
- opc
|
|
example: opc_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: opc
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcUpdateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary operation control center
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
title:
|
|
example: Main OPC Base
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- opc_update
|
|
- opc
|
|
example: opc_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.OpcUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataAttributes:
|
|
properties:
|
|
age:
|
|
example: 35
|
|
type: integer
|
|
birth_date:
|
|
example: "1990-01-15"
|
|
type: string
|
|
co_insured:
|
|
example: false
|
|
type: boolean
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
email:
|
|
example: max.muster@example.com
|
|
type: string
|
|
family_name:
|
|
example: Muster
|
|
type: string
|
|
first_name:
|
|
example: Max
|
|
type: string
|
|
gender:
|
|
example: male
|
|
type: string
|
|
insurance_patient_data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataInsuranceDetail'
|
|
insurance_patient_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
opc:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataOPC'
|
|
opc_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
phone:
|
|
example: "+431234567"
|
|
type: string
|
|
street:
|
|
example: Hauptstraße 1
|
|
type: string
|
|
svnr:
|
|
example: "1234150190"
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataCreateAttributes:
|
|
properties:
|
|
birth_date:
|
|
example: "1990-01-15"
|
|
type: string
|
|
co_insured:
|
|
example: false
|
|
type: boolean
|
|
email:
|
|
example: max.muster@example.com
|
|
type: string
|
|
family_name:
|
|
example: Muster
|
|
type: string
|
|
first_name:
|
|
example: Max
|
|
type: string
|
|
gender:
|
|
enum:
|
|
- male
|
|
- female
|
|
example: male
|
|
type: string
|
|
insurance_patient_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
opc_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
phone:
|
|
example: "+431234567"
|
|
type: string
|
|
street:
|
|
example: Hauptstraße 1
|
|
type: string
|
|
svnr:
|
|
example: "1234150190"
|
|
type: string
|
|
required:
|
|
- family_name
|
|
- first_name
|
|
- gender
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataCreateAttributes'
|
|
type:
|
|
enum:
|
|
- patient_data_create
|
|
- patient_data
|
|
example: patient_data_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataInsuranceDetail:
|
|
properties:
|
|
federal_state:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataFederalState'
|
|
federal_state_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_companies_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
health_insurance_company:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataHealthInsuranceCompany'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataOPC:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
title:
|
|
example: Primary OPC
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: patient_data
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataUpdateAttributes:
|
|
properties:
|
|
birth_date:
|
|
example: "1990-01-15"
|
|
type: string
|
|
co_insured:
|
|
example: false
|
|
type: boolean
|
|
email:
|
|
example: max.muster@example.com
|
|
type: string
|
|
family_name:
|
|
example: Muster
|
|
type: string
|
|
first_name:
|
|
example: Max
|
|
type: string
|
|
gender:
|
|
example: male
|
|
type: string
|
|
insurance_patient_data_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
opc_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
phone:
|
|
example: "+431234567"
|
|
type: string
|
|
street:
|
|
example: Hauptstraße 1
|
|
type: string
|
|
svnr:
|
|
example: "1234150190"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- patient_data_update
|
|
- patient_data
|
|
example: patient_data_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.PatientDataUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
description:
|
|
example: Allows managing users.
|
|
type: string
|
|
key:
|
|
example: user.manage
|
|
type: string
|
|
name:
|
|
example: User Management
|
|
type: string
|
|
requires_pin:
|
|
example: true
|
|
type: boolean
|
|
updated_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionGroupResource:
|
|
properties:
|
|
module:
|
|
example: dul
|
|
type: string
|
|
module_label:
|
|
example: DUL
|
|
type: string
|
|
permissions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionGroupedResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionGroupResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionMini:
|
|
properties:
|
|
description:
|
|
example: Permission to view users.
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9a
|
|
type: string
|
|
key:
|
|
example: users.read
|
|
type: string
|
|
name:
|
|
example: View Users
|
|
type: string
|
|
requires_pin:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: permission
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionUpdateAttributes:
|
|
properties:
|
|
requires_pin:
|
|
example: true
|
|
type: boolean
|
|
required:
|
|
- requires_pin
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- permission_update
|
|
- permission
|
|
example: permission_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.PermissionUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.PilotProfileAttributes:
|
|
properties:
|
|
double_command_minutes:
|
|
type: integer
|
|
dul_base:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULBase'
|
|
type: array
|
|
flight_instructor_minutes:
|
|
type: integer
|
|
has_ifr_qualification:
|
|
type: boolean
|
|
ifr_flight_minutes:
|
|
type: integer
|
|
is_chief_pilot:
|
|
type: boolean
|
|
license_expired_at:
|
|
type: string
|
|
license_issued_at:
|
|
type: string
|
|
license_no:
|
|
maxLength: 120
|
|
type: string
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
night_flight_minutes:
|
|
type: integer
|
|
note:
|
|
type: string
|
|
pilot_category:
|
|
enum:
|
|
- regular
|
|
- freelance
|
|
- dry_lease
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
responsible_pilot_minutes:
|
|
type: integer
|
|
second_pilot_minutes:
|
|
type: integer
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
technician_license_no:
|
|
maxLength: 120
|
|
type: string
|
|
total_flight_minutes:
|
|
type: integer
|
|
weight_kg:
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.PilotProfileUpdateAttributes:
|
|
properties:
|
|
double_command_minutes:
|
|
type: integer
|
|
dul_base:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULBase'
|
|
type: array
|
|
flight_instructor_minutes:
|
|
type: integer
|
|
has_ifr_qualification:
|
|
type: boolean
|
|
ifr_flight_minutes:
|
|
type: integer
|
|
is_chief_pilot:
|
|
type: boolean
|
|
license_expired_at:
|
|
type: string
|
|
license_issued_at:
|
|
type: string
|
|
license_no:
|
|
maxLength: 120
|
|
type: string
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
night_flight_minutes:
|
|
type: integer
|
|
note:
|
|
type: string
|
|
pilot_category:
|
|
enum:
|
|
- regular
|
|
- freelance
|
|
- dry_lease
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
responsible_pilot_minutes:
|
|
type: integer
|
|
second_pilot_minutes:
|
|
type: integer
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
technician_license_no:
|
|
maxLength: 120
|
|
type: string
|
|
total_flight_minutes:
|
|
type: integer
|
|
weight_kg:
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto.ReauthAttributes:
|
|
properties:
|
|
method:
|
|
enum:
|
|
- pin
|
|
- password
|
|
example: pin
|
|
type: string
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- method
|
|
type: object
|
|
wucher_internal_transport_http_dto.RegisterAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
minLength: 8
|
|
type: string
|
|
username:
|
|
example: john.doe
|
|
maxLength: 100
|
|
minLength: 3
|
|
type: string
|
|
required:
|
|
- email
|
|
- first_name
|
|
- last_name
|
|
- password
|
|
- username
|
|
type: object
|
|
wucher_internal_transport_http_dto.RegisterData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RegisterAttributes'
|
|
type:
|
|
example: auth_register
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RegisterRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RegisterData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RequestSecurityPINAttributes:
|
|
properties:
|
|
method:
|
|
example: password
|
|
type: string
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
type: string
|
|
reauth_token:
|
|
example: sso_reauth_1234567890abcdef
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RequestSecurityPINData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RequestSecurityPINAttributes'
|
|
type:
|
|
example: auth_pin_request_reset
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RequestSecurityPINRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RequestSecurityPINData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RequestSecurityPINResetResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
message:
|
|
example: If allowed, a security PIN reset link has been sent to your
|
|
email.
|
|
type: string
|
|
type: object
|
|
type:
|
|
example: auth_pin_request_reset
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResendSetPasswordInviteAttributes:
|
|
properties:
|
|
user_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- user_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResendSetPasswordInviteData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResendSetPasswordInviteAttributes'
|
|
type:
|
|
example: auth_resend_set_password
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResendSetPasswordInviteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResendSetPasswordInviteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetPasswordAttributes:
|
|
properties:
|
|
confirm_password:
|
|
example: StrongP@ssw0rd!LongPassphrase
|
|
minLength: 8
|
|
type: string
|
|
new_password:
|
|
example: StrongP@ssw0rd!LongPassphrase
|
|
minLength: 8
|
|
type: string
|
|
token:
|
|
example: kP8k2...
|
|
type: string
|
|
required:
|
|
- confirm_password
|
|
- new_password
|
|
- token
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetPasswordData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetPasswordAttributes'
|
|
type:
|
|
example: auth_reset_password
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetPasswordRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetPasswordData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetSecurityPINAttributes:
|
|
properties:
|
|
confirm_pin:
|
|
example: "123456"
|
|
type: string
|
|
method:
|
|
example: password
|
|
type: string
|
|
new_pin:
|
|
example: "123456"
|
|
type: string
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
type: string
|
|
reauth_token:
|
|
example: sso_reauth_1234567890abcdef
|
|
type: string
|
|
token:
|
|
example: kP8k2...
|
|
type: string
|
|
required:
|
|
- confirm_pin
|
|
- new_pin
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetSecurityPINData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetSecurityPINAttributes'
|
|
type:
|
|
example: auth_reset_pin
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.ResetSecurityPINRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetSecurityPINData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
description:
|
|
example: Full access to all resources.
|
|
type: string
|
|
name:
|
|
example: admin
|
|
type: string
|
|
updated_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleCreateAttributes:
|
|
properties:
|
|
description:
|
|
example: Full access to all resources.
|
|
type: string
|
|
name:
|
|
example: admin
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleCreateAttributes'
|
|
type:
|
|
enum:
|
|
- role_create
|
|
- role
|
|
example: role_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleMini:
|
|
properties:
|
|
description:
|
|
example: Full access to all resources.
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: admin
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAssignAttributes:
|
|
properties:
|
|
permission_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e
|
|
type: string
|
|
required:
|
|
- permission_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAssignBulkData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionBulkAttributes'
|
|
type:
|
|
example: role_assign_permission_bulk
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAssignBulkRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAssignBulkData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAssignData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAssignAttributes'
|
|
type:
|
|
example: role_permission
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAssignRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAssignData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionAttributes:
|
|
properties:
|
|
permission_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e
|
|
type: string
|
|
role_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionBulkAttributes:
|
|
properties:
|
|
permission_ids:
|
|
example:
|
|
- '["018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e"'
|
|
- '"018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9f"]'
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- permission_ids
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionRemoveBulkData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionBulkAttributes'
|
|
type:
|
|
example: role_remove_permission_bulk
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionRemoveBulkRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionRemoveBulkData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9f
|
|
type: string
|
|
type:
|
|
example: role_permission
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RolePermissionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
permissions:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionResource'
|
|
type: array
|
|
type:
|
|
example: role
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleUpdateAttributes:
|
|
properties:
|
|
description:
|
|
example: Full access to all resources.
|
|
type: string
|
|
name:
|
|
example: admin
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- role_update
|
|
- role
|
|
example: role_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.RoleUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOLinkAttributes:
|
|
properties:
|
|
code:
|
|
example: 0.AXkA...
|
|
type: string
|
|
provider:
|
|
example: microsoft
|
|
type: string
|
|
required:
|
|
- code
|
|
- provider
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOLinkData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOLinkAttributes'
|
|
type:
|
|
example: auth_sso_link
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOLinkRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOLinkData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOLinkResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
provider:
|
|
example: microsoft
|
|
type: string
|
|
provider_subject:
|
|
example: 00000000-0000-0000-0000-000000000000
|
|
type: string
|
|
type: object
|
|
type:
|
|
example: auth_sso_link
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOUnlinkAttributes:
|
|
properties:
|
|
provider:
|
|
example: microsoft
|
|
type: string
|
|
required:
|
|
- provider
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOUnlinkData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOUnlinkAttributes'
|
|
type:
|
|
example: auth_sso_unlink
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOUnlinkRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOUnlinkData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SSOUnlinkResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
provider:
|
|
example: microsoft
|
|
type: string
|
|
unlinked:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_sso_unlink
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINChangeAttributes:
|
|
properties:
|
|
confirm_pin:
|
|
example: "654321"
|
|
type: string
|
|
current_pin:
|
|
example: "123456"
|
|
type: string
|
|
new_pin:
|
|
example: "654321"
|
|
type: string
|
|
required:
|
|
- confirm_pin
|
|
- current_pin
|
|
- new_pin
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINChangeData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINChangeAttributes'
|
|
type:
|
|
example: auth_pin_change
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINChangeRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINChangeData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINSetupAttributes:
|
|
properties:
|
|
confirm_pin:
|
|
example: "123456"
|
|
type: string
|
|
pin:
|
|
example: "123456"
|
|
type: string
|
|
required:
|
|
- confirm_pin
|
|
- pin
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINSetupData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINSetupAttributes'
|
|
type:
|
|
example: auth_pin_setup
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINSetupRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINSetupData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINSetupResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
configured:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_pin_setup
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINVerifyAttributes:
|
|
properties:
|
|
action:
|
|
example: a546de2f-f1e6-4c2c-ab03-9b4bf39f4d74
|
|
type: string
|
|
pin:
|
|
example: "123456"
|
|
type: string
|
|
required:
|
|
- action
|
|
- pin
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINVerifyData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINVerifyAttributes'
|
|
type:
|
|
example: auth_pin_verify
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINVerifyRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINVerifyData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.SecurityPINVerifyResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
action_token:
|
|
example: pinv_1234567890abcdef
|
|
type: string
|
|
action_token_ttl_ms:
|
|
example: 900000
|
|
type: integer
|
|
verified:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_pin_verify
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.SetPasswordAttributes:
|
|
properties:
|
|
password:
|
|
example: StrongP@ssw0rd
|
|
minLength: 8
|
|
type: string
|
|
token:
|
|
example: kP8k2...
|
|
type: string
|
|
required:
|
|
- password
|
|
- token
|
|
type: object
|
|
wucher_internal_transport_http_dto.SetPasswordData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SetPasswordAttributes'
|
|
type:
|
|
example: auth_set_password
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.SetPasswordRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SetPasswordData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.StaffProfileAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
role_label:
|
|
maxLength: 120
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.StaffProfileUpdateAttributes:
|
|
properties:
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
role_label:
|
|
maxLength: 120
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPConfirmAttributes:
|
|
properties:
|
|
code:
|
|
example: "123456"
|
|
type: string
|
|
user_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- code
|
|
- user_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPConfirmData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPConfirmAttributes'
|
|
type:
|
|
example: auth_totp_confirm
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPConfirmRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPConfirmData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPDisableAttributes:
|
|
properties:
|
|
user_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- user_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPDisableData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPDisableAttributes'
|
|
type:
|
|
example: auth_totp_disable
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPDisableRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPDisableData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPResetSetupData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ReauthAttributes'
|
|
type:
|
|
example: auth_totp_reset_setup
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPResetSetupRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPResetSetupData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPSetupAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
user_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- email
|
|
- user_id
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPSetupData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPSetupAttributes'
|
|
type:
|
|
example: auth_totp_setup
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPSetupRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPSetupData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPSetupResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
issuer:
|
|
example: Wucher
|
|
type: string
|
|
otpauth_url:
|
|
example: otpauth://totp/Wucher:user@example.com?...
|
|
type: string
|
|
secret:
|
|
example: JBSWY3DPEHPK3PXP
|
|
type: string
|
|
type: object
|
|
type:
|
|
example: auth_totp_setup
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPVerifyAttributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
code:
|
|
example: "123456"
|
|
type: string
|
|
required:
|
|
- challenge_token
|
|
- code
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPVerifyData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPVerifyAttributes'
|
|
type:
|
|
example: auth_totp_verify
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TOTPVerifyRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPVerifyData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TechnicianProfileAttributes:
|
|
properties:
|
|
is_chief_technician:
|
|
type: boolean
|
|
is_responsible_complaints:
|
|
type: boolean
|
|
license_no:
|
|
maxLength: 120
|
|
type: string
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.TechnicianProfileUpdateAttributes:
|
|
properties:
|
|
is_chief_technician:
|
|
type: boolean
|
|
is_responsible_complaints:
|
|
type: boolean
|
|
license_no:
|
|
maxLength: 120
|
|
type: string
|
|
location:
|
|
maxLength: 255
|
|
type: string
|
|
note:
|
|
type: string
|
|
postcode:
|
|
maxLength: 32
|
|
type: string
|
|
short_name:
|
|
maxLength: 120
|
|
type: string
|
|
street_line:
|
|
maxLength: 255
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.TimezoneUpdateAttributes:
|
|
properties:
|
|
timezone:
|
|
example: Asia/Jakarta
|
|
type: string
|
|
required:
|
|
- timezone
|
|
type: object
|
|
wucher_internal_transport_http_dto.TimezoneUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TimezoneUpdateAttributes'
|
|
type:
|
|
example: auth_timezone_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.TimezoneUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TimezoneUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.TokenResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
access_expires_in:
|
|
example: 900
|
|
type: integer
|
|
refresh_expires_in:
|
|
example: 2592000
|
|
type: integer
|
|
type: object
|
|
type:
|
|
example: auth_tokens
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserAttributes:
|
|
properties:
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
email_verified_at:
|
|
example: "2026-02-05T10:00:00Z"
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
is_previously_configured:
|
|
example: false
|
|
type: boolean
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
linked_sso:
|
|
example: false
|
|
type: boolean
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
pin_configured:
|
|
example: false
|
|
type: boolean
|
|
profile_picture:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserImage'
|
|
role:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleMini'
|
|
role_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
role_ids:
|
|
example:
|
|
- '["018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d"'
|
|
- '"018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e"]'
|
|
items:
|
|
type: string
|
|
type: array
|
|
roles:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleMini'
|
|
type: array
|
|
timezone:
|
|
example: Asia/Jakarta
|
|
type: string
|
|
totp_enabled:
|
|
example: false
|
|
type: boolean
|
|
username:
|
|
example: john.doe
|
|
type: string
|
|
webauthn_configured:
|
|
example: false
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserCreateAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
image_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
role_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
role_ids:
|
|
example:
|
|
- '["018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d"'
|
|
- '"018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9e"]'
|
|
items:
|
|
type: string
|
|
type: array
|
|
timezone:
|
|
example: Asia/Jakarta
|
|
type: string
|
|
username:
|
|
example: john.doe
|
|
maxLength: 100
|
|
minLength: 3
|
|
type: string
|
|
required:
|
|
- email
|
|
- first_name
|
|
- last_name
|
|
- role_id
|
|
- username
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserCreateAttributes'
|
|
type:
|
|
enum:
|
|
- user_create
|
|
- user
|
|
example: user_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserFoto:
|
|
properties:
|
|
download_url:
|
|
example: https://storage.example.com/base/lude.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
original_size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
thumbnail_download_url:
|
|
example: https://storage.example.com/base/lude.thumb.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9f
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserImage:
|
|
properties:
|
|
download_url:
|
|
example: https://example.com/presigned-url
|
|
type: string
|
|
original_size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
thumbnail_download_url:
|
|
example: https://example.com/presigned-thumb-url
|
|
type: string
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9f
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: user
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: user
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserUpdateAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
image_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
mobile_phone:
|
|
example: "+628123456789"
|
|
type: string
|
|
timezone:
|
|
example: Asia/Jakarta
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- user_update
|
|
- user
|
|
example: user_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.UserUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.VerifyEmailResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
verified:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_verify_email
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Pilot
|
|
type: string
|
|
note:
|
|
example: Helicopter pilot vocation
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationCreateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Pilot
|
|
type: string
|
|
note:
|
|
example: Helicopter pilot vocation
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationCreateAttributes'
|
|
type:
|
|
enum:
|
|
- vocation_create
|
|
- vocation
|
|
example: vocation_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: vocation
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationUpdateAttributes:
|
|
properties:
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: Pilot
|
|
type: string
|
|
note:
|
|
example: Helicopter pilot vocation
|
|
type: string
|
|
sortkey:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- vocation_update
|
|
- vocation
|
|
example: vocation_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.VocationUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnBeginResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
challenge_ttl_ms:
|
|
example: 300000
|
|
type: integer
|
|
public_key:
|
|
additionalProperties: true
|
|
type: object
|
|
type: object
|
|
type:
|
|
example: auth_webauthn_register_options
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginBeginAttributes:
|
|
properties:
|
|
email:
|
|
example: user@example.com
|
|
type: string
|
|
required:
|
|
- email
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginBeginData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginBeginAttributes'
|
|
type:
|
|
example: auth_webauthn_login_begin
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginBeginRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginBeginData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginFinishAttributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
credential:
|
|
items:
|
|
type: integer
|
|
type: array
|
|
required:
|
|
- challenge_token
|
|
- credential
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginFinishData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginFinishAttributes'
|
|
type:
|
|
example: auth_webauthn_login_finish
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnLoginFinishRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginFinishData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnRegisterBeginData:
|
|
properties:
|
|
type:
|
|
example: auth_webauthn_register_begin
|
|
type: string
|
|
required:
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnRegisterBeginRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnRegisterBeginData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnRegisterFinishAttributes:
|
|
properties:
|
|
challenge_token:
|
|
example: kP8k2...
|
|
type: string
|
|
credential:
|
|
items:
|
|
type: integer
|
|
type: array
|
|
name:
|
|
example: MacBook Touch ID
|
|
maxLength: 100
|
|
type: string
|
|
required:
|
|
- challenge_token
|
|
- credential
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnRegisterFinishData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnRegisterFinishAttributes'
|
|
type:
|
|
example: auth_webauthn_register_finish
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnRegisterFinishRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnRegisterFinishData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnResetSetupData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ReauthAttributes'
|
|
type:
|
|
example: auth_webauthn_reset_setup
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnResetSetupRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnResetSetupData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto.WebAuthnResetSetupResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
reset:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: auth_webauthn_reset_setup
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ActionSignoffSignAttributes:
|
|
properties:
|
|
complaint_id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
flight_id:
|
|
description: |-
|
|
FlightID — REQUIRED for the fleet (complaint-independent) sign-off; scopes it to a
|
|
flight so it no longer leaks across takeovers of the same aircraft. Ignored when
|
|
complaint_id is set (that sign-off is keyed by the complaint).
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
sign:
|
|
description: |-
|
|
Sign toggles the sign-off: true (or omitted) signs it, false unsigns (clears the
|
|
signature). Combine with complaint_id to toggle a specific complaint's sign-off.
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ActionSignoffSignData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ActionSignoffSignAttributes'
|
|
type:
|
|
example: action_signoff
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ActionSignoffSignRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ActionSignoffSignData'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateAttributes:
|
|
properties:
|
|
base_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
checklists:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateEntry'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- base_id
|
|
- checklists
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateAttributes'
|
|
type:
|
|
enum:
|
|
- air_rescuer_checklist_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateEntry:
|
|
properties:
|
|
items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.AirRescuerChecklistItemInput'
|
|
type: array
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
scope_code:
|
|
example: MO
|
|
type: string
|
|
title:
|
|
example: Monday Checklist
|
|
type: string
|
|
required:
|
|
- scope_code
|
|
- title
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateAttributes:
|
|
properties:
|
|
items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.AirRescuerChecklistItemInput'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- items
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateAttributes'
|
|
type:
|
|
enum:
|
|
- air_rescuer_checklist_item_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderAttributes:
|
|
properties:
|
|
items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderEntry'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- items
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderAttributes'
|
|
type:
|
|
enum:
|
|
- air_rescuer_checklist_item_reorder
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderEntry:
|
|
properties:
|
|
item_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
position:
|
|
example: 2
|
|
type: integer
|
|
required:
|
|
- item_uuid
|
|
- position
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateAttributes:
|
|
properties:
|
|
name:
|
|
example: Check radio
|
|
type: string
|
|
position:
|
|
example: 2
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- air_rescuer_checklist_item_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateAttributes:
|
|
properties:
|
|
new_items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.AirRescuerChecklistItemInput'
|
|
type: array
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
scope_code:
|
|
example: MO
|
|
type: string
|
|
title:
|
|
example: Monday Checklist Updated
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- air_rescuer_checklist_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintActionTakenAttributes:
|
|
properties:
|
|
action_taken:
|
|
description: |-
|
|
ActionTaken — corrective action text. Required when recording (create); on update an
|
|
empty value clears it (allowed only while the action has not been signed off).
|
|
example: Tightened engine mount and rechecked torque
|
|
type: string
|
|
aircraft_hours_at_fix:
|
|
example: "1250.1"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintActionTakenData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintActionTakenAttributes'
|
|
type:
|
|
enum:
|
|
- complaint_action_taken
|
|
- complaint
|
|
example: complaint_action_taken
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintActionTakenRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintActionTakenData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintCreateAttributes:
|
|
properties:
|
|
aircraft_hours_at_report:
|
|
description: AircraftHoursAtReport — OPTIONAL airframe hours recorded when
|
|
the defect was reported.
|
|
example: "1245.3"
|
|
type: string
|
|
description:
|
|
description: Description — the defect description. REQUIRED.
|
|
example: Engine 2 N2 vibration intermittent during cruise above 110 KIAS
|
|
type: string
|
|
flight_id:
|
|
description: |-
|
|
FlightID — the flight/report this complaint was filed in (attribution). OPTIONAL;
|
|
open-defect tracking stays per-helicopter so defects carry forward across flights.
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter_id:
|
|
description: HelicopterID — the helicopter this complaint is filed against.
|
|
REQUIRED.
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
mel_severity:
|
|
description: |-
|
|
MELSeverity — MEL (Minimum Equipment List) classification. OPTIONAL at creation:
|
|
omit it to file the complaint as "pending_mel" and classify later. It MUST be
|
|
classified (via update) before recording action taken. A pending complaint does
|
|
NOT ground the aircraft — grounding starts at classification. Values: 0 = NON-MEL
|
|
(grounds immediately), 1 = A (grace 1 day), 2 = B (3 days), 3 = C (10 days), 4 = D (120 days).
|
|
enum:
|
|
- 0
|
|
- 1
|
|
- 2
|
|
- 3
|
|
- 4
|
|
example: 2
|
|
type: integer
|
|
required:
|
|
- description
|
|
- helicopter_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintCreateAttributes'
|
|
type:
|
|
enum:
|
|
- complaint_create
|
|
- complaint
|
|
example: complaint_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintNSRSignAttributes:
|
|
properties:
|
|
nsr_reason:
|
|
description: NSRReason — OPTIONAL free-text justification for the NSR (MEL
|
|
deferral) decision.
|
|
example: Released under MEL A, defect deferred
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintNSRSignData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintNSRSignAttributes'
|
|
type:
|
|
enum:
|
|
- complaint_nsr_sign
|
|
- complaint_nsr
|
|
example: complaint_nsr_sign
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintNSRSignRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintNSRSignData'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintUpdateAttributes:
|
|
properties:
|
|
aircraft_hours_at_report:
|
|
description: AircraftHoursAtReport — airframe hours at report time.
|
|
example: "1245.3"
|
|
type: string
|
|
description:
|
|
description: Description — defect description.
|
|
example: Engine 2 vibration confirmed
|
|
type: string
|
|
mel_severity:
|
|
description: |-
|
|
MELSeverity — MEL classification. 0 = NON-MEL (immediate AOG), 1 = A (1 day),
|
|
2 = B (3 days), 3 = C (10 days), 4 = D (120 days). AOG after grace passes.
|
|
enum:
|
|
- 0
|
|
- 1
|
|
- 2
|
|
- 3
|
|
- 4
|
|
example: 2
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintUpdateAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
enum:
|
|
- complaint_update
|
|
- complaint
|
|
example: complaint_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- id
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ComplaintUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterAnyDeleteData:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterAnyDeleteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterAnyDeleteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterCreateAttributes:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
duty_date:
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDetailsInput'
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterShiftTime'
|
|
required:
|
|
- base_id
|
|
- duty_date
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCreateAttributes'
|
|
type:
|
|
enum:
|
|
- duty_roster_create
|
|
- duty_roster
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterCrewInput:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
shift_date:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterShiftDate'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewAttributes:
|
|
properties:
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDetailsInput'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDAttributes:
|
|
properties:
|
|
crew_id:
|
|
type: string
|
|
roster_id:
|
|
type: string
|
|
required:
|
|
- crew_id
|
|
- roster_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDAttributes'
|
|
type:
|
|
enum:
|
|
- duty_roster_crew_delete
|
|
- duty_roster_update
|
|
- duty_roster
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewAttributes'
|
|
type:
|
|
enum:
|
|
- duty_roster_crew_delete
|
|
- duty_roster_update
|
|
- duty_roster
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterDetailsInput:
|
|
properties:
|
|
doctor:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCrewInput'
|
|
type: array
|
|
helper:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCrewInput'
|
|
type: array
|
|
other_person:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterOtherPersonInput'
|
|
type: array
|
|
pilot:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterPilotCrewInput'
|
|
type: array
|
|
rescuer:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCrewInput'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterOtherPersonInput:
|
|
properties:
|
|
email:
|
|
example: guest@example.com
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Guest Person
|
|
type: string
|
|
other_person_id:
|
|
description: |-
|
|
OtherPersonID — OPTIONAL master person id to reuse (from GET /contact/other).
|
|
When set, name/mobile_phone/email are snapshotted from the master (may be omitted).
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterPilotCrewInput:
|
|
properties:
|
|
co_pilot:
|
|
type: boolean
|
|
crew_type:
|
|
enum:
|
|
- main
|
|
- additional
|
|
example: main
|
|
type: string
|
|
examiner:
|
|
type: boolean
|
|
flight_instructor:
|
|
type: boolean
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
line_checker:
|
|
type: boolean
|
|
shift_date:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterShiftDate'
|
|
supervisor:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterShiftDate:
|
|
properties:
|
|
date_end:
|
|
example: "2026-03-16"
|
|
type: string
|
|
date_start:
|
|
example: "2026-03-16"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterShiftTime:
|
|
properties:
|
|
shift_end:
|
|
example: "21:00"
|
|
type: string
|
|
shift_start:
|
|
example: "06:00"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterUpdateAttributes:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
duty_date:
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDetailsInput'
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterShiftTime'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterUpdateAttributes'
|
|
id:
|
|
type: string
|
|
type:
|
|
enum:
|
|
- duty_roster_update
|
|
- duty_roster
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.DutyRosterUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseCreateAttributes:
|
|
properties:
|
|
complaint_id:
|
|
description: |-
|
|
ComplaintID — OPTIONAL complaint (UUIDv7) this release closes. Set it to scope the
|
|
release to a specific defect; leave empty for a standalone (aircraft-clear) release.
|
|
example: 019d6774-1111-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
easa_ac_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
easa_date:
|
|
example: "2026-06-16"
|
|
type: string
|
|
easa_location:
|
|
example: LOWI
|
|
type: string
|
|
easa_maint_manual_rev_airframe:
|
|
example: Rev 12
|
|
type: string
|
|
easa_maint_manual_rev_engine:
|
|
example: Rev 8
|
|
type: string
|
|
easa_permit_no:
|
|
example: 145.A.50
|
|
type: string
|
|
easa_signer_id:
|
|
description: EASASignerID — OPTIONAL contact id (UUIDv7) of the signer/technician.
|
|
Required only to sign.
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
easa_wo_no:
|
|
example: WO-2026-001
|
|
type: string
|
|
flight_id:
|
|
description: FlightID — OPTIONAL flight context. Used for the standalone (no-complaint)
|
|
sign-off gate.
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
sign:
|
|
description: |-
|
|
Sign, when true, signs the release immediately at creation. Requires all
|
|
required fields to be present; otherwise the request is rejected.
|
|
example: false
|
|
type: boolean
|
|
required:
|
|
- helicopter_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseCreateAttributes'
|
|
type:
|
|
enum:
|
|
- easa_release_create
|
|
- easa_release
|
|
example: easa_release_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseUpdateAttributes:
|
|
properties:
|
|
easa_ac_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
easa_date:
|
|
example: "2026-06-16"
|
|
type: string
|
|
easa_location:
|
|
example: LOWI
|
|
type: string
|
|
easa_maint_manual_rev_airframe:
|
|
example: Rev 12
|
|
type: string
|
|
easa_maint_manual_rev_engine:
|
|
example: Rev 8
|
|
type: string
|
|
easa_permit_no:
|
|
example: 145.A.50
|
|
type: string
|
|
easa_signer_id:
|
|
description: EASASignerID — OPTIONAL contact id (UUIDv7) of the signer/technician.
|
|
Required only to sign.
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
easa_wo_no:
|
|
example: WO-2026-001
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseUpdateAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
enum:
|
|
- easa_release_update
|
|
- easa_release
|
|
example: easa_release_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- id
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.EASAReleaseUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FMReportUpdateAttributes:
|
|
properties:
|
|
engine1_gpc_n1:
|
|
description: Engine1GpcN1 - GPC/N1 value for engine 1. Optional.
|
|
example: GPC/N1 63.2
|
|
type: string
|
|
engine1_ptc_n2:
|
|
description: Engine1PtcN2 - PTC/N2 value for engine 1. Optional.
|
|
example: PTC/N2 61.8
|
|
type: string
|
|
engine2_gpc_n1:
|
|
description: Engine2GpcN1 - GPC/N1 value for engine 2. Optional.
|
|
example: GPC/N1 63.2
|
|
type: string
|
|
engine2_ptc_n2:
|
|
description: Engine2PtcN2 - PTC/N2 value for engine 2. Optional.
|
|
example: PTC/N2 61.8
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FMReportUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FMReportUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- fm_report_update
|
|
- fm_report
|
|
example: fm_report_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FMReportUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FMReportUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateAttributes:
|
|
properties:
|
|
category:
|
|
example: document
|
|
type: string
|
|
file_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_primary:
|
|
example: false
|
|
type: boolean
|
|
ref_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
ref_type:
|
|
example: helicopter
|
|
type: string
|
|
sort_order:
|
|
example: 0
|
|
type: integer
|
|
required:
|
|
- file_id
|
|
- ref_id
|
|
- ref_type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_attachment_create
|
|
- file_manager_attachment
|
|
example: file_manager_attachment_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileAircraftBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileAircraftCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileAircraftBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileAircraftBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileAircraftCreateAttributes:
|
|
properties:
|
|
aircraft_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: aircraft.jpg
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- aircraft_uuid
|
|
- name
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileBaseBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileBaseCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileBaseBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileBaseBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileBaseCreateAttributes:
|
|
properties:
|
|
base_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: base.jpg
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- base_uuid
|
|
- name
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadAttributes:
|
|
properties:
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_cancel_upload
|
|
example: file_manager_file_cancel_upload
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileDULBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileDULCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileDULBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileDULBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileDULCreateAttributes:
|
|
properties:
|
|
dul_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: dul.jpg
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- name
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileMissionBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileMissionCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileMissionBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileMissionBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileMissionCreateAttributes:
|
|
properties:
|
|
mission_uuid:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
name:
|
|
example: mission-brief.pdf
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- mission_uuid
|
|
- name
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileTakeoverBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileTakeoverCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileTakeoverBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileTakeoverBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileTakeoverCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: takeover-report.pdf
|
|
type: string
|
|
takeover_uuid:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- name
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileTemplateCreateAttributes:
|
|
properties:
|
|
helicopter_id:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
name:
|
|
example: collabora-draft.docx
|
|
type: string
|
|
takeover_id:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
template_uuid:
|
|
example: 019f0386-0a00-7a4a-a2d8-30afc0e0c3ad
|
|
type: string
|
|
required:
|
|
- helicopter_id
|
|
- name
|
|
- template_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileTemplateCreateRequest:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileTemplateCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create_from_template
|
|
- file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUpdateAttributes:
|
|
properties:
|
|
folder_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: policy-v2.pdf
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- file_manager_file_update
|
|
- file_manager_file
|
|
example: file_manager_file_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentAttributes:
|
|
properties:
|
|
content_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: policy-final.pdf
|
|
type: string
|
|
size_bytes:
|
|
example: 1024
|
|
minimum: 0
|
|
type: integer
|
|
required:
|
|
- content_type
|
|
- name
|
|
- size_bytes
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_upload_intent
|
|
example: file_manager_file_upload_intent
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUserBulkCreateItem:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUserCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_file_create
|
|
- file_manager_file
|
|
example: file_manager_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUserBulkCreateRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUserBulkCreateItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFileUserCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: profile.jpg
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
user_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- name
|
|
- upload_intent_uuid
|
|
- user_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderCreateAttributes:
|
|
properties:
|
|
name:
|
|
example: operations
|
|
type: string
|
|
parent_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderCreateAttributes'
|
|
type:
|
|
enum:
|
|
- file_manager_folder_create
|
|
- file_manager_folder
|
|
example: file_manager_folder_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderUpdateAttributes:
|
|
properties:
|
|
name:
|
|
example: operations-updated
|
|
type: string
|
|
parent_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- file_manager_folder_update
|
|
- file_manager_folder
|
|
example: file_manager_folder_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerFolderUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerNodeMoveBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodeMoveItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerNodeMoveItem:
|
|
properties:
|
|
destination_folder_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerNodePurgeBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodePurgeItem'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FileManagerNodePurgeItem:
|
|
properties:
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
required:
|
|
- uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusCreateAttributes:
|
|
properties:
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusFileAttributes'
|
|
type: array
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
maintenance_schedules:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes'
|
|
type: array
|
|
required:
|
|
- helicopter_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusCreateAttributes'
|
|
type:
|
|
enum:
|
|
- fleet_status_create
|
|
- fleet_status
|
|
example: fleet_status_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusSummaryAirframeUpdate:
|
|
properties:
|
|
cycles:
|
|
example: 320
|
|
type: number
|
|
hours:
|
|
example: 6610.5
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusSummaryEngineUpdate:
|
|
properties:
|
|
ccc:
|
|
example: 44
|
|
type: number
|
|
gpc_ng_n1:
|
|
example: 98.7
|
|
type: number
|
|
hours:
|
|
example: 8001.7
|
|
type: number
|
|
ptc_nf_n2:
|
|
example: 97.2
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusSummaryUpdate:
|
|
properties:
|
|
airframe:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusSummaryAirframeUpdate'
|
|
engine_1:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusSummaryEngineUpdate'
|
|
engine_2:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusSummaryEngineUpdate'
|
|
flight_reports:
|
|
example: 80
|
|
type: number
|
|
hook_releases:
|
|
example: 10
|
|
type: number
|
|
landings:
|
|
example: 120
|
|
type: number
|
|
rotor_brake_cycles:
|
|
example: 8
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusUpdateAttributes:
|
|
properties:
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusFileAttributes'
|
|
type: array
|
|
helicopter_id:
|
|
type: string
|
|
maintenance_schedules:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes'
|
|
type: array
|
|
summary:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusSummaryUpdate'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusUpdateAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
enum:
|
|
- fleet_status_update
|
|
- fleet_status
|
|
example: fleet_status_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FleetStatusUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateAttributes:
|
|
properties:
|
|
co_pilot_id:
|
|
type: string
|
|
customer_name:
|
|
type: string
|
|
delivery_note_number:
|
|
type: string
|
|
engine:
|
|
type: string
|
|
flight_duration_seconds:
|
|
type: integer
|
|
flight_landing:
|
|
type: string
|
|
flight_plan_distance:
|
|
type: number
|
|
flight_plan_time_seconds:
|
|
type: integer
|
|
flight_plan_true_course:
|
|
type: number
|
|
flight_positioning:
|
|
example: false
|
|
type: boolean
|
|
flight_red_seconds:
|
|
type: integer
|
|
flight_take_off:
|
|
type: string
|
|
from_hospital_id:
|
|
type: string
|
|
from_icao_id:
|
|
type: string
|
|
fuel_after_flight:
|
|
type: number
|
|
fuel_before_flight:
|
|
type: number
|
|
fuel_planning:
|
|
type: number
|
|
fuel_upload:
|
|
type: number
|
|
hec:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECAttributes'
|
|
heslo:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOAttributes'
|
|
hook_releases:
|
|
type: integer
|
|
landing_count:
|
|
type: integer
|
|
logging:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOLoggingAttributes'
|
|
max_n1:
|
|
type: number
|
|
max_n2:
|
|
type: number
|
|
mission_id:
|
|
type: string
|
|
other_information:
|
|
type: string
|
|
pax_count:
|
|
type: integer
|
|
rotor_brake_cycle:
|
|
type: integer
|
|
ticket_no:
|
|
type: string
|
|
to_hospital_id:
|
|
type: string
|
|
to_icao_id:
|
|
type: string
|
|
required:
|
|
- mission_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateAttributes'
|
|
type:
|
|
enum:
|
|
- flight_data_create
|
|
- flight_data
|
|
example: flight_data_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECAttributes:
|
|
properties:
|
|
flights:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECFlight'
|
|
type: array
|
|
loads:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECLoad'
|
|
type: array
|
|
slings:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECFlight:
|
|
properties:
|
|
equipment_id:
|
|
description: 'Facility category: hec-rope-label.'
|
|
example: string
|
|
type: string
|
|
equipment_name:
|
|
example: string
|
|
type: string
|
|
hec_cycle:
|
|
example: 0
|
|
type: integer
|
|
rot:
|
|
example: 0
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECLoad:
|
|
properties:
|
|
load_category:
|
|
description: Weight band for the HEC load, e.g. "bis 199 kg", "200-600 kg",
|
|
"600-800 kg", "800-1000 kg".
|
|
example: 200-600 kg
|
|
type: string
|
|
quantity:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHECSling:
|
|
properties:
|
|
sling_id:
|
|
description: 'Facility category: hec-rope-length.'
|
|
example: string
|
|
type: string
|
|
sling_name:
|
|
example: string
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOAttributes:
|
|
properties:
|
|
flights:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOFlight'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOFlight:
|
|
properties:
|
|
heslo_rope_label_id:
|
|
description: 'Facility category: heslo-rope-label.'
|
|
example: string
|
|
type: string
|
|
heslo_rope_label_name:
|
|
example: string
|
|
type: string
|
|
rot:
|
|
example: 0
|
|
type: integer
|
|
slings:
|
|
description: 'Facility category: heslo-rope-length.'
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOHESLOSling:
|
|
properties:
|
|
sling_id:
|
|
description: 'Facility category: heslo-rope-length.'
|
|
example: string
|
|
type: string
|
|
sling_name:
|
|
example: string
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOLoggingAttributes:
|
|
properties:
|
|
slings:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateSPOLoggingSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataCreateSPOLoggingSling:
|
|
properties:
|
|
sling_id:
|
|
description: 'Facility category: heslo-hook.'
|
|
example: string
|
|
type: string
|
|
sling_name:
|
|
example: string
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateAttributes'
|
|
type:
|
|
enum:
|
|
- flight_data_update
|
|
example: flight_data_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.FlightDataUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterCreateAttributes:
|
|
properties:
|
|
aog:
|
|
example: false
|
|
type: boolean
|
|
aog_reason:
|
|
example: Main rotor gearbox fault
|
|
type: string
|
|
consumption_lt_min:
|
|
example: 4.1
|
|
type: number
|
|
designation:
|
|
example: OE-XHZ
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
engine_1:
|
|
example: TM
|
|
type: string
|
|
engine_2:
|
|
example: TM
|
|
type: string
|
|
file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
identifier:
|
|
example: ABC
|
|
type: string
|
|
igb:
|
|
example: false
|
|
type: boolean
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
lh:
|
|
example: true
|
|
type: boolean
|
|
mgb:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary HEMS helicopter
|
|
type: string
|
|
nr1:
|
|
example: true
|
|
type: boolean
|
|
nr2:
|
|
example: true
|
|
type: boolean
|
|
rh:
|
|
example: true
|
|
type: boolean
|
|
sortkey:
|
|
example: 10
|
|
type: integer
|
|
tgb:
|
|
example: true
|
|
type: boolean
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
utc_offset:
|
|
example: -1
|
|
type: integer
|
|
required:
|
|
- designation
|
|
- identifier
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterCreateAttributes'
|
|
type:
|
|
enum:
|
|
- helicopter_create
|
|
- helicopter
|
|
example: helicopter_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadAttributes:
|
|
properties:
|
|
upload_intent_uuid:
|
|
example: 019d6d0d-2de2-7db1-80a2-2862d43af620
|
|
type: string
|
|
required:
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadAttributes'
|
|
type:
|
|
enum:
|
|
- helicopter_file_cancel_upload
|
|
example: helicopter_file_cancel_upload
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCreateAttributes:
|
|
properties:
|
|
file_name:
|
|
example: Before Flight Checklist.pdf
|
|
type: string
|
|
folder_uuid:
|
|
example: 019d6d0d-8c24-72e3-9f58-c9ea0fbf0bb1
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
section:
|
|
enum:
|
|
- bfi
|
|
- fpwb
|
|
- afi
|
|
example: bfi
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 019d6d0d-2de2-7db1-80a2-2862d43af620
|
|
type: string
|
|
required:
|
|
- file_name
|
|
- section
|
|
- upload_intent_uuid
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCreateBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCreateData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCreateAttributes'
|
|
type:
|
|
enum:
|
|
- helicopter_file_create
|
|
- helicopter_file
|
|
example: helicopter_file_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileDeleteData:
|
|
properties:
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
enum:
|
|
- helicopter_file_delete
|
|
- helicopter_file
|
|
example: helicopter_file_delete
|
|
type: string
|
|
required:
|
|
- id
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileDeleteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileDeleteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUpdateAttributes:
|
|
properties:
|
|
file_name:
|
|
example: Before Flight Checklist v2.pdf
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
section:
|
|
enum:
|
|
- bfi
|
|
- fpwb
|
|
- afi
|
|
example: fpwb
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUpdateBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUpdateData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUpdateAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
enum:
|
|
- helicopter_file_update
|
|
- helicopter_file
|
|
example: helicopter_file_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- id
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUploadAttributes:
|
|
properties:
|
|
content_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: Before Flight Checklist.pdf
|
|
type: string
|
|
size_bytes:
|
|
example: 1024
|
|
minimum: 0
|
|
type: integer
|
|
required:
|
|
- content_type
|
|
- name
|
|
- size_bytes
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUploadBulkRequest:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUploadData'
|
|
minItems: 1
|
|
type: array
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterFileUploadData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUploadAttributes'
|
|
type:
|
|
enum:
|
|
- helicopter_file_upload
|
|
example: helicopter_file_upload
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterUpdateAttributes:
|
|
properties:
|
|
aog:
|
|
example: false
|
|
type: boolean
|
|
aog_reason:
|
|
example: Main rotor gearbox fault
|
|
type: string
|
|
consumption_lt_min:
|
|
example: 4.1
|
|
type: number
|
|
designation:
|
|
example: OE-XHZ
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
engine_1:
|
|
example: TM
|
|
type: string
|
|
engine_2:
|
|
example: TM
|
|
type: string
|
|
file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e90
|
|
type: string
|
|
identifier:
|
|
example: ABC
|
|
type: string
|
|
igb:
|
|
example: false
|
|
type: boolean
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
lh:
|
|
example: true
|
|
type: boolean
|
|
mgb:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary HEMS helicopter
|
|
type: string
|
|
nr1:
|
|
example: true
|
|
type: boolean
|
|
nr2:
|
|
example: true
|
|
type: boolean
|
|
rh:
|
|
example: true
|
|
type: boolean
|
|
sortkey:
|
|
example: 10
|
|
type: integer
|
|
tgb:
|
|
example: true
|
|
type: boolean
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
utc_offset:
|
|
example: -1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- helicopter_update
|
|
- helicopter
|
|
example: helicopter_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.HelicopterUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionUpsertAttributes'
|
|
type:
|
|
enum:
|
|
- last_flights_inspection_create
|
|
- last_flights_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteAttributes:
|
|
properties:
|
|
flight_inspection_id:
|
|
type: string
|
|
required:
|
|
- flight_inspection_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteAttributes'
|
|
type:
|
|
enum:
|
|
- last_flights_inspection_delete
|
|
- last_flights_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionUpsertAttributes'
|
|
type:
|
|
enum:
|
|
- last_flights_inspection_update
|
|
- last_flights_inspection
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.LastFlightsInspectionUpsertAttributes:
|
|
properties:
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcFileChecklistItem'
|
|
type: array
|
|
flight_inspection_id:
|
|
type: string
|
|
hydraulic_lh_checked:
|
|
type: string
|
|
hydraulic_rh_checked:
|
|
type: string
|
|
note:
|
|
type: string
|
|
oil_engine_nr1_checked:
|
|
type: string
|
|
oil_engine_nr2_checked:
|
|
type: string
|
|
oil_transmission_igb_checked:
|
|
type: string
|
|
oil_transmission_mgb_checked:
|
|
type: string
|
|
oil_transmission_tgb_checked:
|
|
type: string
|
|
required:
|
|
- flight_inspection_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFCompleteAttributes:
|
|
properties:
|
|
af_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
date:
|
|
example: "2026-06-17"
|
|
type: string
|
|
landing_count:
|
|
example: 3
|
|
type: integer
|
|
notes:
|
|
example: Vibration within limits after check flight
|
|
type: string
|
|
result:
|
|
enum:
|
|
- passed
|
|
- failed
|
|
example: passed
|
|
type: string
|
|
sign:
|
|
example: true
|
|
type: boolean
|
|
utc_time:
|
|
example: "2026-06-17T08:30:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFCompleteData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFCompleteAttributes'
|
|
type:
|
|
enum:
|
|
- mcf_complete
|
|
- mcf_sign
|
|
- mcf
|
|
example: mcf_sign
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFCompleteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFCompleteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFSetAttributes:
|
|
properties:
|
|
active:
|
|
example: true
|
|
type: boolean
|
|
af_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
date:
|
|
example: "2026-06-17"
|
|
type: string
|
|
flight_id:
|
|
description: FlightID — OPTIONAL flight this check flight is performed on
|
|
(on activate).
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
landing_count:
|
|
example: 3
|
|
type: integer
|
|
notes:
|
|
example: MCF required after engine mount work
|
|
type: string
|
|
result:
|
|
enum:
|
|
- passed
|
|
- failed
|
|
example: passed
|
|
type: string
|
|
utc_time:
|
|
example: "2026-06-17T08:30:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFSetData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFSetAttributes'
|
|
type:
|
|
enum:
|
|
- mcf_set
|
|
- mcf
|
|
example: mcf_set
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MCFSetRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFSetData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsCreateAttributes:
|
|
properties:
|
|
company_name:
|
|
example: Wucher
|
|
type: string
|
|
cover_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
logo_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
subtitle:
|
|
example: Flight operations platform
|
|
type: string
|
|
title:
|
|
example: Welcome to Wucher
|
|
type: string
|
|
required:
|
|
- company_name
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsCreateAttributes'
|
|
type:
|
|
enum:
|
|
- master_settings_create
|
|
- master_settings
|
|
example: master_settings_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertAttributes:
|
|
properties:
|
|
MS_ENTRA_AUTHORITY:
|
|
example: https://login.microsoftonline.com/
|
|
type: string
|
|
MS_ENTRA_CLIENT_ID:
|
|
example: your-client-id
|
|
type: string
|
|
MS_ENTRA_CLIENT_SECRET:
|
|
example: '********'
|
|
type: string
|
|
MS_ENTRA_REDIRECT_URL:
|
|
example: https://example.com/api/v1/auth/microsoft/callback
|
|
type: string
|
|
MS_ENTRA_SCOPES:
|
|
example: openid,profile,email
|
|
type: string
|
|
MS_ENTRA_TENANT_ID:
|
|
example: your-tenant-id
|
|
type: string
|
|
required:
|
|
- MS_ENTRA_AUTHORITY
|
|
- MS_ENTRA_CLIENT_ID
|
|
- MS_ENTRA_REDIRECT_URL
|
|
- MS_ENTRA_SCOPES
|
|
- MS_ENTRA_TENANT_ID
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertAttributes'
|
|
type:
|
|
enum:
|
|
- master_settings_microsoft_entra_upsert
|
|
- master_settings
|
|
example: master_settings_microsoft_entra_upsert
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsUpdateAttributes:
|
|
properties:
|
|
company_name:
|
|
example: Wucher
|
|
type: string
|
|
cover_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
logo_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
subtitle:
|
|
example: Flight operations platform
|
|
type: string
|
|
title:
|
|
example: Welcome to Wucher
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsUpdateAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
enum:
|
|
- master_settings_update
|
|
- master_settings
|
|
example: master_settings_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MasterSettingsUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionCreateAttributes:
|
|
properties:
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionFileInput'
|
|
type: array
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
note:
|
|
example: Mission note
|
|
type: string
|
|
subtype_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a99
|
|
type: string
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
required:
|
|
- flight_id
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionCreateAttributes'
|
|
type:
|
|
enum:
|
|
- mission_create
|
|
- mission
|
|
example: mission_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionFileInput:
|
|
properties:
|
|
name:
|
|
example: mission-brief.pdf
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionTypeCreateAttributes:
|
|
properties:
|
|
code_type:
|
|
example: HEMS
|
|
type: string
|
|
name:
|
|
example: HEMS
|
|
type: string
|
|
required:
|
|
- code_type
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionTypeCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionTypeCreateAttributes'
|
|
type:
|
|
enum:
|
|
- mission_type_create
|
|
- mission_type
|
|
example: mission_type_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionTypeCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionTypeCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionUpdateAttributes:
|
|
properties:
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionFileInput'
|
|
type: array
|
|
note:
|
|
example: Mission note
|
|
type: string
|
|
subtype_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a99
|
|
type: string
|
|
type:
|
|
example: SPO
|
|
type: string
|
|
required:
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionUpdateAttributes'
|
|
type:
|
|
enum:
|
|
- mission_update
|
|
- mission
|
|
example: mission_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.MissionUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.OtherPersonAttributesInput:
|
|
properties:
|
|
email:
|
|
example: guest@example.com
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Guest Person
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.OtherPersonRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.OtherPersonRequestData'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.OtherPersonRequestData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.OtherPersonAttributesInput'
|
|
type:
|
|
example: other_person
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcBeforeInspectionAttributes:
|
|
properties:
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcFileChecklistItem'
|
|
type: array
|
|
fuel_added_amount:
|
|
type: number
|
|
fuel_amount:
|
|
type: number
|
|
fuel_unit:
|
|
type: string
|
|
hydraulic_lh_checked:
|
|
type: boolean
|
|
hydraulic_rh_checked:
|
|
type: boolean
|
|
note:
|
|
type: string
|
|
oil_engine_nr1_checked:
|
|
type: boolean
|
|
oil_engine_nr2_checked:
|
|
type: boolean
|
|
oil_transmission_igb_checked:
|
|
type: boolean
|
|
oil_transmission_mgb_checked:
|
|
type: boolean
|
|
oil_transmission_tgb_checked:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcCreateAttributes:
|
|
properties:
|
|
flight_id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcInspectionCreateAttributes'
|
|
required:
|
|
- flight_id
|
|
- helicopter_id
|
|
- inspection
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcCreateAttributes'
|
|
type:
|
|
enum:
|
|
- reserve_ac_create
|
|
- reserve_ac
|
|
example: reserve_ac_create
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcDeleteData:
|
|
properties:
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
required:
|
|
- id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcDeleteRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcDeleteData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcFileChecklistItem:
|
|
properties:
|
|
helicopter_file_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-111111111111
|
|
type: string
|
|
is_done:
|
|
example: true
|
|
type: boolean
|
|
required:
|
|
- helicopter_file_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcFleetStatusFileAttributes:
|
|
properties:
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcFileChecklistItem'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcInspectionCreateAttributes:
|
|
properties:
|
|
before:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcBeforeInspectionAttributes'
|
|
fleet_status_file:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcFleetStatusFileAttributes'
|
|
inspection_date:
|
|
example: "2026-04-15"
|
|
type: string
|
|
prepare:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcPrepareInspectionAttributes'
|
|
required:
|
|
- before
|
|
- inspection_date
|
|
- prepare
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcInspectionUpdateAttributes:
|
|
properties:
|
|
before:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcBeforeInspectionAttributes'
|
|
inspection_date:
|
|
example: "2026-04-15"
|
|
type: string
|
|
prepare:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcPrepareInspectionAttributes'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcPrepareInspectionAttributes:
|
|
properties:
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcFileChecklistItem'
|
|
type: array
|
|
notam_briefing:
|
|
type: boolean
|
|
operational_flight_plan:
|
|
type: boolean
|
|
weather_briefing:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcUpdateAttributes:
|
|
properties:
|
|
flight_id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcInspectionUpdateAttributes'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcUpdateAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
enum:
|
|
- reserve_ac_update
|
|
- reserve_ac
|
|
example: reserve_ac_update
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.ReserveAcUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverBaseRef:
|
|
properties:
|
|
id:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverCreateAttributes:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
duty_date:
|
|
type: string
|
|
edited_template_file_ids:
|
|
items:
|
|
type: string
|
|
type: array
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateFileInput'
|
|
type: array
|
|
helicopter_id:
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcInspectionCreateAttributes'
|
|
notes:
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterDetailsInput'
|
|
required:
|
|
- duty_date
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverCreateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateAttributes'
|
|
type:
|
|
enum:
|
|
- takeover_create
|
|
- takeover
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverCreateFileInput:
|
|
properties:
|
|
file_id:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
name:
|
|
example: takeover-report.pdf
|
|
type: string
|
|
upload_intent_uuid:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverCreateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverRosterCrewInput:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverRosterDetailsInput:
|
|
properties:
|
|
doctor:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterCrewInput'
|
|
type: array
|
|
helper:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterCrewInput'
|
|
type: array
|
|
other_person:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterOtherPersonInput'
|
|
type: array
|
|
pilot:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterPilotInput'
|
|
type: array
|
|
rescuer:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterCrewInput'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverRosterOtherPersonInput:
|
|
properties:
|
|
email:
|
|
example: guest@example.com
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Guest Person
|
|
type: string
|
|
other_person_id:
|
|
description: OtherPersonID — OPTIONAL master person id to reuse (from GET
|
|
/contact/other).
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverRosterPilotInput:
|
|
properties:
|
|
co_pilot:
|
|
type: boolean
|
|
crew_type:
|
|
enum:
|
|
- main
|
|
- additional
|
|
example: main
|
|
type: string
|
|
examiner:
|
|
type: boolean
|
|
flight_instructor:
|
|
type: boolean
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
line_checker:
|
|
type: boolean
|
|
supervisor:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverUpdateAttributes:
|
|
properties:
|
|
base_id:
|
|
type: string
|
|
bases:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverBaseRef'
|
|
duty_date:
|
|
type: string
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateFileInput'
|
|
type: array
|
|
files_add:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateFileInput'
|
|
type: array
|
|
files_remove:
|
|
items:
|
|
type: string
|
|
type: array
|
|
files_replace:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateFileInput'
|
|
type: array
|
|
helicopter_id:
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcInspectionCreateAttributes'
|
|
notes:
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterDetailsInput'
|
|
roster_details:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverRosterDetailsInput'
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverUpdateData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverUpdateAttributes'
|
|
id:
|
|
type: string
|
|
type:
|
|
enum:
|
|
- takeover_update
|
|
- takeover
|
|
type: string
|
|
required:
|
|
- attributes
|
|
- type
|
|
type: object
|
|
wucher_internal_transport_http_dto_request.TakeoverUpdateRequest:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverUpdateData'
|
|
required:
|
|
- data
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ActionSignoffAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
signed:
|
|
description: Signed — true once checked; gates the maintenance release form.
|
|
example: false
|
|
type: boolean
|
|
signed_at:
|
|
description: SignedAt / SignedBy — when/who signed; empty until signed.
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
signed_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
signed_by_name:
|
|
description: SignedByName / SignedByShort — resolved display name + 3-letter
|
|
short of the signer.
|
|
example: John Doe
|
|
type: string
|
|
signed_by_short:
|
|
example: JDO
|
|
type: string
|
|
updated_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ActionSignoffResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ActionSignoffAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
example: action_signoff
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ActionSignoffResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ActionSignoffResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistAttributes:
|
|
properties:
|
|
bases:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.AirRescuerChecklistBaseInfo'
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemResource'
|
|
type: array
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
scope_code:
|
|
example: TU
|
|
type: string
|
|
scope_code_de:
|
|
example: DI
|
|
type: string
|
|
title:
|
|
example: Monday Checklist
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistBaseGroupAttributes:
|
|
properties:
|
|
bases:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.AirRescuerChecklistBaseInfo'
|
|
tabs:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistTabResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistBaseGroupResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistBaseGroupAttributes'
|
|
id:
|
|
example: base-018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: air_rescuer_checklist_group
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistCATChecklistSummary:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
title:
|
|
example: Cockpit Flugretter
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistCATGroup:
|
|
properties:
|
|
checklists:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistCATChecklistSummary'
|
|
type: array
|
|
scope_code:
|
|
example: DA
|
|
type: string
|
|
scope_code_de:
|
|
example: TA
|
|
type: string
|
|
scope_code_name:
|
|
example: Daily
|
|
type: string
|
|
scope_code_name_de:
|
|
example: Taeglich
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistGroupedDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistBaseGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 8
|
|
type: integer
|
|
records_total:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistGroupedListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistBaseGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
total_bases:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistItemAttributes:
|
|
properties:
|
|
checklist_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Check radio
|
|
type: string
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistItemBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemData'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistItemData:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: air_rescuer_checklist_item
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistItemResource:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Oxygen supply check
|
|
type: string
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistItemResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemData'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: air_rescuer_checklist
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistTabChecklistDetail:
|
|
properties:
|
|
checklist_items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemResource'
|
|
type: array
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
title:
|
|
example: Monday Checklist
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.AirRescuerChecklistTabResource:
|
|
properties:
|
|
checklists:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistTabChecklistDetail'
|
|
type: array
|
|
groups:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistCATGroup'
|
|
type: array
|
|
scope_code:
|
|
example: DA
|
|
type: string
|
|
scope_code_de:
|
|
example: TA
|
|
type: string
|
|
scope_code_name:
|
|
example: Daily
|
|
type: string
|
|
scope_code_name_de:
|
|
example: Taeglich
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintAttributes:
|
|
properties:
|
|
action_signed:
|
|
example: true
|
|
type: boolean
|
|
action_signed_at:
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
action_signed_by_name:
|
|
example: John Doe
|
|
type: string
|
|
action_signed_by_short:
|
|
example: JDO
|
|
type: string
|
|
action_taken:
|
|
example: tightened mount
|
|
type: string
|
|
aircraft_hours_at_fix:
|
|
example: "1250.1"
|
|
type: string
|
|
aircraft_hours_at_report:
|
|
example: "1245.3"
|
|
type: string
|
|
created_at:
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
description:
|
|
example: Engine 2 N2 vibration intermittent during cruise above 110 KIAS
|
|
type: string
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusHelicopter'
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
mel:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintMEL'
|
|
nsr:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintNSR'
|
|
reported_at:
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
reported_by:
|
|
example: John Doe
|
|
type: string
|
|
reported_by_short:
|
|
example: JDO
|
|
type: string
|
|
status:
|
|
enum:
|
|
- active_non_mel
|
|
- active_mel
|
|
- serviced
|
|
example: active_mel
|
|
type: string
|
|
updated_at:
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintGroupedDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintHelicopterGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 1
|
|
type: integer
|
|
records_total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintGroupedListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintHelicopterGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintHelicopterGroupAttributes:
|
|
properties:
|
|
complaints:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResource'
|
|
type: array
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusHelicopter'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintHelicopterGroupResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintHelicopterGroupAttributes'
|
|
type:
|
|
example: complaint_helicopter_group
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintMEL:
|
|
properties:
|
|
classified_at:
|
|
description: ClassifiedAt / ClassifiedByName / ClassifiedByShort — when/who
|
|
classified the MEL.
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
classified_by_name:
|
|
example: John Doe
|
|
type: string
|
|
classified_by_short:
|
|
example: JDO
|
|
type: string
|
|
deadline:
|
|
description: Deadline — grace deadline; after this the aircraft is AOG. null
|
|
for NON-MEL.
|
|
example: "2026-06-18T03:04:05Z"
|
|
type: string
|
|
severity:
|
|
description: 'Severity — MEL class: 0=NON-MEL, 1=A, 2=B, 3=C, 4=D. Always
|
|
set (classification is required at creation).'
|
|
enum:
|
|
- 0
|
|
- 1
|
|
- 2
|
|
- 3
|
|
- 4
|
|
example: 2
|
|
type: integer
|
|
severity_label:
|
|
description: SeverityLabel — human label of the severity (NON-MEL/A/B/C/D).
|
|
example: B
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintNSR:
|
|
properties:
|
|
decided_at:
|
|
description: DecidedAt / DecidedByName / DecidedByShort — when/who decided
|
|
NSR (may differ from the reporter).
|
|
example: "2026-06-15T03:04:05Z"
|
|
type: string
|
|
decided_by_name:
|
|
example: John Doe
|
|
type: string
|
|
decided_by_short:
|
|
example: JDO
|
|
type: string
|
|
is_nsr:
|
|
description: 'IsNSR — Non-Safety Release: true = aircraft released to fly
|
|
despite the open defect.'
|
|
example: false
|
|
type: boolean
|
|
reason:
|
|
description: Reason — optional justification for the NSR decision.
|
|
example: not required
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
example: complaint
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ComplaintResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterAttributes:
|
|
properties:
|
|
bases:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseInfo'
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
duty_date:
|
|
example: "2026-03-16"
|
|
type: string
|
|
flight_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterHelicopterSummary'
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterDetailsResponse'
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftTime'
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterBaseGroupAttributes:
|
|
properties:
|
|
bases:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseInfo'
|
|
rosters:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterGroupRoster'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterBaseGroupResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseGroupAttributes'
|
|
type:
|
|
example: hems_base_roster_group
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterBaseInfo:
|
|
properties:
|
|
base_abbreviation:
|
|
example: G1
|
|
type: string
|
|
base_name:
|
|
example: Gallus 1 - Zurs Lech
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftTime'
|
|
type:
|
|
example: hems
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterCrew:
|
|
properties:
|
|
email:
|
|
example: doctor@example.com
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Hunter Wolfgang
|
|
type: string
|
|
role:
|
|
example: doctor
|
|
type: string
|
|
shift_date:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftDate'
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftTime'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteAttributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
deleted_count:
|
|
example: 1
|
|
type: integer
|
|
deleted_items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterDeletedCrewItem'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteAttributes'
|
|
type:
|
|
example: duty_roster_crew_delete
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterDeletedCrewItem:
|
|
properties:
|
|
crew_type:
|
|
example: main
|
|
type: string
|
|
date_end:
|
|
example: "2026-03-22"
|
|
type: string
|
|
date_start:
|
|
example: "2026-03-20"
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: Pilot One
|
|
type: string
|
|
role_code:
|
|
example: pilot
|
|
type: string
|
|
roster_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
user_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterDetailsResponse:
|
|
properties:
|
|
doctor:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrew'
|
|
type: array
|
|
helper:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrew'
|
|
type: array
|
|
other_person:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrew'
|
|
type: array
|
|
pilot:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterPilotCrew'
|
|
type: array
|
|
rescuer:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrew'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterGroupRoster:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
duty_date:
|
|
example: "2026-03-16"
|
|
type: string
|
|
flight_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterHelicopterSummary'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterDetailsResponse'
|
|
shift_time:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftTime'
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterGroupedDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 8
|
|
type: integer
|
|
records_total:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterGroupedListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseGroupResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
from:
|
|
example: "2026-03-16"
|
|
type: string
|
|
to:
|
|
example: "2026-04-15"
|
|
type: string
|
|
total_bases:
|
|
example: 8
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterHelicopterSummary:
|
|
properties:
|
|
designation:
|
|
example: OE-XHZ
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
identifier:
|
|
example: "1234"
|
|
type: string
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterPilotCrew:
|
|
properties:
|
|
co_pilot:
|
|
type: boolean
|
|
crew_type:
|
|
example: main
|
|
type: string
|
|
email:
|
|
example: pilot@example.com
|
|
type: string
|
|
examiner:
|
|
type: boolean
|
|
flight_instructor:
|
|
type: boolean
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
line_checker:
|
|
type: boolean
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Hunter Wolfgang
|
|
type: string
|
|
role:
|
|
example: pilot
|
|
type: string
|
|
shift_date:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterShiftDate'
|
|
supervisor:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: duty_roster
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterShiftDate:
|
|
properties:
|
|
date_end:
|
|
example: "2026-03-16"
|
|
type: string
|
|
date_start:
|
|
example: "2026-03-16"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.DutyRosterShiftTime:
|
|
properties:
|
|
shift_end:
|
|
example: "21:00"
|
|
type: string
|
|
shift_start:
|
|
example: "06:00"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.EASAReleaseAttributes:
|
|
properties:
|
|
complaint_id:
|
|
example: 019d6774-1111-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
created_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
easa_ac_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
easa_date:
|
|
example: "2026-06-16"
|
|
type: string
|
|
easa_location:
|
|
example: LOWI
|
|
type: string
|
|
easa_maint_manual_rev_airframe:
|
|
example: Rev 12
|
|
type: string
|
|
easa_maint_manual_rev_engine:
|
|
example: Rev 8
|
|
type: string
|
|
easa_permit_no:
|
|
example: 145.A.50
|
|
type: string
|
|
easa_signer_id:
|
|
description: EASASignerID — contact id (UUIDv7) of the signer/technician.
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
easa_signer_name:
|
|
description: EASASignerName / EASASignerShort — resolved display name + 3-letter
|
|
short of the signer contact.
|
|
example: John Doe
|
|
type: string
|
|
easa_signer_short:
|
|
example: JDO
|
|
type: string
|
|
easa_wo_no:
|
|
example: WO-2026-001
|
|
type: string
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
is_signed:
|
|
description: IsSigned — true once the release is signed (Release to Service);
|
|
then the complaint becomes fixed.
|
|
example: false
|
|
type: boolean
|
|
missing_sign_fields:
|
|
description: MissingSignFields — required fields still empty; must all be
|
|
filled before it can be signed.
|
|
items:
|
|
type: string
|
|
type: array
|
|
signed_at:
|
|
description: SignedAt / SignedBy — when/who signed; empty until signed.
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
signed_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
updated_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.EASAReleaseDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: easa_release_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.EASAReleaseListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.EASAReleaseResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
example: easa_release
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.EASAReleaseResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerActionBulkError:
|
|
properties:
|
|
code:
|
|
example: FILE_MANAGER_VALIDATION_FAILED
|
|
type: string
|
|
detail:
|
|
example: duplicate name in target folder
|
|
type: string
|
|
error_code:
|
|
example: "4222111"
|
|
type: string
|
|
status:
|
|
example: 422
|
|
type: integer
|
|
title:
|
|
example: Validation error
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerActionLocation:
|
|
properties:
|
|
folder_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerAttachmentListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerAttachmentResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerAttachmentResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerAttachmentAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_attachment
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerAttachmentResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerAttachmentResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerBreadcrumbItem:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: operations
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileBulkError:
|
|
properties:
|
|
code:
|
|
example: FILE_MANAGER_VALIDATION_FAILED
|
|
type: string
|
|
detail:
|
|
example: duplicate name in target folder
|
|
type: string
|
|
error_code:
|
|
example: "4222111"
|
|
type: string
|
|
status:
|
|
example: 422
|
|
type: integer
|
|
title:
|
|
example: Validation error
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
message:
|
|
example: created
|
|
type: string
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadResource:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
status:
|
|
example: canceled
|
|
type: string
|
|
type: object
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_file_cancel_upload_result
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileDetailResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileDetailAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_file
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileDetailResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileDetailResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_file
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_file
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileUploadIntentAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_file_upload_intent
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileWOPISessionData:
|
|
properties:
|
|
access_token:
|
|
example: eyJhbGciOiJIUzI1NiIs...
|
|
type: string
|
|
access_token_ttl:
|
|
description: |-
|
|
AccessTokenTTL is the access token's absolute expiry time, in epoch
|
|
milliseconds (equal to the JWT exp claim), as required by WOPI/Collabora.
|
|
example: 1782971996000
|
|
type: integer
|
|
collabora_action:
|
|
example: https://collabora.example.com/browser/123?WOPISrc=...
|
|
type: string
|
|
file_id:
|
|
example: 019f0386-0a00-7a4a-a2d8-30afc0e0c3ad
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFileWOPISessionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileWOPISessionData'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFolderDetailResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFolderDetailAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_folder
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFolderDetailResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFolderDetailResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFolderResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFolderAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_folder
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerFolderResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFolderResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerActionBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeResultResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerMoveNodeResultAttributes:
|
|
properties:
|
|
location:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerActionLocation'
|
|
node_type:
|
|
example: folder
|
|
type: string
|
|
status:
|
|
example: moved
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerMoveNodeResultResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeResultAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_move_result
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerNodeAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
extension:
|
|
example: pdf
|
|
type: string
|
|
mime_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: operations
|
|
type: string
|
|
node_type:
|
|
example: folder
|
|
type: string
|
|
parent_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
path_cache:
|
|
example: /root/operations
|
|
type: string
|
|
size_bytes:
|
|
example: 1024
|
|
type: integer
|
|
status:
|
|
example: ready
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerNodeListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerNodeResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
breadcrumb:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerBreadcrumbItem'
|
|
type: array
|
|
files:
|
|
example: 8
|
|
type: integer
|
|
folders:
|
|
example: 4
|
|
type: integer
|
|
is_root:
|
|
example: true
|
|
type: boolean
|
|
parent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
total:
|
|
example: 12
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerNodeResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerNodeAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_node
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerPurgeNodeBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerActionBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerPurgeNodeResultResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerPurgeNodeBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerPurgeNodeBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerPurgeNodeResultAttributes:
|
|
properties:
|
|
node_type:
|
|
example: folder
|
|
type: string
|
|
status:
|
|
example: purged
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerPurgeNodeResultResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerPurgeNodeResultAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_purge_result
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerTrashListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerTrashNodeResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
files:
|
|
example: 70
|
|
type: integer
|
|
folders:
|
|
example: 50
|
|
type: integer
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerTrashNodeAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-31T08:52:03Z"
|
|
type: string
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
extension:
|
|
example: pdf
|
|
type: string
|
|
mime_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: Documents
|
|
type: string
|
|
node_type:
|
|
example: folder
|
|
type: string
|
|
path_cache:
|
|
example: /Documents
|
|
type: string
|
|
size_bytes:
|
|
example: 123456
|
|
type: integer
|
|
trashed_at:
|
|
example: "2026-04-01T10:00:00Z"
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-31T08:52:03Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FileManagerTrashNodeResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerTrashNodeAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: file_manager_trash_node
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetHistoryEntry:
|
|
properties:
|
|
action:
|
|
example: easa_signed
|
|
type: string
|
|
actor:
|
|
example: 019e91e6-2908-7f37-93e6-015ed1b7587d
|
|
type: string
|
|
actor_name:
|
|
example: John Doe
|
|
type: string
|
|
at:
|
|
example: "2026-06-17T10:15:00Z"
|
|
type: string
|
|
entity_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
entity_type:
|
|
example: easa_release
|
|
type: string
|
|
message:
|
|
example: Release to Service (EASA signed)
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetHistoryListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetHistoryEntry'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusAttributes:
|
|
properties:
|
|
complaints:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusComplaint'
|
|
type: array
|
|
created_at:
|
|
example: "2026-05-29T07:43:06Z"
|
|
type: string
|
|
created_by:
|
|
example: John Doe
|
|
type: string
|
|
easa_release:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusEASARelease'
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusFile'
|
|
type: array
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusHelicopter'
|
|
maintenance_schedules:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes'
|
|
type: array
|
|
mcf:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusMCF'
|
|
serviced_at:
|
|
example: "2026-05-29T07:43:06Z"
|
|
type: string
|
|
status:
|
|
enum:
|
|
- active
|
|
- serviced
|
|
example: active
|
|
type: string
|
|
summary:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusSummary'
|
|
updated_at:
|
|
example: "2026-05-29T07:43:06Z"
|
|
type: string
|
|
updated_by:
|
|
example: John Doe
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 20
|
|
type: integer
|
|
records_total:
|
|
example: 100
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusDeleteResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: fleet_status_delete
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusFile:
|
|
properties:
|
|
category:
|
|
example: wb
|
|
type: string
|
|
download_url:
|
|
example: https://storage.example.com/fleet/wb.pdf?X-Amz-Signature=abc123
|
|
type: string
|
|
file_attachment_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-111111111111
|
|
type: string
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
name:
|
|
example: weight_balance.pdf
|
|
type: string
|
|
size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
thumbnail_download_url:
|
|
example: https://storage.example.com/fleet/wb.thumb.jpg?X-Amz-Signature=abc123
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 100
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusMarkServicedResponse:
|
|
properties:
|
|
data:
|
|
properties:
|
|
attributes:
|
|
properties:
|
|
serviced:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
type:
|
|
example: fleet_status_mark_serviced
|
|
type: string
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
example: fleet_status
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FleetStatusResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightAttributes:
|
|
properties:
|
|
code:
|
|
example: M-062226-001
|
|
type: string
|
|
created_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.UserRef'
|
|
date:
|
|
example: "2026-04-14"
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
deleted_by:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.UserRef'
|
|
draft:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDraftGroup'
|
|
type: array
|
|
mission_id:
|
|
example: 019e9640-f7af-7940-80e8-1e9a83013afb
|
|
type: string
|
|
status:
|
|
example: draft
|
|
type: string
|
|
steps:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightStepItem'
|
|
type: array
|
|
takeover:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightTakeoverSummary'
|
|
total_draft:
|
|
example: 6
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.UserRef'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDailyInspectionSummary:
|
|
properties:
|
|
date:
|
|
example: 17.04.2026
|
|
type: string
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
name:
|
|
example: Ganahl Stefan
|
|
type: string
|
|
short_name:
|
|
example: GAN
|
|
type: string
|
|
utc_time:
|
|
example: "10:57"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataAttributes:
|
|
properties:
|
|
co_pilot:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataCoPilotRef'
|
|
created_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
customer_name:
|
|
example: Air Service
|
|
type: string
|
|
delivery_note_number:
|
|
example: DN-1001
|
|
type: string
|
|
engine:
|
|
example: PW207D1
|
|
type: string
|
|
flight_duration_seconds:
|
|
example: 4500
|
|
type: integer
|
|
flight_landing:
|
|
example: "2026-04-20T09:15:00Z"
|
|
type: string
|
|
flight_plan_distance:
|
|
example: 120.5
|
|
type: number
|
|
flight_plan_time_seconds:
|
|
example: 4200
|
|
type: integer
|
|
flight_plan_true_course:
|
|
example: 182.3
|
|
type: number
|
|
flight_positioning:
|
|
example: false
|
|
type: boolean
|
|
flight_red_seconds:
|
|
example: 300
|
|
type: integer
|
|
flight_take_off:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
from:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataLocationRef'
|
|
fuel_after_flight:
|
|
example: 280
|
|
type: number
|
|
fuel_before_flight:
|
|
example: 420
|
|
type: number
|
|
fuel_planning:
|
|
example: 390
|
|
type: number
|
|
fuel_upload:
|
|
example: 100
|
|
type: number
|
|
hec:
|
|
allOf:
|
|
- $ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHECDetails'
|
|
x-note: Only returned for SPO missions
|
|
heslo:
|
|
allOf:
|
|
- $ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHESLODetails'
|
|
x-note: Only returned for SPO missions
|
|
hook_releases:
|
|
example: 0
|
|
type: integer
|
|
landing_count:
|
|
example: 1
|
|
type: integer
|
|
logging:
|
|
allOf:
|
|
- $ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOLoggingDetails'
|
|
x-note: Only returned for SPO missions
|
|
max_n1:
|
|
example: 97.5
|
|
type: number
|
|
max_n2:
|
|
example: 98.1
|
|
type: number
|
|
mission:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataMissionRef'
|
|
other_information:
|
|
type: string
|
|
pax_count:
|
|
example: 4
|
|
type: integer
|
|
roster_details:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterDetailsResponse'
|
|
rotor_brake_cycle:
|
|
example: 1
|
|
type: integer
|
|
status:
|
|
example: in_progress
|
|
type: string
|
|
ticket_no:
|
|
example: TKT-001
|
|
type: string
|
|
to:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataLocationRef'
|
|
updated_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataCoPilotRef:
|
|
properties:
|
|
email:
|
|
example: john.doe@example.com
|
|
type: string
|
|
first_name:
|
|
example: John
|
|
type: string
|
|
id:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
last_name:
|
|
example: Doe
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataLocationRef:
|
|
properties:
|
|
code:
|
|
example: WIII
|
|
type: string
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
label:
|
|
example: WIII
|
|
type: string
|
|
name:
|
|
example: General Hospital
|
|
type: string
|
|
type:
|
|
example: icao
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataMissionRef:
|
|
properties:
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataAttributes'
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
type:
|
|
example: flight_data
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHECDetails:
|
|
properties:
|
|
flights:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHECFlight'
|
|
type: array
|
|
loads:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHECLoad'
|
|
type: array
|
|
slings:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHECSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHECFlight:
|
|
properties:
|
|
equipment_id:
|
|
description: 'Facility category: hec-rope-label.'
|
|
type: string
|
|
equipment_name:
|
|
type: string
|
|
hec_cycle:
|
|
type: integer
|
|
id:
|
|
type: string
|
|
rot:
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHECLoad:
|
|
properties:
|
|
id:
|
|
type: string
|
|
load_category:
|
|
description: Weight band for the HEC load, e.g. "bis 199 kg", "200-600 kg",
|
|
"600-800 kg", "800-1000 kg".
|
|
example: 200-600 kg
|
|
type: string
|
|
quantity:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHECSling:
|
|
properties:
|
|
id:
|
|
type: string
|
|
sling_id:
|
|
description: 'Facility category: hec-rope-length.'
|
|
type: string
|
|
sling_name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHESLODetails:
|
|
properties:
|
|
flights:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHESLOFlight'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHESLOFlight:
|
|
properties:
|
|
heslo_rope_label_id:
|
|
description: 'Facility category: heslo-rope-label.'
|
|
type: string
|
|
heslo_rope_label_name:
|
|
type: string
|
|
id:
|
|
type: string
|
|
rot:
|
|
type: integer
|
|
slings:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOHESLOSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOHESLOSling:
|
|
properties:
|
|
id:
|
|
type: string
|
|
sling_id:
|
|
description: 'Facility category: heslo-rope-length.'
|
|
type: string
|
|
sling_name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOLoggingDetails:
|
|
properties:
|
|
slings:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataSPOLoggingSling'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDataSPOLoggingSling:
|
|
properties:
|
|
id:
|
|
type: string
|
|
sling_id:
|
|
description: 'Facility category: heslo-hook.'
|
|
type: string
|
|
sling_name:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDraftGroup:
|
|
properties:
|
|
items:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDraftItem'
|
|
type: array
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightDraftItem:
|
|
properties:
|
|
flight_data_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a55
|
|
type: string
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
status:
|
|
example: draft
|
|
type: string
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightHelicopterSummary:
|
|
properties:
|
|
aog:
|
|
example: false
|
|
type: boolean
|
|
designation:
|
|
example: AIRBUS H145
|
|
type: string
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
identifier:
|
|
example: D-HYAR
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
type:
|
|
example: H145
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightMissionTypeSummary:
|
|
properties:
|
|
completed:
|
|
example: 0
|
|
type: integer
|
|
draft:
|
|
example: 5
|
|
type: integer
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightAttributes'
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
type:
|
|
example: flight
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightStepItem:
|
|
properties:
|
|
complete:
|
|
example: true
|
|
type: boolean
|
|
completed_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
completed_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
mission_type:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightMissionTypeSummary'
|
|
type: array
|
|
phase:
|
|
example: duty_roster
|
|
type: string
|
|
position:
|
|
example: takeover
|
|
type: string
|
|
status:
|
|
example: completed
|
|
type: string
|
|
step:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.FlightTakeoverSummary:
|
|
properties:
|
|
daily_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDailyInspectionSummary'
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightHelicopterSummary'
|
|
id:
|
|
example: 019e8713-aa19-7fb7-a510-a0332dc69697
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterDetailsResponse'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterAttributes:
|
|
properties:
|
|
aog:
|
|
example: false
|
|
type: boolean
|
|
aog_reason:
|
|
example: Main rotor gearbox fault
|
|
type: string
|
|
consumption_lt_min:
|
|
example: 4.1
|
|
type: number
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterAuditUser'
|
|
designation:
|
|
example: OE-XHZ
|
|
type: string
|
|
dry:
|
|
example: false
|
|
type: boolean
|
|
engine_1:
|
|
example: TM
|
|
type: string
|
|
engine_2:
|
|
example: TM
|
|
type: string
|
|
foto:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterFoto'
|
|
identifier:
|
|
example: ABC-0001
|
|
type: string
|
|
igb:
|
|
example: false
|
|
type: boolean
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
is_in_use:
|
|
example: false
|
|
type: boolean
|
|
last_daily_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterLastDailyInspection'
|
|
lh:
|
|
example: true
|
|
type: boolean
|
|
maintenance_schedules:
|
|
description: |-
|
|
MaintenanceSchedules mirrors the helicopter's latest fleet status. It
|
|
always lists every inspection type; entries without data are empty.
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes'
|
|
type: array
|
|
mgb:
|
|
example: true
|
|
type: boolean
|
|
note:
|
|
example: Primary HEMS helicopter
|
|
type: string
|
|
nr1:
|
|
example: true
|
|
type: boolean
|
|
nr2:
|
|
example: true
|
|
type: boolean
|
|
rh:
|
|
example: true
|
|
type: boolean
|
|
sortkey:
|
|
example: 10
|
|
type: integer
|
|
status:
|
|
description: |-
|
|
Status is the operational status of the helicopter (read-time derived).
|
|
Values: "available", "booked", "aog", "mcf". Precedence: mcf > aog > booked > available.
|
|
"booked" = active flight assignment; "aog" = air_on_ground flag OR an open complaint
|
|
grounding it (non-MEL, or MEL past its grace deadline); "mcf" = a pending maintenance
|
|
check flight (MCF created, not yet passed).
|
|
enum:
|
|
- available
|
|
- booked
|
|
- aog
|
|
- mcf
|
|
example: available
|
|
type: string
|
|
tgb:
|
|
example: true
|
|
type: boolean
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterAuditUser'
|
|
utc_offset:
|
|
example: -1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 12
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileBulkError:
|
|
properties:
|
|
code:
|
|
example: HELICOPTER_FILE_INVALID_PAYLOAD
|
|
type: string
|
|
detail:
|
|
example: helicopter_id is invalid UUID
|
|
type: string
|
|
error_code:
|
|
example: "4220318"
|
|
type: string
|
|
status:
|
|
example: 422
|
|
type: integer
|
|
title:
|
|
example: Validation error
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionAttachment:
|
|
properties:
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_name:
|
|
example: Before Flight Checklist.pdf
|
|
type: string
|
|
id:
|
|
example: 019d6771-6c8e-7a2d-a7b8-03bcb65fcb3e
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionAttributes:
|
|
properties:
|
|
files:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionSections'
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionHelicopter'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionHelicopter:
|
|
properties:
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
name:
|
|
example: AIRBUS H145
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionItem:
|
|
properties:
|
|
attachment:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionAttachment'
|
|
attachment_pending:
|
|
example: true
|
|
type: boolean
|
|
created_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
helicopter_file_id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
is_template:
|
|
example: true
|
|
type: boolean
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
section:
|
|
example: bfi
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionResponse'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionResponse:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionAttributes'
|
|
type:
|
|
example: helicopter_file_collection
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCollectionSections:
|
|
properties:
|
|
after:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionItem'
|
|
type: array
|
|
before:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionItem'
|
|
type: array
|
|
prepare:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionItem'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCreateBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Resource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileCreateBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCreateBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileDeleteAttributes:
|
|
properties:
|
|
deleted:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileDeleteResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileDeleteAttributes'
|
|
type:
|
|
example: helicopter_file_delete
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileDeleteResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileDeleteResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterFileAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
example: helicopter_file
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUpdateBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Resource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUpdateBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUpdateBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentBulkItem:
|
|
properties:
|
|
error:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileBulkError'
|
|
index:
|
|
example: 0
|
|
type: integer
|
|
resource:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentResource'
|
|
success:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentBulkResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentBulkItem'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
failed:
|
|
example: 1
|
|
type: integer
|
|
partial_success:
|
|
example: true
|
|
type: boolean
|
|
success:
|
|
example: 2
|
|
type: integer
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileUploadIntentAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: helicopter_file_upload_intent
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterNextReportNumberAttributes:
|
|
properties:
|
|
identifier:
|
|
example: ABC
|
|
type: string
|
|
report_number:
|
|
example: ABC-0001
|
|
type: string
|
|
sequence:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterNextReportNumberResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterNextReportNumberAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: helicopter_report_number
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterNextReportNumberResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterNextReportNumberResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: helicopter
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.HelicopterResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MCFAttributes:
|
|
properties:
|
|
af_hours:
|
|
example: "1245.3"
|
|
type: string
|
|
completed_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
completed_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
created_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
date:
|
|
example: "2026-06-17"
|
|
type: string
|
|
decided_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
decided_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
flight_id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
is_cleared:
|
|
example: false
|
|
type: boolean
|
|
is_complete:
|
|
example: false
|
|
type: boolean
|
|
is_pending:
|
|
example: true
|
|
type: boolean
|
|
landing_count:
|
|
example: 3
|
|
type: integer
|
|
notes:
|
|
example: Vibration within limits
|
|
type: string
|
|
result:
|
|
enum:
|
|
- passed
|
|
- failed
|
|
example: passed
|
|
type: string
|
|
updated_at:
|
|
example: "2026-06-16T03:04:05Z"
|
|
type: string
|
|
utc_time:
|
|
example: "2026-06-17T08:30:00Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MCFListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MCFResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
example: mcf
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MCFResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsAttributes:
|
|
properties:
|
|
company_name:
|
|
example: Wucher
|
|
type: string
|
|
cover_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
cover_original_size_bytes:
|
|
example: 2048000
|
|
type: integer
|
|
cover_thumbnail_url:
|
|
example: https://cdn.example.com/cover.thumb.png
|
|
type: string
|
|
cover_url:
|
|
example: https://cdn.example.com/cover.png
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
logo_file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
logo_original_size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
logo_thumbnail_url:
|
|
example: https://cdn.example.com/logo.thumb.png
|
|
type: string
|
|
logo_url:
|
|
example: https://cdn.example.com/logo.png
|
|
type: string
|
|
subtitle:
|
|
example: Flight operations platform
|
|
type: string
|
|
title:
|
|
example: Welcome to Wucher
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraAttributes:
|
|
properties:
|
|
MS_ENTRA_AUTHORITY:
|
|
example: https://login.microsoftonline.com/
|
|
type: string
|
|
MS_ENTRA_CLIENT_ID:
|
|
example: your-client-id
|
|
type: string
|
|
MS_ENTRA_CLIENT_SECRET:
|
|
example: '********'
|
|
type: string
|
|
MS_ENTRA_REDIRECT_URL:
|
|
example: https://example.com/api/v1/auth/microsoft/callback
|
|
type: string
|
|
MS_ENTRA_SCOPES:
|
|
example: openid,profile,email
|
|
type: string
|
|
MS_ENTRA_TENANT_ID:
|
|
example: your-tenant-id
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraAttributes'
|
|
type:
|
|
example: master_settings_microsoft_entra_sso
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsAttributes'
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: master_settings
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MasterSettingsResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
end_time:
|
|
example: "22:05"
|
|
type: string
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionFileItem'
|
|
type: array
|
|
flight:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionFlightRef'
|
|
forms:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionForms'
|
|
mission_code:
|
|
example: HEMS-26-1
|
|
type: string
|
|
note:
|
|
example: Mission note
|
|
type: string
|
|
start_time:
|
|
example: "04:49"
|
|
type: string
|
|
status:
|
|
example: completed
|
|
type: string
|
|
subtypes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionSubtypeRef'
|
|
type:
|
|
example: HEMS
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-20T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionDataTableResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
draw:
|
|
example: 1
|
|
type: integer
|
|
records_filtered:
|
|
example: 42
|
|
type: integer
|
|
records_total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionFileItem:
|
|
properties:
|
|
attachment_id:
|
|
example: 019d6771-6c8e-7a2d-a7b8-03bcb65fcb3e
|
|
type: string
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/brief.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_name:
|
|
example: mission-brief.pdf
|
|
type: string
|
|
id:
|
|
example: 019d6771-6c8e-7a2d-a7b8-03bcb65fcb3e
|
|
type: string
|
|
thumbnail_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/thumbnails/2026/04/05/brief.png?X-Amz-Signature=...
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionFlightRef:
|
|
properties:
|
|
code:
|
|
example: M-062226-001
|
|
type: string
|
|
date:
|
|
example: "2026-04-20"
|
|
type: string
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionForms:
|
|
properties:
|
|
flight_data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 120
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionAttributes'
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
type:
|
|
example: mission
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionSubtypeRef:
|
|
properties:
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a99
|
|
type: string
|
|
subtype:
|
|
example: PRIM
|
|
type: string
|
|
subtype_name:
|
|
example: Nicht transportfaehig
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionTypeAttributes:
|
|
properties:
|
|
code:
|
|
example: HEMS
|
|
type: string
|
|
name:
|
|
example: HEMS
|
|
type: string
|
|
subtypes:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionTypeSubtypeItem'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionTypeListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionTypeResource'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionTypeResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionTypeAttributes'
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a77
|
|
type: string
|
|
type:
|
|
example: mission_type
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.MissionTypeSubtypeItem:
|
|
properties:
|
|
code:
|
|
example: PRIM
|
|
type: string
|
|
id:
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a99
|
|
type: string
|
|
name:
|
|
example: Primary
|
|
type: string
|
|
task_name:
|
|
example: Nicht transportfaehig
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.OtherPersonAttributes:
|
|
properties:
|
|
email:
|
|
example: guest@example.com
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Guest Person
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.OtherPersonListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.OtherPersonResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonAttributes'
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
type:
|
|
example: other_person
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.OtherPersonResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ReserveAcListResponse:
|
|
properties:
|
|
data:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcResource'
|
|
type: array
|
|
meta:
|
|
properties:
|
|
page_number:
|
|
example: 1
|
|
type: integer
|
|
page_size:
|
|
example: 20
|
|
type: integer
|
|
total:
|
|
example: 1
|
|
type: integer
|
|
type: object
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ReserveAcResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcAttributes'
|
|
id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
type:
|
|
example: reserve_ac
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.ReserveAcResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverDutyRosterCrew:
|
|
properties:
|
|
email:
|
|
example: doctor@example.com
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Hunter Wolfgang
|
|
type: string
|
|
role:
|
|
example: doctor
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverDutyRosterDetailsResponse:
|
|
properties:
|
|
doctor:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterCrew'
|
|
type: array
|
|
helper:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterCrew'
|
|
type: array
|
|
other_person:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterCrew'
|
|
type: array
|
|
pilot:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterPilotCrew'
|
|
type: array
|
|
rescuer:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterCrew'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverDutyRosterPilotCrew:
|
|
properties:
|
|
co_pilot:
|
|
type: boolean
|
|
crew_type:
|
|
example: main
|
|
type: string
|
|
email:
|
|
example: pilot@example.com
|
|
type: string
|
|
examiner:
|
|
type: boolean
|
|
flight_instructor:
|
|
type: boolean
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
line_checker:
|
|
type: boolean
|
|
mobile_phone:
|
|
example: +43-1234
|
|
type: string
|
|
name:
|
|
example: Hunter Wolfgang
|
|
type: string
|
|
role:
|
|
example: pilot
|
|
type: string
|
|
supervisor:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverFileAttributes:
|
|
properties:
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/takeover-report.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_attachment_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-222222222222
|
|
type: string
|
|
file_name:
|
|
example: takeover-report.pdf
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverFileResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverFileAttributes'
|
|
id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-111111111111
|
|
type: string
|
|
type:
|
|
example: takeover_file
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverHelicopter:
|
|
properties:
|
|
designation:
|
|
example: OE-XHZ
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
identifier:
|
|
example: "1234"
|
|
type: string
|
|
last_daily_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterLastDailyInspection'
|
|
maintenance_schedules:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes'
|
|
type: array
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverResource:
|
|
properties:
|
|
attributes:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverResponseAttributes'
|
|
type:
|
|
example: takeover
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverResponse:
|
|
properties:
|
|
data:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverResource'
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.TakeoverResponseAttributes:
|
|
properties:
|
|
base:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterBaseInfo'
|
|
base_id:
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
duty_date:
|
|
type: string
|
|
files:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverFileResource'
|
|
type: array
|
|
flight_id:
|
|
type: string
|
|
flight_inspection_id:
|
|
type: string
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverHelicopter'
|
|
helicopter_id:
|
|
type: string
|
|
id:
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcInspectionSummary'
|
|
notes:
|
|
type: string
|
|
reserve_ac_id:
|
|
type: string
|
|
roster_detail:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverDutyRosterDetailsResponse'
|
|
shift_end:
|
|
type: string
|
|
shift_start:
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_response.UserRef:
|
|
properties:
|
|
name:
|
|
example: Ganahl Stefan
|
|
type: string
|
|
uuid:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.AirRescuerChecklistBaseInfo:
|
|
properties:
|
|
base_abbreviation:
|
|
example: G1
|
|
type: string
|
|
base_category:
|
|
example: hems
|
|
type: string
|
|
base_name:
|
|
example: Gallus 1 - Zurs Lech
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.AirRescuerChecklistItemInput:
|
|
properties:
|
|
name:
|
|
example: Oxygen supply check
|
|
type: string
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerAttachmentAttributes:
|
|
properties:
|
|
attached_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
category:
|
|
example: document
|
|
type: string
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
file_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_primary:
|
|
example: false
|
|
type: boolean
|
|
ref_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
ref_type:
|
|
example: helicopter
|
|
type: string
|
|
sort_order:
|
|
example: 0
|
|
type: integer
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
extension:
|
|
example: pdf
|
|
type: string
|
|
failed_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
failure_reason:
|
|
example: ""
|
|
type: string
|
|
file_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
folder_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
is_template:
|
|
example: true
|
|
type: boolean
|
|
mime_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: policy.pdf
|
|
type: string
|
|
name_normalized:
|
|
example: policy.pdf
|
|
type: string
|
|
processed_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
processing_started_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
purge_at:
|
|
example: "2026-04-12T03:04:05Z"
|
|
type: string
|
|
size_bytes:
|
|
example: 1024
|
|
type: integer
|
|
status:
|
|
example: validated
|
|
type: string
|
|
trashed_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
upload_error:
|
|
example: ""
|
|
type: string
|
|
validated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileAuditAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileDetailAttributes:
|
|
properties:
|
|
audit:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileAuditAttributes'
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
extension:
|
|
example: pdf
|
|
type: string
|
|
is_template:
|
|
example: true
|
|
type: boolean
|
|
location:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileLocationAttributes'
|
|
mime_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: policy.pdf
|
|
type: string
|
|
name_normalized:
|
|
example: policy.pdf
|
|
type: string
|
|
preview_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.preview.pdf?X-Amz-Signature=...
|
|
type: string
|
|
processing:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFileProcessingAttributes'
|
|
size_bytes:
|
|
example: 1024
|
|
type: integer
|
|
status:
|
|
example: ready
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileLocationAttributes:
|
|
properties:
|
|
folder_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileProcessingAttributes:
|
|
properties:
|
|
failed_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
failure_reason:
|
|
example: processing validation failed
|
|
type: string
|
|
processed_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
processing_started_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
validated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFileUploadIntentAttributes:
|
|
properties:
|
|
expires_at:
|
|
example: "2026-04-05T07:29:34Z"
|
|
type: string
|
|
expires_in_seconds:
|
|
example: 900
|
|
type: integer
|
|
file:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileUploadFile'
|
|
method:
|
|
example: PUT
|
|
type: string
|
|
object:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileUploadObject'
|
|
required_headers:
|
|
additionalProperties:
|
|
type: string
|
|
type: object
|
|
upload_intent_uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
upload_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/...
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFolderAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
depth:
|
|
example: 1
|
|
type: integer
|
|
name:
|
|
example: operations
|
|
type: string
|
|
name_normalized:
|
|
example: operations
|
|
type: string
|
|
parent_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
path_cache:
|
|
example: /root/operations
|
|
type: string
|
|
purge_at:
|
|
example: "2026-04-12T03:04:05Z"
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFolderAuditAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
created_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
updated_at:
|
|
example: "2026-03-12T03:04:05Z"
|
|
type: string
|
|
updated_by:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFolderDetailAttributes:
|
|
properties:
|
|
audit:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFolderAuditAttributes'
|
|
depth:
|
|
example: 1
|
|
type: integer
|
|
location:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FileManagerFolderLocationAttributes'
|
|
name:
|
|
example: operations
|
|
type: string
|
|
name_normalized:
|
|
example: operations
|
|
type: string
|
|
path_cache:
|
|
example: /root/operations
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileManagerFolderLocationAttributes:
|
|
properties:
|
|
parent_id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileUploadFile:
|
|
properties:
|
|
mime_type:
|
|
example: application/pdf
|
|
type: string
|
|
name:
|
|
example: policy-final.pdf
|
|
type: string
|
|
size_bytes:
|
|
example: 1024
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FileUploadObject:
|
|
properties:
|
|
bucket:
|
|
example: wucher-file-dev
|
|
type: string
|
|
key:
|
|
example: files/2026/04/05/018f3a5c7a6f7c2a8d4a4b5b1f6c8e9d.pdf
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusComplaint:
|
|
properties:
|
|
action:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusComplaintAction'
|
|
aircraft_hours_at_report:
|
|
type: string
|
|
description:
|
|
type: string
|
|
flight_id:
|
|
type: string
|
|
id:
|
|
type: string
|
|
mel:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusComplaintMEL'
|
|
nsr:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusComplaintNSR'
|
|
reported_at:
|
|
type: string
|
|
reported_by:
|
|
type: string
|
|
reported_by_name:
|
|
type: string
|
|
reported_by_short:
|
|
type: string
|
|
status:
|
|
enum:
|
|
- active_non_mel
|
|
- active_mel
|
|
- serviced
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusComplaintAction:
|
|
properties:
|
|
aircraft_hours_at_fix:
|
|
type: string
|
|
signed_at:
|
|
type: string
|
|
signed_by:
|
|
type: string
|
|
signed_by_name:
|
|
type: string
|
|
signed_by_short:
|
|
type: string
|
|
taken:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusComplaintMEL:
|
|
properties:
|
|
classified_at:
|
|
type: string
|
|
classified_by:
|
|
type: string
|
|
classified_by_name:
|
|
type: string
|
|
classified_by_short:
|
|
type: string
|
|
deadline:
|
|
type: string
|
|
severity:
|
|
enum:
|
|
- 0
|
|
- 1
|
|
- 2
|
|
- 3
|
|
- 4
|
|
type: integer
|
|
severity_label:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusComplaintNSR:
|
|
properties:
|
|
decided_at:
|
|
type: string
|
|
decided_by:
|
|
type: string
|
|
decided_by_name:
|
|
type: string
|
|
decided_by_short:
|
|
type: string
|
|
is_nsr:
|
|
type: boolean
|
|
reason:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusEASARelease:
|
|
properties:
|
|
easa_ac_hours:
|
|
type: string
|
|
easa_date:
|
|
type: string
|
|
easa_location:
|
|
type: string
|
|
easa_maint_manual_rev_airframe:
|
|
type: string
|
|
easa_maint_manual_rev_engine:
|
|
type: string
|
|
easa_permit_no:
|
|
type: string
|
|
easa_signer_id:
|
|
type: string
|
|
easa_wo_no:
|
|
type: string
|
|
id:
|
|
type: string
|
|
is_signed:
|
|
type: boolean
|
|
missing_sign_fields:
|
|
items:
|
|
type: string
|
|
type: array
|
|
signed_at:
|
|
type: string
|
|
signed_by:
|
|
type: string
|
|
signed_by_name:
|
|
type: string
|
|
signed_by_short:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusFileAttributes:
|
|
properties:
|
|
category:
|
|
enum:
|
|
- wb
|
|
- bfi
|
|
example: wb
|
|
type: string
|
|
file_id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
is_mandatory:
|
|
description: IsMandatory — when true, this file must be checked (is_done)
|
|
during takeover.
|
|
example: true
|
|
type: boolean
|
|
required:
|
|
- category
|
|
- file_id
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusHelicopter:
|
|
properties:
|
|
designation:
|
|
example: AIRBUS H145
|
|
type: string
|
|
flight_id:
|
|
description: |-
|
|
FlightID — id of the aircraft's current active flight (present only when it is in
|
|
use / booked). The fleet page uses it to create an EASA release scoped to the flight.
|
|
example: 019d6774-98e8-7fba-9ef4-3795c0da8a13
|
|
type: string
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
identifier:
|
|
example: D-HEMS
|
|
type: string
|
|
status:
|
|
enum:
|
|
- available
|
|
- booked
|
|
- aog
|
|
- mcf
|
|
example: available
|
|
type: string
|
|
status_reasons:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusHelicopterReason'
|
|
type: array
|
|
type:
|
|
example: EC-135
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusHelicopterReason:
|
|
properties:
|
|
code:
|
|
enum:
|
|
- manual_aog
|
|
- mel_expired
|
|
- non_mel_pending
|
|
- inspection_overdue
|
|
type: string
|
|
complaint_id:
|
|
type: string
|
|
detail:
|
|
type: string
|
|
schedule_id:
|
|
type: string
|
|
since:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusMCF:
|
|
properties:
|
|
active:
|
|
description: |-
|
|
Active — true when the helicopter is currently in MCF (an open draft, or a signed
|
|
but failed MCF still needing a re-flight); false when cleared/cancelled/none.
|
|
type: boolean
|
|
af_hours:
|
|
description: AFHours / LandingCount present only once the MCF is signed; omitted
|
|
for none/draft/cancelled.
|
|
type: string
|
|
date:
|
|
type: string
|
|
id:
|
|
type: string
|
|
landing_count:
|
|
type: integer
|
|
sign:
|
|
description: Sign — true once the MCF is completed/signed; false while it
|
|
is still a draft.
|
|
type: boolean
|
|
signed_by:
|
|
description: SignedBy / SignedByName / SignedByShort — who signed (completed)
|
|
the MCF; empty while unsigned.
|
|
type: string
|
|
signed_by_name:
|
|
type: string
|
|
signed_by_short:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusSummary:
|
|
properties:
|
|
airframe:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusSummaryAirframe'
|
|
engine_1:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusSummaryEngine'
|
|
engine_2:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.FleetStatusSummaryEngine'
|
|
flight_reports:
|
|
type: number
|
|
hook_releases:
|
|
type: number
|
|
landings:
|
|
type: number
|
|
rotor_brake_cycles:
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusSummaryAirframe:
|
|
properties:
|
|
cycles:
|
|
type: number
|
|
hours:
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.FleetStatusSummaryEngine:
|
|
properties:
|
|
ccc:
|
|
type: number
|
|
gpc_ng_n1:
|
|
type: number
|
|
hours:
|
|
type: number
|
|
ptc_nf_n2:
|
|
type: number
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterAuditUser:
|
|
properties:
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
name:
|
|
example: John Doe
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterFileAttributes:
|
|
properties:
|
|
attachment_pending:
|
|
example: true
|
|
type: boolean
|
|
created_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_attachment_id:
|
|
example: 019d6771-6c8e-7a2d-a7b8-03bcb65fcb3e
|
|
type: string
|
|
file_name:
|
|
example: Before Flight Checklist.pdf
|
|
type: string
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
helicopter_name:
|
|
example: AIRBUS H145
|
|
type: string
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
is_template:
|
|
example: true
|
|
type: boolean
|
|
position:
|
|
example: 1
|
|
type: integer
|
|
section:
|
|
example: bfi
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterFoto:
|
|
properties:
|
|
download_url:
|
|
example: https://storage.example.com/helicopter/foto.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
original_size_bytes:
|
|
example: 1024000
|
|
type: integer
|
|
thumbnail_download_url:
|
|
example: https://storage.example.com/helicopter/foto.thumb.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900&X-Amz-Signature=abc123
|
|
type: string
|
|
uuid:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterInspectionFilesChecklist:
|
|
properties:
|
|
completed:
|
|
example: 47
|
|
type: integer
|
|
total:
|
|
example: 47
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterLastDailyBase:
|
|
properties:
|
|
base_abbreviation:
|
|
example: G1
|
|
type: string
|
|
base_name:
|
|
example: Gallus 1 - Zurs Lech
|
|
type: string
|
|
id:
|
|
example: 018f3a5c-7a6f-7c2a-8d4a-4b5b1f6c8e9d
|
|
type: string
|
|
type:
|
|
example: hems
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterLastDailyInspection:
|
|
properties:
|
|
base:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterLastDailyBase'
|
|
inspected_at:
|
|
example: "2026-05-25T07:47:00Z"
|
|
type: string
|
|
inspection_files_checklist:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterInspectionFilesChecklist'
|
|
inspection_id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
inspector:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.HelicopterLastDailyInspector'
|
|
status:
|
|
example: inspected_cleared
|
|
type: string
|
|
utc_time:
|
|
example: "07:47"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.HelicopterLastDailyInspector:
|
|
properties:
|
|
id:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
license_no:
|
|
example: "4521"
|
|
type: string
|
|
name:
|
|
example: Teodora Lesmana
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.MaintenanceScheduleAttributes:
|
|
properties:
|
|
due:
|
|
example: "1200"
|
|
type: string
|
|
ext:
|
|
example: "1300"
|
|
type: string
|
|
inspection_type:
|
|
example: A/F
|
|
type: string
|
|
type:
|
|
example: 100H
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcAircraftSummary:
|
|
properties:
|
|
aog:
|
|
example: false
|
|
type: boolean
|
|
designation:
|
|
example: AIRBUS H145
|
|
type: string
|
|
id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
identifier:
|
|
example: D-HYAR
|
|
type: string
|
|
is_active:
|
|
example: true
|
|
type: boolean
|
|
type:
|
|
example: H145
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcAttributes:
|
|
properties:
|
|
created_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
created_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
deleted_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
deleted_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
flight_id:
|
|
example: 019d6773-ccca-71dd-b9c7-8e6f531deb90
|
|
type: string
|
|
helicopter:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcAircraftSummary'
|
|
helicopter_id:
|
|
example: 019d6771-5fb5-7337-837f-bc5ed85181a1
|
|
type: string
|
|
inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcInspectionSummary'
|
|
last_daily_inspection:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcLastDailyInfo'
|
|
status:
|
|
example: pending
|
|
type: string
|
|
updated_at:
|
|
example: "2026-04-14T08:00:00Z"
|
|
type: string
|
|
updated_by:
|
|
example: 019d61db-53c6-7280-87ec-e65f205c6d3b
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcBeforeInspectionFields:
|
|
properties:
|
|
fuel_added_amount:
|
|
type: number
|
|
fuel_amount:
|
|
type: number
|
|
fuel_unit:
|
|
type: string
|
|
hydraulic_lh_checked:
|
|
type: boolean
|
|
hydraulic_rh_checked:
|
|
type: boolean
|
|
note:
|
|
type: string
|
|
oil_engine_nr1_checked:
|
|
type: boolean
|
|
oil_engine_nr2_checked:
|
|
type: boolean
|
|
oil_transmission_igb_checked:
|
|
type: boolean
|
|
oil_transmission_mgb_checked:
|
|
type: boolean
|
|
oil_transmission_tgb_checked:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcBeforeSectionDTO:
|
|
properties:
|
|
completed:
|
|
example: 1
|
|
type: integer
|
|
done_file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
fields:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcBeforeInspectionFields'
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO:
|
|
properties:
|
|
download_url:
|
|
example: https://s3.localhost.localstack.cloud:4566/wucher-file-dev/files/2026/04/05/policy.pdf?X-Amz-Signature=...
|
|
type: string
|
|
file_attachment_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-222222222222
|
|
type: string
|
|
file_name:
|
|
example: Before Flight Checklist.pdf
|
|
type: string
|
|
helicopter_file_id:
|
|
example: 019d7000-aaaa-7bbb-8ccc-111111111111
|
|
type: string
|
|
is_done:
|
|
example: false
|
|
type: boolean
|
|
is_mandatory:
|
|
example: true
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcFleetStatusFileSectionDTO:
|
|
properties:
|
|
completed:
|
|
example: 1
|
|
type: integer
|
|
done_file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
total:
|
|
example: 2
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcInspectionSummary:
|
|
properties:
|
|
before:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcBeforeSectionDTO'
|
|
fleet_status_file:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFleetStatusFileSectionDTO'
|
|
id:
|
|
example: 019d6772-471c-7b70-b42a-d94020ef61e4
|
|
type: string
|
|
inspection_date:
|
|
example: "2026-04-15"
|
|
type: string
|
|
prepare:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcPrepareSectionDTO'
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcLastDailyInfo:
|
|
properties:
|
|
date:
|
|
example: 17.04.2026
|
|
type: string
|
|
name:
|
|
example: Ganahl Stefan
|
|
type: string
|
|
short_name:
|
|
example: GAN
|
|
type: string
|
|
utc_time:
|
|
example: "10:57"
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcPrepareFields:
|
|
properties:
|
|
notam_briefing:
|
|
type: boolean
|
|
operational_flight_plan:
|
|
type: boolean
|
|
weather_briefing:
|
|
type: boolean
|
|
type: object
|
|
wucher_internal_transport_http_dto_shared.ReserveAcPrepareSectionDTO:
|
|
properties:
|
|
completed:
|
|
example: 1
|
|
type: integer
|
|
done_file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
file_checklist:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcFileChecklistItemDTO'
|
|
type: array
|
|
prepare_fields:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_shared.ReserveAcPrepareFields'
|
|
total:
|
|
example: 3
|
|
type: integer
|
|
type: object
|
|
wucher_internal_transport_http_jsonapi.Document:
|
|
properties:
|
|
data: {}
|
|
meta: {}
|
|
type: object
|
|
wucher_internal_transport_http_jsonapi.ErrorDocument:
|
|
properties:
|
|
errors:
|
|
items:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorObject'
|
|
type: array
|
|
type: object
|
|
wucher_internal_transport_http_jsonapi.ErrorObject:
|
|
properties:
|
|
code:
|
|
type: string
|
|
detail:
|
|
type: string
|
|
error_code:
|
|
type: string
|
|
source:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorSource'
|
|
status:
|
|
type: string
|
|
title:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_jsonapi.ErrorSource:
|
|
properties:
|
|
pointer:
|
|
type: string
|
|
type: object
|
|
wucher_internal_transport_http_jsonapi.Resource:
|
|
properties:
|
|
attributes:
|
|
additionalProperties: {}
|
|
type: object
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
type: object
|
|
info:
|
|
contact: {}
|
|
description: |-
|
|
Wucher backend API (JSON:API).
|
|
|
|
Auth Flow (Email/Password):
|
|
1) POST /api/v1/auth/register
|
|
2) Check email, open verify link (GET /api/v1/auth/verify-email)
|
|
3) POST /api/v1/auth/login
|
|
- If TOTP enabled: response 202 with challenge_token
|
|
4) POST /api/v1/auth/totp/verify (challenge_token + code) -> cookies
|
|
|
|
Auth Flow (TOTP setup):
|
|
1) POST /api/v1/auth/totp/setup -> secret + otpauth_url (enabled=false)
|
|
2) POST /api/v1/auth/totp/confirm -> enabled=true
|
|
|
|
Auth Flow (Microsoft Entra SSO):
|
|
1) GET /api/v1/auth/microsoft/login -> redirect to Microsoft
|
|
2) Microsoft redirects to /api/v1/auth/microsoft/callback
|
|
3) Backend checks existing SSO mapping (no auto-register)
|
|
4) If linked user exists -> set cookies + optional redirect to AUTH_SSO_SUCCESS_REDIRECT
|
|
5) If mapping not linked -> login rejected (401)
|
|
6) Existing authenticated user can link/unlink via /api/v1/auth/sso/link and /api/v1/auth/sso/unlink
|
|
title: Wucher API
|
|
version: "1.0"
|
|
paths:
|
|
/api/v1/action-signoffs/get-by-flight/{flight_id}:
|
|
get:
|
|
description: Returns the fleet-level (complaint-independent) corrective-action
|
|
sign-off state for a helicopter — `signed`, `signed_at`, `signed_by`. When
|
|
none exists yet it returns an unsigned placeholder. A signed sign-off is what
|
|
gates the EASA maintenance release.
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ActionSignoffResponse'
|
|
summary: Get the current corrective-action sign-off for a helicopter
|
|
tags:
|
|
- Complaints - Sign Off
|
|
/api/v1/action-signoffs/sign/{helicopter_id}:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'Toggles the corrective-action sign-off for a helicopter. `sign`
|
|
(optional, default true) chooses the direction: true signs, false unsigns.
|
|
Send `complaint_id` to target a specific complaint''s sign-off — signing it
|
|
requires `action_taken` recorded (else 422 `ACTION_SIGNOFF_ACTION_REQUIRED`),
|
|
and 404 `ACTION_SIGNOFF_COMPLAINT_NOT_FOUND` if the complaint does not exist.
|
|
Omit `complaint_id` for a fleet-wide (complaint-independent) sign-off. A signed
|
|
sign-off is what allows an EASA maintenance release to be created for the
|
|
helicopter.'
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
- description: Optional complaint_id + note
|
|
in: body
|
|
name: request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ActionSignoffSignRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ActionSignoffResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Toggle the corrective-action sign-off (per complaint or fleet-wide)
|
|
tags:
|
|
- Complaints - Sign Off
|
|
/api/v1/after-flight-inspection/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create after-flight inspection and AFI file checklist for a flight
|
|
inspection.
|
|
parameters:
|
|
- description: Create last flights inspection request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create last flights inspection
|
|
tags:
|
|
- Flights - After Flights Inspection
|
|
/api/v1/after-flight-inspection/delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Delete after-flight inspection and AFI checklist rows by `flight_inspection_id`.
|
|
parameters:
|
|
- description: Delete last flights inspection request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionDeleteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete last flights inspection
|
|
tags:
|
|
- Flights - After Flights Inspection
|
|
/api/v1/after-flight-inspection/get:
|
|
get:
|
|
description: Get after-flight inspection detail and AFI file checklist by query
|
|
`inspection_id`.
|
|
parameters:
|
|
- description: Flight Inspection UUID
|
|
in: query
|
|
name: inspection_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get last flights inspection
|
|
tags:
|
|
- Flights - After Flights Inspection
|
|
/api/v1/after-flight-inspection/update:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update after-flight inspection and AFI file checklist for a flight
|
|
inspection.
|
|
parameters:
|
|
- description: Update last flights inspection request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.LastFlightsInspectionUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AfterFlightInspectionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update last flights inspection
|
|
tags:
|
|
- Flights - After Flights Inspection
|
|
/api/v1/air-rescuer-checklist/{uuid}/items/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create one or more items for an existing checklist.
|
|
Parent checklist is taken from path `uuid`.
|
|
Duplicate `position` is allowed. Display order for checklist_items is `position ASC, name ASC`.
|
|
Request is transactional: if one item fails, all item inserts in the batch are rolled back.
|
|
parameters:
|
|
- description: Checklist UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: Bulk checklist item create payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create checklist items (bulk)
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/{uuid}/items/reorder:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Reorder one or more checklist items for the checklist in path `uuid`.
|
|
Use this endpoint to swap or reorder positions with a single PIN validation.
|
|
Duplicate `position` values remain allowed by domain rules.
|
|
Request is transactional: if one item fails, all position updates are rolled back.
|
|
parameters:
|
|
- description: Checklist UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: Checklist item reorder payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemReorderRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Reorder checklist items in one request
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create one or more checklist headers for a single base.
|
|
Request uses `base_id`.
|
|
Each checklist can be created with or without initial `items`.
|
|
`scope_code` accepts persisted codes and English aliases. Stored codes remain: `TA`, `MO`, `DI`, `MI`, `DO`, `FR`, `SA`, `SO`, `M10`, `M15`, `M20`, `M25`, `DS`.
|
|
Example aliases: `DAILY` -> `TA`, `TU/TUE/TUESDAY` -> `DI`, `WE/WED/WEDNESDAY` -> `MI`, `TH/THU/THURSDAY` -> `DO`, `SU/SUN/SUNDAY` -> `SO`, `DEADLINE` -> `DS`.
|
|
`CAT` is a virtual overview tab and is not allowed for create/update payloads.
|
|
Duplicate `position` is allowed for both checklist headers and checklist items.
|
|
Display order is stable: checklist headers `position ASC, title ASC`; checklist_items `position ASC, name ASC`.
|
|
Request is transactional: if one checklist/item fails, the whole batch is rolled back.
|
|
parameters:
|
|
- description: Bulk checklist create payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create air rescuer checklist (bulk)
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/delete/{uuid}:
|
|
delete:
|
|
description: |-
|
|
Delete one checklist header by UUID.
|
|
Related checklist items are removed together following current implementation behavior.
|
|
parameters:
|
|
- description: Checklist UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistGroupedListResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete air rescuer checklist
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/get-all:
|
|
get:
|
|
description: |-
|
|
Grouped by base and returned in `data[].attributes.bases`.
|
|
Response includes `tabs[]` with default tab order: `CAT`, `TA`, `MO`, `DI`, `MI`, `DO`, `FR`, `SA`, `SO`, `M10`, `M15`, `M20`, `M25`, `DS`.
|
|
`CAT` is a virtual overview tab (not persisted in DB).
|
|
`CAT.groups[]` only includes non-empty persisted scopes and does not include `checklist_items`.
|
|
Normal tabs are always present. Empty normal tabs are explicitly returned as `checklists: []`.
|
|
Scope display names: `CAT=Category`, `TA=Daily`, `MO=Monday`, `DI=Tuesday`, `MI=Wednesday`, `DO=Thursday`, `FR=Friday`, `SA=Saturday`, `SO=Sunday`, `M10=M10`, `M15=M15`, `M20=M20`, `M25=M25`, `DS=Deadline`.
|
|
Duplicate `position` is allowed. Display order is stable: checklist headers `position ASC, title ASC`; checklist_items `position ASC, name ASC`.
|
|
Optional filters: `base_id`, `category_type` (`regular|hems`), `base_name`, `base_abbreviation`, `scope_code` (`CAT`/`OVERVIEW` or persisted scope / aliases).
|
|
parameters:
|
|
- description: Filter by base UUID
|
|
in: query
|
|
name: base_id
|
|
type: string
|
|
- description: Filter by base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: category_type
|
|
type: string
|
|
- description: Filter by base name (contains, case-insensitive)
|
|
in: query
|
|
name: base_name
|
|
type: string
|
|
- description: Filter by base abbreviation (contains, case-insensitive)
|
|
in: query
|
|
name: base_abbreviation
|
|
type: string
|
|
- description: 'Filter by scope code. Allowed canonical: CAT, TA, MO, DI, MI,
|
|
DO, FR, SA, SO, M10, M15, M20, M25, DS. English aliases are also accepted.'
|
|
in: query
|
|
name: scope_code
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistGroupedDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List air rescuer checklist grouped by base
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/get-all/dt:
|
|
get:
|
|
description: |-
|
|
Datatable variant for grouped air rescuer checklist data.
|
|
Semantic data is the same as `get-all`: grouped by base with `tabs[]`, virtual `CAT`, and normal tabs always present.
|
|
`CAT.groups[]` only includes non-empty persisted scopes and does not include `checklist_items`.
|
|
Empty normal tabs are explicitly returned as `checklists: []`.
|
|
Scope display names: `CAT=Category`, `TA=Daily`, `MO=Monday`, `DI=Tuesday`, `MI=Wednesday`, `DO=Thursday`, `FR=Friday`, `SA=Saturday`, `SO=Sunday`, `M10=M10`, `M15=M15`, `M20=M20`, `M25=M25`, `DS=Deadline`.
|
|
Duplicate `position` is allowed. Display order is stable: checklist headers `position ASC, title ASC`; checklist_items `position ASC, name ASC`.
|
|
Optional filters: `base_id`, `category_type` (`regular|hems`), `base_name`, `base_abbreviation`, `scope_code`.
|
|
Pagination/query controls: `page`, `size`, `limit`, `draw`.
|
|
parameters:
|
|
- description: Filter by base UUID
|
|
in: query
|
|
name: base_id
|
|
type: string
|
|
- description: Filter by base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: category_type
|
|
type: string
|
|
- description: Filter by base name (contains, case-insensitive)
|
|
in: query
|
|
name: base_name
|
|
type: string
|
|
- description: Filter by base abbreviation (contains, case-insensitive)
|
|
in: query
|
|
name: base_abbreviation
|
|
type: string
|
|
- description: 'Filter by scope code. Allowed canonical: CAT, TA, MO, DI, MI,
|
|
DO, FR, SA, SO, M10, M15, M20, M25, DS. English aliases are also accepted.'
|
|
in: query
|
|
name: scope_code
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (max 100)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Datatable draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistGroupedDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List air rescuer checklist grouped by base (datatable)
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/get/{uuid}:
|
|
get:
|
|
description: |-
|
|
Return one checklist detail by UUID.
|
|
Includes checklist header, base info, and `items` (`checklist_items`).
|
|
parameters:
|
|
- description: Checklist UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get air rescuer checklist by UUID
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/items/delete/{item_uuid}:
|
|
delete:
|
|
description: Delete one existing checklist item by `item_uuid`.
|
|
parameters:
|
|
- description: Checklist item UUID
|
|
in: path
|
|
name: item_uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete one checklist item
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/items/update/{item_uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update one existing checklist item by `item_uuid`.
|
|
This endpoint only affects the selected item.
|
|
Duplicate `position` is allowed.
|
|
parameters:
|
|
- description: Checklist item UUID
|
|
in: path
|
|
name: item_uuid
|
|
required: true
|
|
type: string
|
|
- description: Checklist item update payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistItemUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistItemResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update one checklist item
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/air-rescuer-checklist/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update checklist header fields (`scope_code`, `title`, `position`) and/or append `new_items`.
|
|
`new_items` is append-only. Existing items are not updated/deleted by this endpoint.
|
|
Item update/delete lifecycle must use dedicated item endpoints.
|
|
`scope_code` accepts persisted codes and English aliases, but `CAT` (or `OVERVIEW`) is not allowed for update payload.
|
|
Duplicate `position` is allowed.
|
|
Request is transactional.
|
|
parameters:
|
|
- description: Checklist UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: Checklist update payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.AirRescuerChecklistUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.AirRescuerChecklistResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update air rescuer checklist header and append new items
|
|
tags:
|
|
- Air Rescuer Checklist
|
|
/api/v1/audit-logs/get-all:
|
|
get:
|
|
description: JSON:API list with pagination, filtering and sorting.
|
|
parameters:
|
|
- description: Search by request_id/layer/action/method/path/message (contains)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Method filter; single/comma-separated values or ALL/*
|
|
enum:
|
|
- POST
|
|
- PUT
|
|
- PATCH
|
|
- DELETE
|
|
- UPDATE
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: filter[method]
|
|
type: string
|
|
- description: Alias for filter[method]
|
|
enum:
|
|
- POST
|
|
- PUT
|
|
- PATCH
|
|
- DELETE
|
|
- UPDATE
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: method
|
|
type: string
|
|
- description: Module filter; single/comma-separated values or ALL/*
|
|
enum:
|
|
- air_rescuer_checklist
|
|
- audit_log
|
|
- auth
|
|
- base
|
|
- base_regular
|
|
- base_hems
|
|
- base_roster
|
|
- branding
|
|
- contact
|
|
- duty_roster
|
|
- facility
|
|
- federal_state
|
|
- file_manager
|
|
- flight
|
|
- flight_data
|
|
- forces_present
|
|
- health_insurance_company
|
|
- helicopter
|
|
- helicopter_file
|
|
- hems_roster
|
|
- hospital
|
|
- icao
|
|
- insurance_patient_data
|
|
- land
|
|
- master_setting
|
|
- medicine
|
|
- mission
|
|
- opc
|
|
- patient_data
|
|
- reserve_ac
|
|
- role
|
|
- user
|
|
- vocation
|
|
- unknown
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: filter[module]
|
|
type: string
|
|
- description: Alias for filter[module]
|
|
enum:
|
|
- air_rescuer_checklist
|
|
- audit_log
|
|
- auth
|
|
- base
|
|
- base_regular
|
|
- base_hems
|
|
- base_roster
|
|
- branding
|
|
- contact
|
|
- duty_roster
|
|
- facility
|
|
- federal_state
|
|
- file_manager
|
|
- flight
|
|
- flight_data
|
|
- forces_present
|
|
- health_insurance_company
|
|
- helicopter
|
|
- helicopter_file
|
|
- hems_roster
|
|
- hospital
|
|
- icao
|
|
- insurance_patient_data
|
|
- land
|
|
- master_setting
|
|
- medicine
|
|
- mission
|
|
- opc
|
|
- patient_data
|
|
- reserve_ac
|
|
- role
|
|
- user
|
|
- vocation
|
|
- unknown
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: module
|
|
type: string
|
|
- description: Action filter; single/comma-separated values or ALL/*
|
|
enum:
|
|
- list
|
|
- get
|
|
- create
|
|
- update
|
|
- delete
|
|
- export
|
|
- custom
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: filter[action]
|
|
type: string
|
|
- description: Alias for filter[action]
|
|
enum:
|
|
- list
|
|
- get
|
|
- create
|
|
- update
|
|
- delete
|
|
- export
|
|
- custom
|
|
- ALL
|
|
- '*'
|
|
in: query
|
|
name: action
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 200)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
enum:
|
|
- created_at
|
|
- -created_at
|
|
- module
|
|
- -module
|
|
- action
|
|
- -action
|
|
- layer
|
|
- -layer
|
|
- status_code
|
|
- -status_code
|
|
- success
|
|
- -success
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List audit logs
|
|
tags:
|
|
- Audit Logs
|
|
/api/v1/auth/email-otp/send:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Sends a one-time 6-digit OTP to user email using login challenge token from /auth/login.
|
|
Security controls: old OTP is invalidated, resend cooldown is enforced, and resend/hour quota is enforced.
|
|
parameters:
|
|
- description: JSON:API Email OTP send request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPSendRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPSendResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Send login OTP to email
|
|
tags:
|
|
- Auth - Email OTP
|
|
/api/v1/auth/email-otp/verify:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Verifies one-time OTP and completes login by issuing auth cookies.
|
|
OTP is one-time use, expires automatically, and failed attempts are limited and audited.
|
|
parameters:
|
|
- description: JSON:API Email OTP verify request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPVerifyRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.EmailOTPVerifyResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Verify login OTP from email
|
|
tags:
|
|
- Auth - Email OTP
|
|
/api/v1/auth/exchange:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Accepts Microsoft token payload from frontend ssoSilent and issues
|
|
backend auth cookies.
|
|
parameters:
|
|
- description: JSON:API Exchange request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ExchangeRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TokenResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Exchange frontend Microsoft SSO token into backend session
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/forgot-password:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Always returns a generic success response.
|
|
parameters:
|
|
- description: JSON:API Forgot password request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotPasswordRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Forgot password
|
|
tags:
|
|
- Auth - Forgot Password
|
|
/api/v1/auth/invite:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Creates user without password and sends set-password link to email.
|
|
parameters:
|
|
- description: JSON:API Invite request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InviteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Invite user
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/invite/resend-set-password:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Triggers a new set-password invite email for an invited user by
|
|
user_id. Response is generic for security.
|
|
parameters:
|
|
- description: JSON:API resend set-password invite request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResendSetPasswordInviteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Resend set-password invite
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/login:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
If TOTP enabled, returns 202 + challenge_token (use /auth/totp/verify).
|
|
If TOTP is not enabled, returns 202 + email OTP challenge_token (use /auth/email-otp/send then /auth/email-otp/verify).
|
|
parameters:
|
|
- description: JSON:API Login request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LoginRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthCurrentUserResponse'
|
|
"202":
|
|
description: Accepted
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LoginEmailOTPRequiredResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Login with email & password
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/logout:
|
|
post:
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VerifyEmailResponse'
|
|
summary: Logout (revoke refresh)
|
|
tags:
|
|
- Auth - Refresh
|
|
/api/v1/auth/me:
|
|
get:
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthCurrentUserResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get current user
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/me/timezone:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API timezone update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TimezoneUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthCurrentUserResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update current user timezone
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/callback:
|
|
get:
|
|
description: Completes Microsoft SSO login. Login succeeds only when SSO identity
|
|
is already linked to an existing user.
|
|
parameters:
|
|
- description: Authorization code
|
|
in: query
|
|
name: code
|
|
required: true
|
|
type: string
|
|
- description: State
|
|
in: query
|
|
name: state
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MicrosoftCallbackResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Microsoft Entra SSO callback
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/front-channel-logout:
|
|
get:
|
|
description: OIDC front-channel logout endpoint. Configure this URL as the "Front-channel
|
|
logout URL" in Microsoft Entra. Microsoft loads it in a hidden iframe when
|
|
the user signs out at the IdP (or from another RP). It clears local auth cookies
|
|
and revokes the server-side session plus the stored Microsoft refresh token
|
|
for the browser that owns the request. It never redirects and always returns
|
|
200 so the IdP logout flow can complete.
|
|
produces:
|
|
- text/html
|
|
responses:
|
|
"200":
|
|
description: logged out
|
|
schema:
|
|
type: string
|
|
summary: Microsoft front-channel logout callback
|
|
tags:
|
|
- Auth - SSO
|
|
/api/v1/auth/microsoft/link:
|
|
get:
|
|
description: Returns JSON:API payload containing Microsoft authorization URL
|
|
for linking SSO to the current authenticated user.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MicrosoftLoginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
security:
|
|
- BearerAuth: []
|
|
summary: Microsoft Entra SSO link URL
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/login:
|
|
get:
|
|
description: |-
|
|
Returns JSON:API payload containing Microsoft authorization URL.
|
|
Backend starts with silent session-check (`prompt=none`). If Microsoft session is inactive, callback automatically falls back to interactive login.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MicrosoftLoginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Microsoft Entra SSO login
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/login-check:
|
|
get:
|
|
description: Returns JSON:API payload containing Microsoft authorization URL
|
|
with prompt=none for strict session check.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MicrosoftLoginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Microsoft Entra silent session check URL
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/logout:
|
|
post:
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VerifyEmailResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Logout Microsoft OAuth session
|
|
tags:
|
|
- Auth - SSO
|
|
/api/v1/auth/microsoft/reauth:
|
|
get:
|
|
description: Starts a Microsoft reauthentication flow for supported sensitive
|
|
actions.
|
|
parameters:
|
|
- description: 'Supported values: pin_reset_request, pin_reset_confirm'
|
|
in: query
|
|
name: purpose
|
|
required: true
|
|
type: string
|
|
- description: Required when purpose=pin_reset_confirm
|
|
in: query
|
|
name: token
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MicrosoftLoginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Microsoft Entra SSO reauth URL
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/microsoft/refresh:
|
|
post:
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TokenResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"428":
|
|
description: Precondition Required
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Refresh Microsoft access token
|
|
tags:
|
|
- Auth - SSO
|
|
/api/v1/auth/pin/change:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API security PIN change request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINChangeRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Change security PIN
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/pin/forgot:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Always returns a generic success response.
|
|
parameters:
|
|
- description: JSON:API forgot security PIN request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForgotSecurityPINRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Forgot security PIN
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/pin/request-reset:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Verifies current account password, then sends PIN reset email to
|
|
currently logged-in user when PIN is blocked.
|
|
parameters:
|
|
- description: JSON:API request security PIN reset payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RequestSecurityPINRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RequestSecurityPINResetResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"500":
|
|
description: Internal Server Error
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request security PIN reset email for blocked PIN
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/pin/reset:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Resets security PIN using a re-auth method. For method=password,
|
|
send the single-use reset token from the email link plus password. For method=microsoft,
|
|
send only reauth_token from Microsoft re-auth.
|
|
parameters:
|
|
- description: JSON:API reset security PIN request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetSecurityPINRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Reset security PIN
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/pin/setup:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Creates a 6-digit security PIN for sensitive actions.
|
|
parameters:
|
|
- description: JSON:API security PIN setup request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINSetupRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINSetupResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Setup security PIN
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/pin/verify:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Verifies PIN and returns a short-lived one-time action token.
|
|
parameters:
|
|
- description: JSON:API security PIN verify request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINVerifyRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SecurityPINVerifyResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Verify security PIN for sensitive action
|
|
tags:
|
|
- Auth - PIN
|
|
/api/v1/auth/refresh:
|
|
post:
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TokenResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Refresh access token
|
|
tags:
|
|
- Auth - Refresh
|
|
/api/v1/auth/register:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Creates user (public role: from AUTH_DEFAULT_ROLE, fallback: user) and sends verification link to email without issuing an auth session.
|
|
Next: open verify link -> then login.
|
|
parameters:
|
|
- description: JSON:API Register request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RegisterRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Register user with email & password
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/reset-password:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Resets password using a single-use reset token.
|
|
parameters:
|
|
- description: JSON:API Reset password request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ResetPasswordRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Reset password
|
|
tags:
|
|
- Auth - Forgot Password
|
|
/api/v1/auth/sessions:
|
|
get:
|
|
description: Lists all active sessions/devices for current user.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List active sessions
|
|
tags:
|
|
- Auth - Refresh
|
|
/api/v1/auth/sessions/{session_id}:
|
|
delete:
|
|
description: Revokes one session/device immediately. Requires PIN action token
|
|
(header X-PIN-Verification-Token) with action=3d7d1d5f-ec48-4eca-a7ea-37f4f7927d06.
|
|
parameters:
|
|
- description: Session ID
|
|
in: path
|
|
name: session_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionDeleteResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete one session
|
|
tags:
|
|
- Auth - Refresh
|
|
/api/v1/auth/set-password:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Sets first password for invited user and marks email as verified.
|
|
parameters:
|
|
- description: JSON:API Set password request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SetPasswordRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnResetSetupResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Set password from invite token
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/sso/link:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Link Microsoft SSO identity to the authenticated user. SSO login
|
|
will only work after successful link.
|
|
parameters:
|
|
- description: JSON:API SSO link request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOLinkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOLinkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
security:
|
|
- BearerAuth: []
|
|
summary: Link Microsoft SSO to current user
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/sso/unlink:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Remove Microsoft SSO mapping from authenticated user.
|
|
parameters:
|
|
- description: JSON:API SSO unlink request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOUnlinkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.SSOUnlinkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
security:
|
|
- BearerAuth: []
|
|
summary: Unlink Microsoft SSO from current user
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/totp/confirm:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Validates initial TOTP code and enables TOTP for future logins.
|
|
parameters:
|
|
- description: JSON:API TOTP confirm request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPConfirmRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VerifyEmailResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Confirm TOTP setup
|
|
tags:
|
|
- Auth - TOTP
|
|
/api/v1/auth/totp/disable:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API TOTP disable request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPDisableRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VerifyEmailResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Disable TOTP
|
|
tags:
|
|
- Auth - TOTP
|
|
/api/v1/auth/totp/reset-setup:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Removes TOTP setup so the user can re-setup authenticator.
|
|
For method=pin, obtain token from /auth/pin/verify with action=0b5409b5-94f3-4aab-9de2-44b0ad5858f1 and send it in X-PIN-Verification-Token header.
|
|
parameters:
|
|
- description: JSON:API TOTP reset setup request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPResetSetupRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VerifyEmailResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Reset TOTP setup
|
|
tags:
|
|
- Auth - TOTP
|
|
/api/v1/auth/totp/setup:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Generates secret and otpauth URL. TOTP is NOT enabled until confirmed.
|
|
parameters:
|
|
- description: JSON:API TOTP setup request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPSetupRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPSetupResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Setup TOTP
|
|
tags:
|
|
- Auth - TOTP
|
|
/api/v1/auth/totp/verify:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Completes login when TOTP is enabled and returns auth cookies.
|
|
parameters:
|
|
- description: JSON:API TOTP verify request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TOTPVerifyRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TokenResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Verify TOTP code
|
|
tags:
|
|
- Auth - TOTP
|
|
/api/v1/auth/verify-email:
|
|
get:
|
|
description: Confirms email verification after register.
|
|
parameters:
|
|
- description: Verification token
|
|
in: query
|
|
name: token
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Verify email
|
|
tags:
|
|
- Auth
|
|
/api/v1/auth/webauthn/login/begin:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Creates WebAuthn assertion options for a user email.
|
|
parameters:
|
|
- description: JSON:API WebAuthn login begin request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginBeginRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnBeginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Begin WebAuthn login
|
|
tags:
|
|
- Auth - WebAuthn
|
|
/api/v1/auth/webauthn/login/finish:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Verifies WebAuthn assertion and issues auth cookies.
|
|
parameters:
|
|
- description: JSON:API WebAuthn login finish request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnLoginFinishRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.TokenResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Finish WebAuthn login
|
|
tags:
|
|
- Auth - WebAuthn
|
|
/api/v1/auth/webauthn/register/begin:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Creates WebAuthn registration options for the authenticated user.
|
|
parameters:
|
|
- description: JSON:API WebAuthn register begin request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnRegisterBeginRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnBeginResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Begin WebAuthn registration
|
|
tags:
|
|
- Auth - WebAuthn
|
|
/api/v1/auth/webauthn/register/finish:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Verifies WebAuthn registration response and stores the credential.
|
|
parameters:
|
|
- description: JSON:API WebAuthn register finish request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnRegisterFinishRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Finish WebAuthn registration
|
|
tags:
|
|
- Auth - WebAuthn
|
|
/api/v1/auth/webauthn/reset-setup:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Removes all registered WebAuthn credentials so the user can re-setup passkeys.
|
|
For method=pin, obtain token from /auth/pin/verify with action=1f7d457e-0a19-4a36-8d9f-2c66fd2369ab and send it in X-PIN-Verification-Token header.
|
|
parameters:
|
|
- description: JSON:API WebAuthn reset setup request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.WebAuthnResetSetupRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.AuthSessionDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"429":
|
|
description: Too Many Requests
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Reset WebAuthn setup
|
|
tags:
|
|
- Auth - WebAuthn
|
|
/api/v1/bases/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Example request:
|
|
{"data":{"type":"base","attributes":{"base":"Lude Testing 2","base_abbreviation":"LOIG","base_category":"regular","address":"Lude Airfield","latitude":47.3769,"longitude":8.5417,"sortkey":1,"sms_alert":false,"checklist":false,"leg_time":"00:20","default_start_time_type":"FIXED","default_end_time_type":"FIXED","default_shift_start":"06:00","default_shift_end":"21:00","utc":"0","notes":"Main base","operational_shift_times":[{"date_start":"2026-06-15","date_end":"2026-06-15","start_time_type":"BMCT","end_time_type":"ECET"}]}}}
|
|
parameters:
|
|
- description: JSON:API base create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create base
|
|
tags:
|
|
- Bases
|
|
/api/v1/bases/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Base UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete base
|
|
tags:
|
|
- Bases
|
|
/api/v1/bases/get-all:
|
|
get:
|
|
description: JSON:API list with filtering and sorting. This endpoint returns
|
|
all bases.
|
|
parameters:
|
|
- description: Base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: category_type
|
|
type: string
|
|
- description: Alias filter for base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: base_category
|
|
type: string
|
|
- description: Search by base/base_abbreviation/address/email/phone
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Filter by DUL flag (true/false)
|
|
in: query
|
|
name: dul
|
|
type: boolean
|
|
- description: Ignored
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Ignored
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Ignored
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseListResponse'
|
|
summary: List bases
|
|
tags:
|
|
- Bases
|
|
/api/v1/bases/get-all/dt:
|
|
get:
|
|
parameters:
|
|
- description: Base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: category_type
|
|
type: string
|
|
- description: Alias filter for base category
|
|
enum:
|
|
- regular
|
|
- hems
|
|
in: query
|
|
name: base_category
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Filter by DUL flag (true/false)
|
|
in: query
|
|
name: dul
|
|
type: boolean
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseDataTableResponse'
|
|
summary: List bases (datatable)
|
|
tags:
|
|
- Bases
|
|
/api/v1/bases/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: Base UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get base by ID
|
|
tags:
|
|
- Bases
|
|
/api/v1/bases/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Example request:
|
|
{"data":{"type":"hems_base","id":"<uuid>","attributes":{"base":"Lude Testing 2","base_abbreviation":"LOIG","base_category":"regular","address":"Lude Airfield","latitude":47.3769,"longitude":8.5417,"sortkey":1,"sms_alert":false,"checklist":false,"leg_time":"00:20","default_start_time_type":"FIXED","default_end_time_type":"FIXED","default_shift_start":"06:00","default_shift_end":"21:00","utc":"0","notes":"Main base","operational_shift_times":[{"date_start":"2026-06-15","date_end":"2026-06-15","start_time_type":"BMCT","end_time_type":"ECET"}]}}}
|
|
parameters:
|
|
- description: Base UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API base update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.BaseResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update base
|
|
tags:
|
|
- Bases
|
|
/api/v1/branding/login-content:
|
|
get:
|
|
description: |-
|
|
Return public stable login title and subtitle from active master settings with backend defaults.
|
|
Supports conditional requests with `If-None-Match` / `If-Modified-Since`.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/internal_transport_http_handlers.loginBrandingContentDocument'
|
|
"304":
|
|
description: Not Modified
|
|
schema:
|
|
type: string
|
|
summary: Get login content
|
|
tags:
|
|
- Branding
|
|
/api/v1/branding/login-cover:
|
|
get:
|
|
description: |-
|
|
Return public stable login cover image for sign-in page.
|
|
Supports conditional requests with `If-None-Match` / `If-Modified-Since`.
|
|
produces:
|
|
- image/png
|
|
- image/jpeg
|
|
- image/webp
|
|
- image/svg+xml
|
|
- application/octet-stream
|
|
responses:
|
|
"200":
|
|
description: Login cover image binary
|
|
schema:
|
|
type: file
|
|
"304":
|
|
description: Not Modified
|
|
schema:
|
|
type: string
|
|
summary: Get login cover image
|
|
tags:
|
|
- Branding
|
|
/api/v1/branding/logo:
|
|
get:
|
|
description: |-
|
|
Return a stable company logo asset for frontend consumption.
|
|
Backend resolves private object storage internally (no presigned URL exposure) and serves fallback logo when managed logo is unavailable.
|
|
Supports conditional requests with `If-None-Match` / `If-Modified-Since`.
|
|
produces:
|
|
- image/png
|
|
- image/jpeg
|
|
- image/webp
|
|
- image/svg+xml
|
|
- application/octet-stream
|
|
responses:
|
|
"200":
|
|
description: Branding logo binary
|
|
schema:
|
|
type: file
|
|
"304":
|
|
description: Not Modified
|
|
schema:
|
|
type: string
|
|
summary: Get branding logo
|
|
tags:
|
|
- Branding
|
|
/api/v1/complaints/action-taken/create/{id}:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'Records the corrective action text taken for a complaint. Recording
|
|
the action does NOT sign it and does NOT lift the AOG grounding: signing the
|
|
action is a separate step at POST /api/v1/action-signoffs/sign/{helicopter_id}
|
|
(send complaint_id), and returning the aircraft to service requires a formal
|
|
release (a signed EASA release / CRS, or an NSR). The complaint stays open
|
|
until an EASA release fixes it.'
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Action taken payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintActionTakenRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Record the corrective action for a complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/action-taken/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Updates the previously-recorded corrective action text of a complaint.
|
|
Recording/updating the action does NOT sign it — signing is a separate step
|
|
at POST /api/v1/action-signoffs/sign/{helicopter_id} (send complaint_id).
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Action taken payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintActionTakenRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update the recorded corrective action for a complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create a complaint (defect) for a flight inspection.
|
|
MEL severity (mel_severity, OPTIONAL): omit it to file a "pending_mel" complaint and classify later (via PATCH /complaints/update/{id}); it MUST be classified before recording action taken. A pending complaint does NOT ground the aircraft — grounding starts at classification. Values: 0 = NON-MEL (grounds immediately); 1 = A (1 day grace); 2 = B (3 days); 3 = C (10 days); 4 = D (120 days). After the grace period passes without action the aircraft becomes AOG.
|
|
NSR (Non-Safety Release) is its own flow — sign it at POST /api/v1/complaints/nsr/sign/{id} (cancel at /nsr/unsign/{id}); it is no longer set via create/update.
|
|
Optional fields: aircraft_hours_at_report.
|
|
To record the corrective action, use POST /api/v1/complaints/action-taken/create/{id} (a separate, explicitly-signed step) — it is no longer part of create/update.
|
|
parameters:
|
|
- description: JSON:API complaint create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/get-all:
|
|
get:
|
|
description: Lists complaints grouped by helicopter. Filter by date range on
|
|
the reported date, by the name of an involved person (reporter / MEL classifier
|
|
/ action signer / NSR decider — i.e. pilot/techniker), and by free-text search
|
|
on the complaint description.
|
|
parameters:
|
|
- description: Search complaint description
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Reported date lower bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_from
|
|
type: string
|
|
- description: Reported date upper bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_to
|
|
type: string
|
|
- description: Involved person name (pilot/techniker, partial match)
|
|
in: query
|
|
name: person
|
|
type: string
|
|
- description: Filter by helicopter ID (UUIDv7)
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
- description: Sort complaints
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- default: 1
|
|
description: Page number
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- default: 20
|
|
description: Page size
|
|
in: query
|
|
name: page_size
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintGroupedListResponse'
|
|
summary: List complaints
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/get-all/dt:
|
|
get:
|
|
parameters:
|
|
- description: Search complaint description
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Reported date lower bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_from
|
|
type: string
|
|
- description: Reported date upper bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_to
|
|
type: string
|
|
- description: Involved person name (pilot/techniker, partial match)
|
|
in: query
|
|
name: person
|
|
type: string
|
|
- description: Filter by helicopter ID (UUIDv7)
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
- description: Sort complaints
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- default: 1
|
|
description: Datatable draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- default: 0
|
|
description: Datatable start offset
|
|
in: query
|
|
name: start
|
|
type: integer
|
|
- default: 10
|
|
description: Datatable page length
|
|
in: query
|
|
name: length
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintGroupedDataTableResponse'
|
|
summary: List complaints grouped by helicopter (datatable)
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/get-by-helicopter/{helicopter_id}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter ID
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintGroupedListResponse'
|
|
summary: List complaints by helicopter
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get complaint by ID
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/hold-items/get-all:
|
|
get:
|
|
description: 'Returns the Hold Item List (HIL): complaints that are still OPEN
|
|
(not yet fixed by an EASA release) AND MEL-deferred (mel_severity > 0). Non-MEL
|
|
defects (which ground the aircraft immediately) and already-serviced complaints
|
|
are excluded. Same grouped shape and filters as get-all.'
|
|
parameters:
|
|
- description: From date — reported_at >= (YYYY-MM-DD). Legacy 'Von'.
|
|
in: query
|
|
name: date_from
|
|
type: string
|
|
- description: To date — reported_at <= (YYYY-MM-DD). Legacy 'bis'.
|
|
in: query
|
|
name: date_to
|
|
type: string
|
|
- description: Pilot/Technician name — matches reporter or action signer. Legacy
|
|
'Pilot/Techniker'.
|
|
in: query
|
|
name: person
|
|
type: string
|
|
- description: Search complaint description / MEL. Legacy 'Complains'.
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20)
|
|
in: query
|
|
name: page_size
|
|
type: integer
|
|
- description: Sort expression (e.g. reported_at DESC)
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintGroupedListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List hold items (open MEL-deferred defects)
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/hold-items/get-all/dt:
|
|
get:
|
|
description: Datatable variant of the Hold Item List (open + MEL-deferred complaints).
|
|
Same filters as /hold-items/get-all (date_from, date_to, person, search, helicopter_id)
|
|
plus DataTables params (start, length, draw).
|
|
parameters:
|
|
- description: From date — reported_at >= (YYYY-MM-DD). Legacy 'Von'.
|
|
in: query
|
|
name: date_from
|
|
type: string
|
|
- description: To date — reported_at <= (YYYY-MM-DD). Legacy 'bis'.
|
|
in: query
|
|
name: date_to
|
|
type: string
|
|
- description: Pilot/Technician name — matches reporter or action signer.
|
|
in: query
|
|
name: person
|
|
type: string
|
|
- description: Search complaint description / MEL.
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
- description: DataTables start offset
|
|
in: query
|
|
name: start
|
|
type: integer
|
|
- description: DataTables page length
|
|
in: query
|
|
name: length
|
|
type: integer
|
|
- description: DataTables draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintGroupedListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List hold items (open MEL-deferred defects) — datatable
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/nsr/sign/{id}:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'Records an NSR decision on its own flow (separate from complaint
|
|
update): the aircraft is released to fly despite the open defect and is no
|
|
longer grounded by it. MEL must be classified first — an unassessed (pending_mel)
|
|
defect cannot be deferred, so a pending complaint returns 422. The complaint
|
|
stays OPEN and is only closed by a signed EASA release. Requires the complaint.nsr
|
|
permission.'
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Optional NSR reason
|
|
in: body
|
|
name: request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintNSRSignRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Sign a Non-Safety Release (NSR / MEL deferral) for a complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/nsr/unsign/{id}:
|
|
post:
|
|
description: 'Revokes the NSR decision: the deferral is lifted, so the still-open
|
|
defect grounds the aircraft again (AOG is recomputed). Requires the complaint.nsr
|
|
permission.'
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Cancel a Non-Safety Release for a complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/complaints/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update a complaint. All attributes optional; only provided fields change.
|
|
mel_severity: 0 = NON-MEL (immediate AOG); 1 = A (1 day); 2 = B (3 days); 3 = C (10 days); 4 = D (120 days) — AOG after grace passes.
|
|
NSR is not set here — it is its own flow: POST /api/v1/complaints/nsr/sign/{id} (and /nsr/unsign/{id}).
|
|
Note: the corrective action is recorded via POST /api/v1/complaints/action-taken/create/{id} (a separate, signed step), not here.
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API complaint update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ComplaintUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ComplaintResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update complaint
|
|
tags:
|
|
- Complaints
|
|
/api/v1/contact/other:
|
|
get:
|
|
description: Lists master other-people whose name/mobile_phone/email matches
|
|
`q` (empty `q` = most recent). Pick one and pass its id as `other_person_id`
|
|
in a takeover's other_person to reuse without re-entering the data.
|
|
parameters:
|
|
- description: Search text (name / mobile_phone / email)
|
|
in: query
|
|
name: q
|
|
type: string
|
|
- description: Max results (default 20)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Offset
|
|
in: query
|
|
name: offset
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonListResponse'
|
|
summary: Search reusable "other people" (non-staff) for the takeover picker
|
|
tags:
|
|
- Contact - Other People
|
|
/api/v1/contact/other/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Registers a person in the other-people master so it can be reused
|
|
across takeovers. The (name, mobile_phone, email) identity must be unique.
|
|
parameters:
|
|
- description: Other person
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.OtherPersonRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonResponse'
|
|
summary: Create a reusable "other person" (non-staff)
|
|
tags:
|
|
- Contact - Other People
|
|
/api/v1/contact/other/delete/{id}:
|
|
delete:
|
|
description: Soft-deletes a master person. Existing takeover snapshots keep
|
|
their own copy of the data.
|
|
parameters:
|
|
- description: Other person id
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
additionalProperties: true
|
|
type: object
|
|
summary: Delete a reusable "other person"
|
|
tags:
|
|
- Contact - Other People
|
|
/api/v1/contact/other/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: Other person id
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonResponse'
|
|
summary: Get one reusable "other person"
|
|
tags:
|
|
- Contact - Other People
|
|
/api/v1/contact/other/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Replaces the name/mobile_phone/email of a master person. The new
|
|
identity must not collide with another person.
|
|
parameters:
|
|
- description: Other person id
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Other person
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.OtherPersonRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.OtherPersonResponse'
|
|
summary: Update a reusable "other person"
|
|
tags:
|
|
- Contact - Other People
|
|
/api/v1/contacts/{user_id}:
|
|
delete:
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete contact
|
|
tags:
|
|
- Contacts
|
|
get:
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get contact
|
|
tags:
|
|
- Contacts
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
`data.type` must be `contact_update`.
|
|
Supports updating `role_id` and `role_ids` (multiple roles) in the same request. Sending `role_ids: []` clears all assigned roles.
|
|
Only one role-specific profile object is allowed in `attributes`. If provided, it must match one of the contact's assigned roles.
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API Contact update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update contact
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/{user_id}/chief-flags:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API chief flags request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactChiefFlagsUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update chief flags
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/{user_id}/license:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API license update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactLicenseUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update contact license fields
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/{user_id}/pilot-category:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API pilot category request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactPilotCategoryUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update pilot category
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/{user_id}/role:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API role update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactRoleUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update contact role
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/{user_id}/status:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: User UUID
|
|
in: path
|
|
name: user_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API status update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactStatusUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactSimpleSuccessResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update contact active status
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/bulk-update:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API bulk update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactBulkUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactSimpleSuccessResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Bulk update contacts status
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create new contact user and role-specific profile.
|
|
`data.type` must be `contact_create`.
|
|
`role_ids` determines roles (use `role_id` only for backward compatibility). Every selected role must include its matching role-specific profile object in `attributes`.
|
|
parameters:
|
|
- description: JSON:API Contact create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create contact
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/get-all:
|
|
get:
|
|
description: 'Filter contacts by role and pilot_category. Sort values: name,
|
|
-name, first_name, -first_name, last_name, -last_name, email, -email, sortkey,
|
|
-sortkey, note, -note, is_active, -is_active, created_at, -created_at, updated_at,
|
|
-updated_at.'
|
|
parameters:
|
|
- description: 'Role: pilot|doctor|air_rescuer|technician|flight_assistant|staff'
|
|
in: query
|
|
name: role
|
|
type: string
|
|
- description: 'Pilot category: regular|freelance|dry_lease'
|
|
in: query
|
|
name: pilot_category
|
|
type: string
|
|
- description: Filter doctor chief flag
|
|
in: query
|
|
name: chief_doctor
|
|
type: boolean
|
|
- description: Filter technician chief flag
|
|
in: query
|
|
name: chief_technician
|
|
type: boolean
|
|
- description: Filter responsible complaint flag
|
|
in: query
|
|
name: responsible_complaint
|
|
type: boolean
|
|
- description: Filter pilot chief flag
|
|
in: query
|
|
name: chief_pilot
|
|
type: boolean
|
|
- description: Filter IFR qualified flag
|
|
in: query
|
|
name: ifr_qualified
|
|
type: boolean
|
|
- description: Search by username/email/name
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Limit (default 20)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Offset (default 0)
|
|
in: query
|
|
name: offset
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List contacts
|
|
tags:
|
|
- Contacts
|
|
/api/v1/contacts/get-all/dt:
|
|
get:
|
|
description: Datatable response with pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 1000)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Role filter
|
|
in: query
|
|
name: role
|
|
type: string
|
|
- description: Pilot category filter
|
|
in: query
|
|
name: pilot_category
|
|
type: string
|
|
- description: Filter doctor chief flag
|
|
in: query
|
|
name: chief_doctor
|
|
type: boolean
|
|
- description: Filter technician chief flag
|
|
in: query
|
|
name: chief_technician
|
|
type: boolean
|
|
- description: Filter responsible complaint flag
|
|
in: query
|
|
name: responsible_complaint
|
|
type: boolean
|
|
- description: Filter pilot chief flag
|
|
in: query
|
|
name: chief_pilot
|
|
type: boolean
|
|
- description: Filter IFR qualified flag
|
|
in: query
|
|
name: ifr_qualified
|
|
type: boolean
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ContactDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List contacts (datatable)
|
|
tags:
|
|
- Contacts
|
|
/api/v1/dul/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'Possible error code: DUL_INVALID_JSON, DUL_INVALID_UUID, DUL_DATE_INVALID,
|
|
DUL_VALIDATION_FAILED, DUL_CREATE_FAILED.'
|
|
parameters:
|
|
- description: DUL create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create DUL
|
|
tags:
|
|
- DUL
|
|
/api/v1/dul/delete/{id}:
|
|
delete:
|
|
description: 'Possible error code: DUL_INVALID_UUID, DUL_DELETE_FAILED.'
|
|
parameters:
|
|
- description: DUL ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete DUL
|
|
tags:
|
|
- DUL
|
|
/api/v1/dul/get-all:
|
|
get:
|
|
description: 'Possible error code: DUL_LIST_FAILED.'
|
|
parameters:
|
|
- description: Search by name/info
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number alias
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size alias
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size alias
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List DUL grouped by base
|
|
tags:
|
|
- DUL
|
|
/api/v1/dul/get-all/dt:
|
|
get:
|
|
description: 'Possible error code: DUL_LIST_FAILED.'
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search by name/info
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List DUL grouped by base (datatable)
|
|
tags:
|
|
- DUL
|
|
/api/v1/dul/get/{id}:
|
|
get:
|
|
description: 'Possible error code: DUL_INVALID_UUID, DUL_NOT_FOUND.'
|
|
parameters:
|
|
- description: DUL ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get DUL by ID
|
|
tags:
|
|
- DUL
|
|
/api/v1/dul/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: 'Possible error code: DUL_INVALID_JSON, DUL_INVALID_UUID, DUL_DATE_INVALID,
|
|
DUL_VALIDATION_FAILED, DUL_NOT_FOUND, DUL_UPDATE_FAILED.'
|
|
parameters:
|
|
- description: DUL ID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: DUL update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.DULResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update DUL
|
|
tags:
|
|
- DUL
|
|
/api/v1/duty-roster/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Unified endpoint for all base categories.
|
|
parameters:
|
|
- description: Create request payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create duty roster
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/duty-roster/crew:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Unified crew delete endpoint by `data.id` and `roster_detail`.
|
|
parameters:
|
|
- description: Crew delete request payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterDeleteCrewByIDRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterCrewDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Remove duty roster crew assignment
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/duty-roster/delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Unified delete endpoint by `data.id`.
|
|
parameters:
|
|
- description: Delete request payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterAnyDeleteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete duty roster
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/duty-roster/get-all:
|
|
get:
|
|
description: Combined roster list across HEMS and Base for date range and optional
|
|
base filters.
|
|
parameters:
|
|
- description: HEMS base UUID
|
|
in: query
|
|
name: hems_base_id
|
|
type: string
|
|
- description: Base UUID
|
|
in: query
|
|
name: base_id
|
|
type: string
|
|
- description: Filter by base name (contains, case-insensitive)
|
|
in: query
|
|
name: base_name
|
|
type: string
|
|
- description: Start date (YYYY-MM-DD)
|
|
in: query
|
|
name: from
|
|
type: string
|
|
- description: End date (YYYY-MM-DD)
|
|
in: query
|
|
name: to
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List all rosters (HEMS + Base)
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/duty-roster/get-all/dt:
|
|
get:
|
|
description: 'Unified datatable endpoint. Optional `base_type` filter: `hems`
|
|
or `base`.'
|
|
parameters:
|
|
- description: Base type filter (hems|base)
|
|
in: query
|
|
name: base_type
|
|
type: string
|
|
- description: Base UUID
|
|
in: query
|
|
name: base_id
|
|
type: string
|
|
- description: Filter by base name
|
|
in: query
|
|
name: base_name
|
|
type: string
|
|
- description: Start date (YYYY-MM-DD)
|
|
in: query
|
|
name: from
|
|
type: string
|
|
- description: End date (YYYY-MM-DD)
|
|
in: query
|
|
name: to
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterGroupedDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List duty roster (datatable)
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/duty-roster/update:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Unified update endpoint by `data.id`.
|
|
parameters:
|
|
- description: Update request payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.DutyRosterUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.DutyRosterResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update duty roster (partial)
|
|
tags:
|
|
- Flights - Duty Roster
|
|
/api/v1/easa-releases/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API EASA release create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
summary: Create EASA maintenance release (draft) for a helicopter
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: EASA release ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseDeleteResponse'
|
|
summary: Delete (void) an EASA release
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/get-by-complaint/{complaint_id}:
|
|
get:
|
|
parameters:
|
|
- description: Complaint ID (UUIDv7)
|
|
in: path
|
|
name: complaint_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
summary: Get the current EASA release for a complaint
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/get-by-flight/{flight_id}:
|
|
get:
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
summary: Get the current EASA release for a flight
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/get-by-helicopter/{helicopter_id}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseListResponse'
|
|
summary: List EASA releases for a helicopter
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: EASA release ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
summary: Get EASA release by ID
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/sign/{id}:
|
|
post:
|
|
description: 'Signs the release and closes the helicopter''s open complaints.
|
|
The corrective-action sign-off is re-checked at sign time: if the sign-off
|
|
was invalidated since the draft was created (e.g. its complaint was reopened)
|
|
it returns 422 `EASA_RELEASE_SIGNOFF_REQUIRED` and does not sign.'
|
|
parameters:
|
|
- description: EASA release ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Sign the EASA maintenance release (closes the helicopter's open complaints)
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/easa-releases/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: EASA release ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API EASA release update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.EASAReleaseUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.EASAReleaseResponse'
|
|
summary: Update EASA release (draft fields)
|
|
tags:
|
|
- EASA Releases
|
|
/api/v1/facilities/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a facility row using one shared table. Flight-data SPO references
|
|
now expect categories like `heslo-rope-label`, `heslo-rope-length`, `heslo-hook`,
|
|
`hec-rope-label`, and `hec-rope-length`.
|
|
parameters:
|
|
- description: JSON:API Facility create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create facility
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/facilities/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Facility UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete facility
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/facilities/get-all:
|
|
get:
|
|
description: JSON:API list with pagination, filtering and sorting. Supports
|
|
one shared table with category discriminator (e.g. `heslo-rope-label`, `heslo-hook`,
|
|
`hec-rope-label`).
|
|
parameters:
|
|
- description: Search by name/type/length/weight
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Filter by category (e.g. heslo-rope-label, heslo-hook, hec-rope-label)
|
|
in: query
|
|
name: category
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityListResponse'
|
|
summary: List facilities
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/facilities/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Facility category
|
|
in: query
|
|
name: category
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityDataTableResponse'
|
|
summary: List facilities (datatable)
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/facilities/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: Facility UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get facility by ID
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/facilities/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch facility by ID.
|
|
parameters:
|
|
- description: Facility UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API Facility update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FacilityResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update facility (partial)
|
|
tags:
|
|
- Facility - Facilities
|
|
/api/v1/federal-state/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a federal state row.
|
|
parameters:
|
|
- description: JSON:API federal state create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create federal state
|
|
tags:
|
|
- Hospital - Federal State
|
|
/api/v1/federal-state/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: Federal State ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete federal state
|
|
tags:
|
|
- Hospital - Federal State
|
|
/api/v1/federal-state/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, sortkey, -sortkey, is_active, -is_active, created_at, -created_at,
|
|
updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter federal state by land UUID
|
|
in: query
|
|
name: land_id
|
|
type: string
|
|
- description: Filter federal state by land name
|
|
in: query
|
|
name: land_name
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateListResponse'
|
|
summary: List federal state
|
|
tags:
|
|
- Hospital - Federal State
|
|
/api/v1/federal-state/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search by name
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter federal state by land UUID
|
|
in: query
|
|
name: land_id
|
|
type: string
|
|
- description: Filter federal state by land name
|
|
in: query
|
|
name: land_name
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateDataTableResponse'
|
|
summary: List federal state (datatable)
|
|
tags:
|
|
- Hospital - Federal State
|
|
/api/v1/federal-state/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch federal state by ID.
|
|
parameters:
|
|
- description: Federal State ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API federal state update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FederalStateResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update federal state (partial)
|
|
tags:
|
|
- Hospital - Federal State
|
|
/api/v1/file-manager/attachments/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create generic attachment relation between a file and business
|
|
reference (ref_type/ref_id).
|
|
operationId: FileManagerCreateAttachment
|
|
parameters:
|
|
- description: JSON:API attachment create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerAttachmentCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerAttachmentResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Attach file to business reference
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/attachments/delete/{uuid}:
|
|
delete:
|
|
description: Remove generic attachment relation by UUID.
|
|
operationId: FileManagerDeleteAttachment
|
|
parameters:
|
|
- description: Attachment UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Detach attachment relation
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/attachments/get-all:
|
|
get:
|
|
description: List generic attachment relations by ref_type and ref_id.
|
|
operationId: FileManagerListAttachmentsByReference
|
|
parameters:
|
|
- description: Business reference type, e.g. helicopter
|
|
in: query
|
|
name: ref_type
|
|
required: true
|
|
type: string
|
|
- description: Business reference ID
|
|
in: query
|
|
name: ref_id
|
|
required: true
|
|
type: string
|
|
- description: Optional attachment category
|
|
in: query
|
|
name: category
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: 'Sort values: sort_order,-sort_order,created_at,-created_at,updated_at,-updated_at'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerAttachmentListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List attachments by business reference
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/attachments/get/{uuid}:
|
|
get:
|
|
description: Get one generic attachment relation by UUID.
|
|
operationId: FileManagerGetAttachment
|
|
parameters:
|
|
- description: Attachment UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerAttachmentResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get attachment detail
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Soft-delete multiple nodes by UUID. UUID can be folder or file.
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerDeleteNodesBulk
|
|
parameters:
|
|
- description: Bulk delete request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodePurgeBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete nodes (file/folder) in bulk
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/{fileId}/edit-session:
|
|
get:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Returns a Collabora/WOPI write session for an already existing file that belongs to the authenticated user's takeover scope or to the authenticated user as an unattached draft.
|
|
This endpoint does not create or copy files. It only resolves the file, checks access, and mints a new access token.
|
|
Use this when reopening an existing file for editing.
|
|
Path param `fileId` must be a valid UUIDv7.
|
|
parameters:
|
|
- description: File UUID (UUIDv7)
|
|
in: path
|
|
name: fileId
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileWOPISessionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"403":
|
|
description: Forbidden
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Start a WOPI edit session for an existing file
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/cancel-upload:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Cancel pending upload intents before file entity creation.
|
|
This endpoint is intended for pre-create cleanup when FE uploaded to object storage but user cancels flow.
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerCancelUploadIntentBulk
|
|
parameters:
|
|
- description: Bulk cancel upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileCancelUploadBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Cancel upload intent (bulk)
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Final public control-plane step after direct PUT upload to S3 (bulk contract).
|
|
Verifies uploaded object per item from upload intent, then persists metadata+outbox durably and emits lifecycle status.
|
|
This endpoint does not upload binary data.
|
|
Public flow: POST /files/upload (intent+presign) -> PUT to S3 -> POST /files/create.
|
|
folder_id is optional; null/omitted means create in root folder.
|
|
Canonical JSON:API data.type is "file_manager_file_create" (legacy "file_manager_file" remains accepted for backward compatibility).
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerCreateFileFromUploadedObject
|
|
parameters:
|
|
- description: Bulk create payload for user profile image
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUserBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-aircraft-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same as bulk create, but folder is resolved using hierarchy "__system_root_files__" -> "aircraft" -> "<aircraft designation>".
|
|
aircraft_uuid is required per item to resolve designation.
|
|
operationId: FileManagerCreateAircraftImageFromUploadedObject
|
|
parameters:
|
|
- description: Bulk create payload for aircraft image
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileAircraftBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create aircraft image file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-base-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same as bulk create, but folder is resolved using hierarchy "__system_root_files__" -> "bases" -> "<base-type>" -> "<base-name>".
|
|
base_uuid is required per item.
|
|
operationId: FileManagerCreateBaseImageFromUploadedObject
|
|
parameters:
|
|
- description: Bulk create payload for base image
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileBaseBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create base image file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-dul-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Finalize uploaded DUL image file(s) from upload intent.
|
|
If dul_uuid is provided, file is created under DUL folder hierarchy.
|
|
If dul_uuid is omitted, file is still created (unassigned), then can be attached during /api/v1/dul/create via file_uuid.
|
|
Possible status: 201 (all success), 207 (partial success), 400 (invalid json/create failed), 401 (unauthorized), 403 (forbidden), 404 (dul or file resources not found), 409 (upload-intent conflict), 422 (validation), 503 (DUL or file-manager service unavailable).
|
|
Possible error code: INVALID_REQUEST, USER_UNAUTHORIZED, FORBIDDEN_ACCESS, FILE_MANAGER_VALIDATION_FAILED, FILE_MANAGER_FILE_NOT_FOUND, FILE_MANAGER_UPLOAD_INTENT_NOT_FOUND, FILE_MANAGER_UPLOAD_INTENT_CONFLICT, DUL_NOT_FOUND, FILE_MANAGER_STORAGE_UNAVAILABLE, FILE_MANAGER_QUEUE_UNAVAILABLE, FILE_MANAGER_ATTACHMENT_SERVICE_UNAVAILABLE, FILE_MANAGER_ACTION_FAILED.
|
|
parameters:
|
|
- description: Bulk create payload for DUL image
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileDULBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"403":
|
|
description: Forbidden
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create DUL image file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-from-template:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Copies a helicopter template file into a new draft file and returns a Collabora/WOPI write session for the newly created file.
|
|
This endpoint always marks the created file as `is_template=false` because the result is a normal working document, not a reusable template.
|
|
The source template must be a helicopter file that belongs to the same `helicopter_id` provided in the request.
|
|
`template_uuid` is the helicopter-file UUID, not the file UUID.
|
|
Request fields: `template_uuid`, `helicopter_id`, optional `takeover_id`, and `name`.
|
|
Success response includes the new `file_id`, Collabora editor action URL, an access token, and the token TTL in milliseconds.
|
|
parameters:
|
|
- description: Create-from-template payload
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileTemplateCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileWOPISessionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"403":
|
|
description: Forbidden
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create file from template and start a WOPI edit session
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-mission-file:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Materializes uploaded objects into folder "missions/<mission-uuid>", creates attachments (ref_type=mission), and links them to the mission so they appear in GET mission.
|
|
mission_uuid is required per item.
|
|
Possible error code: MISSION_FILE_INVALID_JSON, MISSION_FILE_VALIDATION, MISSION_FILE_INVALID_MISSION_UUID, MISSION_FILE_MISSION_NOT_FOUND, MISSION_FILE_SERVICE_UNAVAILABLE, MISSION_FILE_ACTION_FAILED, FILE_MANAGER_UPLOAD_INTENT_NOT_FOUND, FILE_MANAGER_STORAGE_UNAVAILABLE, FILE_MANAGER_ACTION_FAILED.
|
|
operationId: FileManagerCreateMissionFileFromUploadedObject
|
|
parameters:
|
|
- description: Bulk create payload for mission file
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileMissionBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create mission file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-takeover-file:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Finalize uploaded takeover file(s) from upload intent. The takeover
|
|
relation is attached later from file_id during takeover create/update.
|
|
parameters:
|
|
- description: Bulk create payload for takeover file
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileTakeoverBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create takeover file node from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/create-user-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same as bulk create, but folder is resolved using hierarchy "__system_root_files__" -> "user" -> "<username>-<user-uuid>".
|
|
user_uuid is required per item to resolve target user folder.
|
|
operationId: FileManagerCreateUserImageFromUploadedObject
|
|
parameters:
|
|
- description: Bulk create payload for user profile image
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUserBulkCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create user profile image file record from uploaded object
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/get/{uuid}:
|
|
get:
|
|
description: Return file metadata by UUID.
|
|
operationId: FileManagerGetFile
|
|
parameters:
|
|
- description: File UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileDetailResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get file detail
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update file metadata by UUID (rename and/or move folder).
|
|
operationId: FileManagerUpdateFileEntity
|
|
parameters:
|
|
- description: File UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API file manager file update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update file entity (rename and/or move)
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Control-plane endpoint to create upload intents and presigned PUT URLs for direct upload to S3 (bulk contract).
|
|
Binary does not flow through backend upload endpoint.
|
|
After successful PUT to S3, call POST /api/v1/file-manager/files/create with upload_intent_uuid.
|
|
Presigned URL TTL is controlled by backend storage config.
|
|
Bulk payload accepts one or many items. Response is item-based and supports partial success.
|
|
operationId: FileManagerRequestUploadIntent
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents + presigned PUT URLs
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-aircraft-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same flow as file upload intent, but dedicated for aircraft image drag-drop flow.
|
|
Use together with /api/v1/file-manager/files/create-aircraft-image to force target folder "aircraft".
|
|
operationId: FileManagerRequestAircraftImageUploadIntent
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for aircraft drag-drop images
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-base-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same flow as file upload intent, but dedicated for base image flow.
|
|
Use together with /api/v1/file-manager/files/create-base-image to force target folder under bases hierarchy.
|
|
operationId: FileManagerRequestBaseImageUploadIntent
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for base images
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-dul-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Dedicated upload-intent endpoint for DUL image flow.
|
|
Possible status: 201 (all success), 207 (partial success), 400 (invalid json), 401 (unauthorized), 403 (forbidden), 422 (validation), 503 (storage/queue/upload-intent service unavailable).
|
|
Possible error code: INVALID_REQUEST, USER_UNAUTHORIZED, FORBIDDEN_ACCESS, FILE_MANAGER_VALIDATION_FAILED, FILE_MANAGER_STORAGE_UNAVAILABLE, FILE_MANAGER_QUEUE_UNAVAILABLE, FILE_MANAGER_UPLOAD_INTENT_UNAVAILABLE, FILE_MANAGER_ACTION_FAILED.
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"403":
|
|
description: Forbidden
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for DUL images
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-mission-file:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Dedicated upload-intent endpoint for mission file flow.
|
|
Use together with /api/v1/file-manager/files/create-mission-file to attach the file to a mission.
|
|
operationId: FileManagerRequestMissionFileUploadIntent
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for mission files
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-takeover-file:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Dedicated upload-intent endpoint for takeover file flow.
|
|
Use together with /api/v1/file-manager/files/create-takeover-file to persist the takeover file relation.
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for takeover files
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/files/upload-user-image:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Same flow as file upload intent, but dedicated for user profile image flow.
|
|
Use together with /api/v1/file-manager/files/create-user-image to force target folder under user hierarchy.
|
|
operationId: FileManagerRequestUserImageUploadIntent
|
|
parameters:
|
|
- description: Bulk upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFileUploadIntentBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Request upload intents for user profile images
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/folders/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create one folder metadata node under root or under provided parent_id.
|
|
operationId: FileManagerCreateFolder
|
|
parameters:
|
|
- description: JSON:API file manager folder create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFolderResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create folder node
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/folders/get/{uuid}:
|
|
get:
|
|
description: Return folder metadata by UUID.
|
|
operationId: FileManagerGetFolder
|
|
parameters:
|
|
- description: Folder UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFolderDetailResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get folder detail
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/folders/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update folder metadata by UUID (rename and/or move parent).
|
|
operationId: FileManagerUpdateFolder
|
|
parameters:
|
|
- description: Folder UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API file manager folder update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerFolderUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFolderResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update folder node
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/get-all:
|
|
get:
|
|
description: |-
|
|
Return merged direct children (folders + files) for optional parent_uuid (non-recursive).
|
|
If parent_uuid is omitted, response returns root level nodes.
|
|
If search is provided, performs a global name search across all folders and files (parent_uuid is ignored).
|
|
operationId: FileManagerListMergedExplorerNodes
|
|
parameters:
|
|
- description: Parent folder UUID
|
|
in: query
|
|
name: parent_uuid
|
|
type: string
|
|
- description: Search keyword (global name search across all folders and files)
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerNodeListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List merged explorer nodes
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/move:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Unified move endpoint. Each item UUID can be either folder UUID or file UUID.
|
|
destination_folder_uuid null/empty means move to root.
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerMoveNodesBulk
|
|
parameters:
|
|
- description: Bulk move request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodeMoveBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Move nodes (file/folder) in bulk
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/purge-delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Permanently delete multiple trashed nodes by UUID. UUID can be folder or file.
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerPurgeNodesBulkFromTrash
|
|
parameters:
|
|
- description: Bulk purge request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodePurgeBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerPurgeNodeBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Purge nodes (file/folder) from trash in bulk
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/restore:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Restore multiple trashed nodes by UUID to original location.
|
|
Bulk payload accepts one or many items.
|
|
operationId: FileManagerRestoreNodesBulk
|
|
parameters:
|
|
- description: Bulk restore request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FileManagerNodePurgeBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerMoveNodeBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Restore nodes (file/folder) in bulk
|
|
tags:
|
|
- File Manager
|
|
/api/v1/file-manager/trash/get-all:
|
|
get:
|
|
description: Return merged trashed nodes (folders + files) for trash explorer.
|
|
operationId: FileManagerListMergedTrashItems
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: 'Sort values: deleted_at,-deleted_at,name,-name,type,-type,size_bytes,-size_bytes'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerTrashListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List merged trash items
|
|
tags:
|
|
- File Manager
|
|
/api/v1/fleet-status/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create fleet status with maintenance schedules and file attachments.
|
|
parameters:
|
|
- description: Fleet status create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create fleet status
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/delete/{id}:
|
|
delete:
|
|
description: Soft delete fleet status by ID.
|
|
parameters:
|
|
- description: Fleet status ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete fleet status
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/get-all:
|
|
get:
|
|
description: Lists every helicopter from the master, each with its latest fleet
|
|
status (or empty data when it has none). Paginated by helicopter.
|
|
parameters:
|
|
- default: 1
|
|
description: Page number
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- default: 20
|
|
description: Page size
|
|
in: query
|
|
name: page_size
|
|
type: integer
|
|
- description: Search helicopters by designation/identifier/type
|
|
in: query
|
|
name: filter
|
|
type: string
|
|
- description: 'Sort helicopters, example: designation'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: 'Filter by operational status; comma-separated for multiple (e.g.
|
|
available,booked). Values: available, booked, aog, mcf'
|
|
in: query
|
|
name: status
|
|
type: string
|
|
- description: Filter by helicopter ID (UUIDv7); combined with status uses AND
|
|
logic
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List fleet status
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/get-all/dt:
|
|
get:
|
|
description: Lists every helicopter from the master, each with its latest fleet
|
|
status (or empty data when it has none). Paginated by helicopter.
|
|
parameters:
|
|
- default: 1
|
|
description: Datatable draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- default: 0
|
|
description: Datatable start offset
|
|
in: query
|
|
name: start
|
|
type: integer
|
|
- default: 10
|
|
description: Datatable page length
|
|
in: query
|
|
name: length
|
|
type: integer
|
|
- description: Search helicopters by designation/identifier/type
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: 'Sort helicopters, example: designation'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: 'Filter by operational status; comma-separated for multiple (e.g.
|
|
available,booked). Values: available, booked, aog, mcf'
|
|
in: query
|
|
name: status
|
|
type: string
|
|
- description: Filter by helicopter ID (UUIDv7); combined with status uses AND
|
|
logic
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List fleet status (datatable)
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/get-by-helicopter/{helicopter_id}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get latest fleet status by helicopter ID
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: Fleet status ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get fleet status by ID
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/history/{helicopter_id}:
|
|
get:
|
|
description: 'Unified timeline: maintenance servicing events merged with complaint/MEL/NSR/action/MCF/EASA/AOG
|
|
action events, newest first.'
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
- default: 1
|
|
description: Page number
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- default: 20
|
|
description: Page size
|
|
in: query
|
|
name: page_size
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetHistoryListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List fleet history (timeline) by helicopter
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/mark-serviced/{id}:
|
|
post:
|
|
description: Move current maintenance schedules into service logs, then clear
|
|
active schedules.
|
|
parameters:
|
|
- description: Fleet status ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusMarkServicedResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Mark fleet status serviced
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/fleet-status/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update fleet status by ID with full replacement for schedules and
|
|
files.
|
|
parameters:
|
|
- description: Fleet status ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Fleet status update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FleetStatusUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FleetStatusResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update fleet status
|
|
tags:
|
|
- Fleet Status
|
|
/api/v1/flight-data/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create a flight data row.
|
|
Required field: `mission_id`. `co_pilot_id` is optional.
|
|
Swagger request example shows the complete common payload for an `SPO` mission. `SPO` is the default example shape, and for other mission types (`CAT` and `NCO`) you do not need to send the `hec`, `heslo`, or `logging` blocks. `rotor_brake_cycle` is optional for `SPO`, `CAT`, and `NCO`.
|
|
SPO facility references must point to facilities with categories: `heslo_rope_label_id -> heslo-rope-label`, `heslo.slings -> heslo-rope-length`, `logging.slings -> heslo-hook`, `hec.flights -> hec-rope-label`, and `hec.slings -> hec-rope-length`.
|
|
SPO-specific response fields (`heslo`, `logging`, and `hec`) are returned only when the related mission type is `SPO`.
|
|
Example request: {"data":{"type":"flight_data_create","attributes":{"mission_id":"019d6774-98e8-7fba-9ef4-3795c0da8a13"}}}
|
|
parameters:
|
|
- description: JSON:API flight data create request. Example is for SPO; CAT/NCO
|
|
can omit SPO-only blocks and other optional fields.
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create flight data
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flight-data/delete/{id}:
|
|
delete:
|
|
description: Soft delete flight data by UUID.
|
|
parameters:
|
|
- description: Flight Data UUID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete flight data by ID
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flight-data/get-all:
|
|
get:
|
|
description: |-
|
|
List flight data rows. Supports `date` for exact flight take-off date filtering (`YYYY-MM-DD`), plus `mission_id` and `flight_data_id` filters.
|
|
SPO-specific response fields (`heslo`, `logging`, and `hec`) are returned only when the related mission type is `SPO`.
|
|
parameters:
|
|
- description: Filter by flight take-off date (YYYY-MM-DD)
|
|
in: query
|
|
name: date
|
|
type: string
|
|
- description: Filter by mission UUID
|
|
in: query
|
|
name: mission_id
|
|
type: string
|
|
- description: Filter by flight-data UUID
|
|
in: query
|
|
name: flight_data_id
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List flight data
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flight-data/get-all/dt:
|
|
get:
|
|
description: |-
|
|
Datatable-friendly list of flight data rows. Supports `date` for exact flight take-off date filtering (`YYYY-MM-DD`), plus `mission_id` and `flight_data_id` filters.
|
|
Same payload shape as `get-all`, but with DataTables paging params (`start`, `length`, `draw`).
|
|
SPO-specific response fields (`heslo`, `logging`, and `hec`) are returned only when the related mission type is `SPO`.
|
|
parameters:
|
|
- description: DataTables draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Paging start offset
|
|
in: query
|
|
name: start
|
|
type: integer
|
|
- description: Paging length
|
|
in: query
|
|
name: length
|
|
type: integer
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Filter by flight take-off date (YYYY-MM-DD)
|
|
in: query
|
|
name: date
|
|
type: string
|
|
- description: Filter by mission UUID
|
|
in: query
|
|
name: mission_id
|
|
type: string
|
|
- description: Filter by flight-data UUID
|
|
in: query
|
|
name: flight_data_id
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List flight data (datatable)
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flight-data/get/{id}:
|
|
get:
|
|
description: |-
|
|
Get flight data detail by ID. Path `id` can be mission UUID, flight-data UUID, or flight UUID.
|
|
SPO-specific response fields (`heslo`, `logging`, and `hec`) are returned only when the related mission type is `SPO`.
|
|
parameters:
|
|
- description: Mission UUID / Flight Data UUID / Flight UUID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get flight data by ID
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flight-data/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update a flight data row by UUID.
|
|
Required field: `mission_id`. `co_pilot_id` is optional.
|
|
Swagger request example uses the same SPO-shaped payload as create, but this endpoint updates an existing flight-data row.
|
|
SPO facility references must point to facilities with categories: `heslo_rope_label_id -> heslo-rope-label`, `heslo.slings -> heslo-rope-length`, `logging.slings -> heslo-hook`, `hec.flights -> hec-rope-label`, and `hec.slings -> hec-rope-length`.
|
|
For frontend usage, send only the fields that need to change; omitted fields stay unchanged. `SPO` is the default example shape, and for `CAT`/`NCO` you do not need to send the `hec`, `heslo`, or `logging` blocks. `rotor_brake_cycle` is optional for `SPO`, `CAT`, and `NCO`.
|
|
SPO-specific response fields (`heslo`, `logging`, and `hec`) are returned only when the related mission type is `SPO`.
|
|
Example request: {"data":{"type":"flight_data_create","attributes":{"mission_id":"019d6774-98e8-7fba-9ef4-3795c0da8a13"}}}
|
|
parameters:
|
|
- description: Flight Data UUID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API flight data update request. Send only fields you want
|
|
to change; omit the rest.
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FlightDataUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update flight data by ID
|
|
tags:
|
|
- Mission - Flight Data
|
|
/api/v1/flights/get:
|
|
get:
|
|
description: |-
|
|
Returns flights assigned to current auth user, including workflow steps (`duty_roster`, `reserve_ac`, `mission`, `after_flight_inspection`, `fm_report`).
|
|
Each step includes `status`, `completed_at`, and `completed_by` for consistent FE rendering.
|
|
parameters:
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightListResponse'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get flights for current auth user (from duty roster assignment)
|
|
tags:
|
|
- Flight
|
|
/api/v1/flights/get-all:
|
|
get:
|
|
description: |-
|
|
Supports `search`, `filter[search]`, `sort`, `page[number]`, `page[size]`, `page`, `size`, and `limit`.
|
|
Supports `date` and `filter[date]` for exact flight date filtering (`YYYY-MM-DD`).
|
|
Returns paginated flights with workflow steps (`takeover`, `mission`, `after_flight_inspection`, `fm_report`).
|
|
Each step includes `status`, `completed_at`, and `completed_by` for consistent FE rendering.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter by flight date (YYYY-MM-DD)
|
|
in: query
|
|
name: date
|
|
type: string
|
|
- description: Filter by flight date (YYYY-MM-DD) (JSON:API style)
|
|
in: query
|
|
name: filter[date]
|
|
type: string
|
|
- description: Sort field
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FlightListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List flights
|
|
tags:
|
|
- Flight
|
|
/api/v1/fm-reports/{id}:
|
|
delete:
|
|
description: Soft-delete an FM report by ID. Requires a verified security PIN.
|
|
parameters:
|
|
- description: FM Report ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: One-time security-PIN action token
|
|
in: header
|
|
name: X-PIN-Verification-Token
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"204":
|
|
description: No Content
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete FM report
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/{id}/attachments:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'After uploading the file to the presigned URL (from /attachments/upload-intent),
|
|
call this endpoint with the upload_intent_uuid, name, and category to create
|
|
the file node and attach it to the FM report. Valid categories: additional_fm_report,
|
|
briefing, weight_balance, ofp.'
|
|
parameters:
|
|
- description: FM Report ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: body with upload_intent_uuid, name, and category
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
type: object
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create FM report attachment from upload intent
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/{id}/attachments/{att_id}:
|
|
delete:
|
|
description: Remove a specific attachment from an FM report. Verifies ownership
|
|
before deletion.
|
|
parameters:
|
|
- description: FM Report ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Attachment ID (UUIDv7)
|
|
in: path
|
|
name: att_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"204":
|
|
description: No Content
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete attachment from FM report
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/{id}/attachments/upload-intent:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Returns a presigned PUT URL and upload_intent_uuid. After uploading
|
|
the file to the presigned URL, call POST /fm-reports/{id}/attachments with
|
|
the upload_intent_uuid to create the file node and attach it to the report.
|
|
parameters:
|
|
- description: FM Report ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: body with name, content_type, size_bytes
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
type: object
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Request upload intent for FM report attachment
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/complete/{flight_id}:
|
|
post:
|
|
description: 'Mark an FM report as completed for a flight. Once completed, the
|
|
report becomes read-only and flight data edits are locked. Requires a verified
|
|
security PIN: send the one-time token from POST /auth/pin/verify (action 1a75135b-430a-4592-83e1-6d27814185af)
|
|
in the X-PIN-Verification-Token header.'
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
- description: One-time security-PIN action token
|
|
in: header
|
|
name: X-PIN-Verification-Token
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportResponse'
|
|
"202":
|
|
description: PIN verification required
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Complete FM report
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/get-all:
|
|
get:
|
|
description: Returns a paginated list of FM reports. Supports `search`, `filter[search]`,
|
|
`filter[flight_id]`, `filter[takeover_id]`, `filter[flight_inspection_id]`,
|
|
`filter[flight_date]`, `filter[has_engine1_gpc_n1]`, `filter[has_engine1_ptc_n2]`,
|
|
`filter[has_engine2_gpc_n1]`, `filter[has_engine2_ptc_n2]`, `sort`, `page[number]`,
|
|
`page[size]`, `page`, `size`, and `limit`.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter by flight ID
|
|
in: query
|
|
name: filter[flight_id]
|
|
type: string
|
|
- description: Filter by takeover ID
|
|
in: query
|
|
name: filter[takeover_id]
|
|
type: string
|
|
- description: Filter by flight inspection ID
|
|
in: query
|
|
name: filter[flight_inspection_id]
|
|
type: string
|
|
- description: Filter by flight date (YYYY-MM-DD)
|
|
in: query
|
|
name: filter[flight_date]
|
|
type: string
|
|
- description: Filter reports with or without engine1_gpc_n1
|
|
in: query
|
|
name: filter[has_engine1_gpc_n1]
|
|
type: boolean
|
|
- description: Filter reports with or without engine1_ptc_n2
|
|
in: query
|
|
name: filter[has_engine1_ptc_n2]
|
|
type: boolean
|
|
- description: Filter reports with or without engine2_gpc_n1
|
|
in: query
|
|
name: filter[has_engine2_gpc_n1]
|
|
type: boolean
|
|
- description: Filter reports with or without engine2_ptc_n2
|
|
in: query
|
|
name: filter[has_engine2_ptc_n2]
|
|
type: boolean
|
|
- description: 'Sort order: flight_date, -flight_date, created_at, -created_at,
|
|
updated_at, -updated_at, engine1_gpc_n1, -engine1_gpc_n1, engine1_ptc_n2,
|
|
-engine1_ptc_n2, engine2_gpc_n1, -engine2_gpc_n1, engine2_ptc_n2, -engine2_ptc_n2'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List FM reports
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/get/{flight_id}:
|
|
get:
|
|
description: Returns a complete FM report for a flight. The persisted table
|
|
keeps only the report keys; the response preloads flight, missions, flight
|
|
inspection, and after-flight inspection details. It also embeds `fleet_status`
|
|
(next inspection / maintenance schedules + base hours, component summary,
|
|
EASA maintenance release) — a snapshot frozen when the report was created
|
|
at after-flight inspection, so later complaints / maintenance changes do not
|
|
alter a historical report. `fleet_status` is omitted when the helicopter has
|
|
no fleet status.
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get FM report by flight ID
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/fm-reports/update/{flight_id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update only the engine metric fields for an existing FM report.
|
|
All other FM report fields stay read-only on this endpoint. The response mirrors
|
|
the GET FM report and embeds the frozen `fleet_status` snapshot (next inspection
|
|
/ maintenance schedules + base hours, component summary, EASA maintenance
|
|
release).
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API FM report update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.FMReportUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.FMReportResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update FM report metrics
|
|
tags:
|
|
- Flight Report
|
|
/api/v1/forces-present/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a forces present row.
|
|
parameters:
|
|
- description: JSON:API forces present create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create forces present
|
|
tags:
|
|
- OPC - Forces Present
|
|
/api/v1/forces-present/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Forces Present UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete forces present
|
|
tags:
|
|
- OPC - Forces Present
|
|
/api/v1/forces-present/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, sortkey, -sortkey, note, -note, is_active, -is_active, created_at,
|
|
-created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name/note
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentListResponse'
|
|
summary: List forces present
|
|
tags:
|
|
- OPC - Forces Present
|
|
/api/v1/forces-present/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentDataTableResponse'
|
|
summary: List forces present (datatable)
|
|
tags:
|
|
- OPC - Forces Present
|
|
/api/v1/forces-present/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch forces present by ID.
|
|
parameters:
|
|
- description: Forces Present UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API forces present update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ForcesPresentResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update forces present (partial)
|
|
tags:
|
|
- OPC - Forces Present
|
|
/api/v1/health-insurance-companies/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a health insurance company row.
|
|
parameters:
|
|
- description: JSON:API health insurance company create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create health insurance company
|
|
tags:
|
|
- Hospital - Health Insurance Companies
|
|
/api/v1/health-insurance-companies/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Health Insurance Company UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete health insurance company
|
|
tags:
|
|
- Hospital - Health Insurance Companies
|
|
/api/v1/health-insurance-companies/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, sortkey, -sortkey, state, -state, address, -address, mobile_number,
|
|
-mobile_number, email, -email, note, -note, is_active, -is_active, created_at,
|
|
-created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name/state/address/mobile/email
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyListResponse'
|
|
summary: List health insurance companies
|
|
tags:
|
|
- Hospital - Health Insurance Companies
|
|
/api/v1/health-insurance-companies/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyDataTableResponse'
|
|
summary: List health insurance companies (datatable)
|
|
tags:
|
|
- Hospital - Health Insurance Companies
|
|
/api/v1/health-insurance-companies/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch health insurance company by ID.
|
|
parameters:
|
|
- description: Health Insurance Company UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API health insurance company update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HealthInsuranceCompanyResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update health insurance company (partial)
|
|
tags:
|
|
- Hospital - Health Insurance Companies
|
|
/api/v1/helicopter-files/cancel-upload:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Cancel pending upload intents from helicopter file upload flow.
|
|
Bulk payload accepts one or many items.
|
|
parameters:
|
|
- description: Bulk helicopter file cancel upload intent request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCancelUploadBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.FileManagerFileCancelUploadBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Cancel helicopter file upload intent (bulk)
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create helicopter file template record from upload intent.
|
|
Section allowed values: `bfi` (Before First Flight Inspection), `fpwb` (Flight Preparation and WB), `afi` (After Last Flight Inspection).
|
|
Required attributes: `section`, `helicopter_id`, `upload_intent_uuid`, `file_name`.
|
|
Optional attributes: `position`, `is_required`, `folder_uuid` (if omitted, file is created in root folder).
|
|
When `position` is omitted (or <= 0), backend auto-assigns next position per `helicopter_id + section`.
|
|
If file name already exists in target folder, existing file is reused and attached.
|
|
Supports single and bulk payload.
|
|
Single payload example: `{"data":{"type":"helicopter_file_create","attributes":{"section":"bfi","position":1,"is_required":true,"helicopter_id":"019d6771-5fb5-7337-837f-bc5ed85181a1","upload_intent_uuid":"019d6d0d-2de2-7db1-80a2-2862d43af620","file_name":"A.pdf"}}}`
|
|
Bulk payload example: `{"data":[{"type":"helicopter_file_create","attributes":{"section":"bfi","position":1,"is_required":true,"helicopter_id":"019d6771-5fb5-7337-837f-bc5ed85181a1","upload_intent_uuid":"019d6d0d-2de2-7db1-80a2-2862d43af620","file_name":"A.pdf"}}]}`
|
|
Note: OpenAPI 2.0 cannot express object-or-array union in one schema; request schema below represents bulk envelope.
|
|
parameters:
|
|
- description: JSON:API helicopter file create request (single object or bulk
|
|
array)
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileCreateBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCreateBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCreateBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create helicopter file
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Delete helicopter file template record
|
|
parameters:
|
|
- description: JSON:API helicopter file delete request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileDeleteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete helicopter file
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/get-all:
|
|
get:
|
|
description: |-
|
|
List helicopter file template records grouped by helicopter.
|
|
Pagination is applied per helicopter group (not per file row), so one helicopter's files stay in the same page.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Search text (fallback)
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Sort field
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List helicopter files
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/get/{helicopter_id}:
|
|
get:
|
|
description: Return helicopter file template collection for selected helicopter
|
|
parameters:
|
|
- description: Helicopter ID
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileCollectionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get helicopter files by helicopter ID
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/update:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update a helicopter file template record.
|
|
Section allowed values: `bfi` (Before First Flight Inspection), `fpwb` (Flight Preparation and WB), `afi` (After Last Flight Inspection).
|
|
Optional attributes: `section`, `position`, `is_required`, `helicopter_id`, `file_name`.
|
|
parameters:
|
|
- description: JSON:API helicopter file update request (single object or bulk
|
|
array)
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUpdateBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUpdateBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update helicopter file
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-files/upload:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Control-plane endpoint for helicopter file upload intent + presigned URL flow.
|
|
Public flow: POST /api/v1/helicopter-files/upload -> PUT to presigned URL -> POST /api/v1/helicopter-files/create.
|
|
Canonical type is `helicopter_file_upload`.
|
|
`required_headers` must be sent exactly as returned when doing PUT to `upload_url`.
|
|
Example `required_headers`: `{"content-type":"application/pdf","x-amz-acl":"private"}`
|
|
Supports single and bulk payload.
|
|
Single payload example: `{"data":{"type":"helicopter_file_upload","attributes":{"name":"A.pdf","content_type":"application/pdf","size_bytes":12345}}}`
|
|
Bulk payload example: `{"data":[{"type":"helicopter_file_upload","attributes":{"name":"A.pdf","content_type":"application/pdf","size_bytes":12345}}]}`
|
|
Note: OpenAPI 2.0 cannot express object-or-array union in one schema; request schema below represents bulk envelope.
|
|
parameters:
|
|
- description: Helicopter file upload intent request (single object or bulk
|
|
array)
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterFileUploadBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentBulkResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentResponse'
|
|
"207":
|
|
description: Multi-Status
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterFileUploadIntentBulkResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Request upload intents + presigned PUT URLs (helicopter file)
|
|
tags:
|
|
- Helicopter - Master File
|
|
/api/v1/helicopter-usage/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create helicopter usage counters for a helicopter.
|
|
parameters:
|
|
- description: JSON:API helicopter usage create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create helicopter usage
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopter-usage/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Helicopter Usage UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete helicopter usage
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopter-usage/get-all:
|
|
get:
|
|
description: 'JSON:API list without pagination. Sort values: helicopter_id,
|
|
-helicopter_id, total_landing, -total_landing, total_airframe_hours, -total_airframe_hours,
|
|
total_airframe_cycles, -total_airframe_cycles, total_engine_1_hours, -total_engine_1_hours,
|
|
total_engine_1_gpc_ng_n1, -total_engine_1_gpc_ng_n1, total_engine_1_ptc_nf_n2,
|
|
-total_engine_1_ptc_nf_n2, total_engine_1_ccc, -total_engine_1_ccc, total_engine_2_hours,
|
|
-total_engine_2_hours, total_engine_2_gpc_ng_n1, -total_engine_2_gpc_ng_n1,
|
|
total_engine_2_ptc_nf_n2, -total_engine_2_ptc_nf_n2, total_engine_2_ccc, -total_engine_2_ccc,
|
|
total_flight_report, -total_flight_report, total_hook_release, -total_hook_release,
|
|
total_rotor_brake_cycle, -total_rotor_brake_cycle, created_at, -created_at,
|
|
updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by helicopter or usage ID
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageListResponse'
|
|
summary: List helicopter usage
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopter-usage/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageListResponse'
|
|
summary: List helicopter usage (datatable)
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopter-usage/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter Usage UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get helicopter usage
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopter-usage/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: Helicopter Usage UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API helicopter usage update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HelicopterUsageResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update helicopter usage (partial)
|
|
tags:
|
|
- Helicopter - Helicopter Usage
|
|
/api/v1/helicopters/{id}/reports/next-number:
|
|
post:
|
|
description: 'Returns report number format <identifier>-NNNN (example: SN0901-0001).
|
|
The identifier is used as the report-code prefix and the numeric suffix is
|
|
auto-incremented by backend per helicopter.'
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterNextReportNumberResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Generate next helicopter report number
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a helicopter configuration row.
|
|
parameters:
|
|
- description: JSON:API Helicopter create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create helicopter
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete helicopter
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
designation, -designation, sortkey, -sortkey.'
|
|
parameters:
|
|
- description: Search by designation/identifier/type
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: 'Filter by operational status; comma-separated for multiple (e.g.
|
|
available,booked). Values: available, booked, aog, mcf'
|
|
in: query
|
|
name: filter[status]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterListResponse'
|
|
summary: List helicopters
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: 'Filter by operational status; comma-separated for multiple (e.g.
|
|
available,booked). Values: available, booked, aog, mcf'
|
|
in: query
|
|
name: status
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterDataTableResponse'
|
|
summary: List helicopters (datatable)
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get helicopter by ID
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/helicopters/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch helicopter by ID.
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API Helicopter update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.HelicopterUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.HelicopterResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update helicopter (partial)
|
|
tags:
|
|
- Facility - Helicopters
|
|
/api/v1/hems-operation-category/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a HEMS operation category.
|
|
parameters:
|
|
- description: JSON:API HEMS operation category create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create HEMS operation category
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation-category/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: HEMS operation category UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete HEMS operation category
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation-category/get-all:
|
|
get:
|
|
parameters:
|
|
- description: Search by name/type
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryListResponse'
|
|
summary: List HEMS operation categories
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation-category/get-all/dt:
|
|
get:
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryDataTableResponse'
|
|
summary: List HEMS operation categories (datatable)
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation-category/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: HEMS operation category UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get HEMS operation category by ID
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation-category/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: HEMS operation category UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API HEMS operation category update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCategoryResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update HEMS operation category (partial)
|
|
tags:
|
|
- Operation - Category
|
|
/api/v1/hems-operation/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: JSON:API HEMS operation create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create HEMS operation
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operation/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: HEMS operation UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete HEMS operation
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operation/get-all:
|
|
get:
|
|
parameters:
|
|
- description: Search by date
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationListResponse'
|
|
summary: List HEMS operations
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operation/get-all/dt:
|
|
get:
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationDataTableResponse'
|
|
summary: List HEMS operations (datatable)
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operation/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: HEMS operation UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get HEMS operation by ID
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operation/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: HEMS operation UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API HEMS operation update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update HEMS operation (partial)
|
|
tags:
|
|
- Operation - HEMS Operation
|
|
/api/v1/hems-operational-data/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a HEMS operational data record.
|
|
parameters:
|
|
- description: JSON:API HEMS operational data create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create HEMS operational data
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hems-operational-data/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: HEMS operational data UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete HEMS operational data
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hems-operational-data/get-all:
|
|
get:
|
|
parameters:
|
|
- description: Search by location/notes/additional_info/terrain_index
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataListResponse'
|
|
summary: List HEMS operational data
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hems-operational-data/get-all/dt:
|
|
get:
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataDataTableResponse'
|
|
summary: List HEMS operational data (datatable)
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hems-operational-data/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: HEMS operational data UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get HEMS operational data by ID
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hems-operational-data/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: HEMS operational data UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API HEMS operational data update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HEMSOperationalDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update HEMS operational data (partial)
|
|
tags:
|
|
- Operation - HEMS Operational Data
|
|
/api/v1/hospital/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a hospital row.
|
|
parameters:
|
|
- description: JSON:API hospital create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create hospital
|
|
tags:
|
|
- Hospital - Hospital
|
|
/api/v1/hospital/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Hospital UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete hospital
|
|
tags:
|
|
- Hospital - Hospital
|
|
/api/v1/hospital/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, hospital_name, -hospital_name, sortkey, -sortkey, address, -address,
|
|
landline_number, -landline_number, mobile_number, -mobile_number, email, -email,
|
|
note, -note, is_active, -is_active, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by hospital name/address/contact
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalListResponse'
|
|
summary: List hospital
|
|
tags:
|
|
- Hospital - Hospital
|
|
/api/v1/hospital/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalDataTableResponse'
|
|
summary: List hospital (datatable)
|
|
tags:
|
|
- Hospital - Hospital
|
|
/api/v1/hospital/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch hospital by ID.
|
|
parameters:
|
|
- description: Hospital UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API hospital update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.HospitalResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update hospital (partial)
|
|
tags:
|
|
- Hospital - Hospital
|
|
/api/v1/icao/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create an ICAO row.
|
|
parameters:
|
|
- description: JSON:API ICAO create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create ICAO
|
|
tags:
|
|
- Hospital - ICAO
|
|
/api/v1/icao/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: ICAO UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete ICAO
|
|
tags:
|
|
- Hospital - ICAO
|
|
/api/v1/icao/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
icao_code, -icao_code, sortkey, -sortkey, address, -address, landline_number,
|
|
-landline_number, mobile_number, -mobile_number, email, -email, note, -note,
|
|
is_active, -is_active, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by icao_code/address/contact
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOListResponse'
|
|
summary: List ICAO
|
|
tags:
|
|
- Hospital - ICAO
|
|
/api/v1/icao/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAODataTableResponse'
|
|
summary: List ICAO (datatable)
|
|
tags:
|
|
- Hospital - ICAO
|
|
/api/v1/icao/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch ICAO by ID.
|
|
parameters:
|
|
- description: ICAO UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API ICAO update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ICAOResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update ICAO (partial)
|
|
tags:
|
|
- Hospital - ICAO
|
|
/api/v1/insurance-patient-data/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create an InsurancePatientData record.
|
|
parameters:
|
|
- description: JSON:API InsurancePatientData create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create insurance patient data
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/insurance-patient-data/delete/{uuid}:
|
|
delete:
|
|
description: Soft delete InsurancePatientData by ID.
|
|
parameters:
|
|
- description: InsurancePatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete insurance patient data
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/insurance-patient-data/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataListResponse'
|
|
summary: List insurance patient data
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/insurance-patient-data/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataDataTableResponse'
|
|
summary: List insurance patient data (datatable)
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/insurance-patient-data/get/{uuid}:
|
|
get:
|
|
description: Get a single InsurancePatientData record by UUID.
|
|
parameters:
|
|
- description: InsurancePatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get insurance patient data by ID
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/insurance-patient-data/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch InsurancePatientData by ID.
|
|
parameters:
|
|
- description: InsurancePatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API InsurancePatientData update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.InsurancePatientDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update insurance patient data (partial)
|
|
tags:
|
|
- PatientData - InsurancePatientData
|
|
/api/v1/land/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a land row.
|
|
parameters:
|
|
- description: JSON:API land create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create land
|
|
tags:
|
|
- Hospital - Land
|
|
/api/v1/land/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: Land ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete land
|
|
tags:
|
|
- Hospital - Land
|
|
/api/v1/land/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, sortkey, -sortkey, is_active, -is_active, created_at, -created_at,
|
|
updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandListResponse'
|
|
summary: List land
|
|
tags:
|
|
- Hospital - Land
|
|
/api/v1/land/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 1000)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandDataTableResponse'
|
|
summary: List land (datatable)
|
|
tags:
|
|
- Hospital - Land
|
|
/api/v1/land/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch land by ID.
|
|
parameters:
|
|
- description: Land ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API land update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.LandResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update land (partial)
|
|
tags:
|
|
- Hospital - Land
|
|
/api/v1/master-settings/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a master settings row.
|
|
parameters:
|
|
- description: JSON:API master settings create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create master settings
|
|
tags:
|
|
- Master Settings
|
|
/api/v1/master-settings/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Master Settings UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Resource'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete master settings
|
|
tags:
|
|
- Master Settings
|
|
/api/v1/master-settings/get:
|
|
get:
|
|
description: Return singleton master settings object (latest active row).
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get current master settings
|
|
tags:
|
|
- Master Settings
|
|
/api/v1/master-settings/sso/microsoft:
|
|
get:
|
|
description: Get Microsoft Entra SSO settings from master settings.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get Microsoft Entra SSO settings
|
|
tags:
|
|
- Master Settings
|
|
put:
|
|
consumes:
|
|
- application/json
|
|
description: Create or update Microsoft Entra SSO settings as master settings.
|
|
parameters:
|
|
- description: JSON:API Microsoft Entra SSO upsert request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsMicrosoftEntraUpsertRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsMicrosoftEntraResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Upsert Microsoft Entra SSO settings
|
|
tags:
|
|
- Master Settings
|
|
/api/v1/master-settings/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch master settings by ID.
|
|
parameters:
|
|
- description: Master Settings UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API master settings update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MasterSettingsUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MasterSettingsResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update master settings (partial)
|
|
tags:
|
|
- Master Settings
|
|
/api/v1/mcf/get-by-helicopter/{helicopter_id}:
|
|
get:
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFListResponse'
|
|
summary: List MCFs for a helicopter
|
|
tags:
|
|
- MCF
|
|
/api/v1/mcf/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: MCF ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResponse'
|
|
summary: Get MCF by ID
|
|
tags:
|
|
- MCF
|
|
/api/v1/mcf/set/{helicopter_id}:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Toggles and edits a helicopter's MCF. `active:true` (or omitted)
|
|
ACTIVATES/EDITS it — creates the draft if none is open (201), or UPDATES the
|
|
open draft with the provided check-flight fields (200; af_hours, landing_count,
|
|
utc_time, date, result, notes — all optional, partial edits allowed). Finalize
|
|
it via POST /mcf/sign/{id} (sign:true). `active:false` DEACTIVATES it — cancels
|
|
the open (unsigned) draft ("tidak jadi") and releases the MCF status; the
|
|
cancelled record stays in the list. A signed MCF is a real event and is not
|
|
cancelled.
|
|
parameters:
|
|
- description: Helicopter ID (UUIDv7)
|
|
in: path
|
|
name: helicopter_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API MCF set request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFSetRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResponse'
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Set a helicopter's MCF Yes/No — draft work endpoint (create/update
|
|
or cancel)
|
|
tags:
|
|
- MCF
|
|
/api/v1/mcf/sign/{id}:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: 'Finalizes an MCF''s check-flight. `sign` (optional, default true):
|
|
true FINALIZES it — af_hours, landing_count, utc_time, date, result required;
|
|
"passed" clears the aircraft from MCF, "failed" keeps it grounded. false UNSIGNS
|
|
it — reverts a signed MCF back to a draft (keeps the recorded data). Editing
|
|
draft fields is done via /mcf/set; cancelling via /mcf/set (active:false).'
|
|
parameters:
|
|
- description: MCF ID (UUIDv7)
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API MCF sign request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MCFCompleteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MCFResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Sign (finalize) or unsign an MCF — toggle by MCF id
|
|
tags:
|
|
- MCF
|
|
/api/v1/medicine-group/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a medicine group row.
|
|
parameters:
|
|
- description: JSON:API medicine group create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create medicine group
|
|
tags:
|
|
- OPC - Medicine Group
|
|
/api/v1/medicine-group/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Medicine Group UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete medicine group
|
|
tags:
|
|
- OPC - Medicine Group
|
|
/api/v1/medicine-group/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by group name
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List medicine groups
|
|
tags:
|
|
- OPC - Medicine Group
|
|
/api/v1/medicine-group/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List medicine groups (datatable)
|
|
tags:
|
|
- OPC - Medicine Group
|
|
/api/v1/medicine-group/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch medicine group by ID.
|
|
parameters:
|
|
- description: Medicine Group UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API medicine group update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineGroupResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update medicine group (partial)
|
|
tags:
|
|
- OPC - Medicine Group
|
|
/api/v1/medicine/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a medicine row.
|
|
parameters:
|
|
- description: JSON:API medicine create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create medicine
|
|
tags:
|
|
- OPC - Medicine
|
|
/api/v1/medicine/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Medicine UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete medicine
|
|
tags:
|
|
- OPC - Medicine
|
|
/api/v1/medicine/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Search covers
|
|
name, note, pack, unit, and column. Sort values: name, -name, sortkey, -sortkey,
|
|
note, -note, pack, -pack, unit, -unit, column, -column, is_active, -is_active,
|
|
created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name/note/pack/unit/column
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineListResponse'
|
|
summary: List medicine
|
|
tags:
|
|
- OPC - Medicine
|
|
/api/v1/medicine/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineDataTableResponse'
|
|
summary: List medicine (datatable)
|
|
tags:
|
|
- OPC - Medicine
|
|
/api/v1/medicine/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch medicine by ID.
|
|
parameters:
|
|
- description: Medicine UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API medicine update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MedicineResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update medicine (partial)
|
|
tags:
|
|
- OPC - Medicine
|
|
/api/v1/mission-type/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a mission category master record for use in mission flow.
|
|
parameters:
|
|
- description: JSON:API mission type create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionTypeCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionTypeResource'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create mission type
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission-type/get-all:
|
|
get:
|
|
description: Returns all mission categories and their available subtypes.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionTypeListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List mission types with subtypes
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Create a mission and link it to a flight.
|
|
`type` must be one of: `HEMS`, `CAT`, `SPO`, `NCO`.
|
|
`subtype_id` is required when `type=HEMS` and must reference mission subcategory under `HEMS` category.
|
|
`subtype_id` must be empty when `type` is not `HEMS`.
|
|
parameters:
|
|
- description: JSON:API mission create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"409":
|
|
description: Conflict
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create mission
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/delete-by-id/{mission_id}:
|
|
delete:
|
|
description: Soft delete mission by its mission UUID. This also soft deletes
|
|
flight data rows linked to the mission.
|
|
parameters:
|
|
- description: Mission ID (UUIDv7)
|
|
in: path
|
|
name: mission_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete mission by mission ID
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/delete/{flight_id}:
|
|
delete:
|
|
description: Soft delete mission by linked flight ID.
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete mission
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/file/{mission_id}/{attachment_id}:
|
|
delete:
|
|
description: Detaches the file (by its attachment id) from the mission and deletes
|
|
the attachment.
|
|
parameters:
|
|
- description: Mission UUID
|
|
in: path
|
|
name: mission_id
|
|
required: true
|
|
type: string
|
|
- description: Attachment UUID (the file's attachment_id)
|
|
in: path
|
|
name: attachment_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Remove a file from a mission
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/get-all:
|
|
get:
|
|
description: Supports `search`, `filter[search]`, `flight_id`, `sort`, `page[number]`,
|
|
`page[size]`, `page`, `size`, and `limit`.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter by flight UUID
|
|
in: query
|
|
name: flight_id
|
|
type: string
|
|
- description: 'Filter missions by flight data status: draft, in_progress, or
|
|
completed'
|
|
in: query
|
|
name: flight_data_status
|
|
type: string
|
|
- description: 'Sort field: type|-type|flight_date|-flight_date|created_at|-created_at|updated_at|-updated_at'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List missions
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/get-all/dt:
|
|
get:
|
|
description: |-
|
|
Supports `search`, `filter[search]`, `date_from`, `date_to`, `mission_type`, `pilot_id`, `helicopter_id`, `sort`, `start`, `length`, `draw`, `page[number]`, `page[size]`, `page`, `size`, and `limit`.
|
|
`date_from` and `date_to` filter flights by their mission date range (`YYYY-MM-DD`).
|
|
`mission_type` accepts `HEMS`, `CAT`, `SPO`, or `NCO`.
|
|
`pilot_id` filters missions where the pilot is assigned on the linked flight roster.
|
|
`helicopter_id` filters missions by the helicopter used in the linked flight takeover.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Filter by linked flight UUID
|
|
in: query
|
|
name: flight_id
|
|
type: string
|
|
- description: Mission date lower bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_from
|
|
type: string
|
|
- description: Mission date upper bound (YYYY-MM-DD)
|
|
in: query
|
|
name: date_to
|
|
type: string
|
|
- description: 'Mission type: HEMS|CAT|SPO|NCO'
|
|
in: query
|
|
name: mission_type
|
|
type: string
|
|
- description: Pilot user UUID
|
|
in: query
|
|
name: pilot_id
|
|
type: string
|
|
- description: Helicopter UUID
|
|
in: query
|
|
name: helicopter_id
|
|
type: string
|
|
- description: 'Sort field: type|-type|flight_date|-flight_date|created_at|-created_at|updated_at|-updated_at'
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: DataTables start index
|
|
in: query
|
|
name: start
|
|
type: integer
|
|
- description: DataTables page size
|
|
in: query
|
|
name: length
|
|
type: integer
|
|
- description: DataTables draw counter
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List missions (datatable)
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/get/{flight_id}:
|
|
get:
|
|
description: Get mission detail by linked flight ID.
|
|
parameters:
|
|
- description: Flight ID (UUIDv7)
|
|
in: path
|
|
name: flight_id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get mission by flight ID
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/mission/update/{mission_id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Update mission type/subtype/note by mission ID, and optionally attach files already uploaded via `upload-mission-file`.
|
|
`type` must be one of: `HEMS`, `CAT`, `SPO`, `NCO`.
|
|
`subtype_id` is required when `type=HEMS` and must reference mission subcategory under `HEMS` category.
|
|
`subtype_id` must be empty when `type` is not `HEMS`.
|
|
`files[]` items reference an `upload_intent_uuid` (from `upload-mission-file`) and an optional display `name`.
|
|
parameters:
|
|
- description: Mission ID (UUIDv7)
|
|
in: path
|
|
name: mission_id
|
|
required: true
|
|
type: string
|
|
- description: JSON:API mission update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.MissionUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.MissionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update mission
|
|
tags:
|
|
- Flights - Mission
|
|
/api/v1/motor-reaction/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a motor reaction row.
|
|
parameters:
|
|
- description: JSON:API motor reaction create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create motor reaction
|
|
tags:
|
|
- OPC - Motor Reaction
|
|
/api/v1/motor-reaction/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Motor Reaction UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete motor reaction
|
|
tags:
|
|
- OPC - Motor Reaction
|
|
/api/v1/motor-reaction/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, score, -score, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by reaction name or score
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List motor reactions
|
|
tags:
|
|
- OPC - Motor Reaction
|
|
/api/v1/motor-reaction/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionDataTableResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: List motor reactions (datatable)
|
|
tags:
|
|
- OPC - Motor Reaction
|
|
/api/v1/motor-reaction/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch motor reaction by ID.
|
|
parameters:
|
|
- description: Motor Reaction UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API motor reaction update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.MotorReactionResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"503":
|
|
description: Service Unavailable
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update motor reaction (partial)
|
|
tags:
|
|
- OPC - Motor Reaction
|
|
/api/v1/opc/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create an OPC row.
|
|
parameters:
|
|
- description: JSON:API OPC create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create opc
|
|
tags:
|
|
- OPC - OPC
|
|
/api/v1/opc/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: OPC UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete opc
|
|
tags:
|
|
- OPC - OPC
|
|
/api/v1/opc/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
title, -title, sortkey, -sortkey, note, -note, is_active, -is_active, created_at,
|
|
-created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by title/note
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcListResponse'
|
|
summary: List opc
|
|
tags:
|
|
- OPC - OPC
|
|
/api/v1/opc/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcDataTableResponse'
|
|
summary: List opc (datatable)
|
|
tags:
|
|
- OPC - OPC
|
|
/api/v1/opc/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch opc by ID.
|
|
parameters:
|
|
- description: OPC UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API OPC update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.OpcResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update opc (partial)
|
|
tags:
|
|
- OPC - OPC
|
|
/api/v1/patient-data/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a PatientData record.
|
|
parameters:
|
|
- description: JSON:API PatientData create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create patient data
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/patient-data/delete/{uuid}:
|
|
delete:
|
|
description: Soft delete PatientData by ID.
|
|
parameters:
|
|
- description: PatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete patient data
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/patient-data/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
family_name, -family_name, first_name, -first_name, birth_date, -birth_date,
|
|
gender, -gender, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by family_name/first_name/svnr/email/phone/street
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataListResponse'
|
|
summary: List patient data
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/patient-data/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search by family_name/first_name/svnr/email/phone/street
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataDataTableResponse'
|
|
summary: List patient data (datatable)
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/patient-data/get/{uuid}:
|
|
get:
|
|
description: Get a single PatientData record by UUID.
|
|
parameters:
|
|
- description: PatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get patient data by ID
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/patient-data/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch PatientData by ID.
|
|
parameters:
|
|
- description: PatientData UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API PatientData update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PatientDataResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update patient data (partial)
|
|
tags:
|
|
- PatientData - PatientData
|
|
/api/v1/public/branding/email-logo:
|
|
get:
|
|
description: |-
|
|
Return a stable company logo optimized for email clients like Outlook.
|
|
Backend prefers managed raster thumbnail/logo and falls back to backend-generated PNG when necessary.
|
|
Supports conditional requests with `If-None-Match` / `If-Modified-Since`.
|
|
produces:
|
|
- image/png
|
|
- image/jpeg
|
|
- image/gif
|
|
- application/octet-stream
|
|
responses:
|
|
"200":
|
|
description: Email-safe branding logo binary
|
|
schema:
|
|
type: file
|
|
"304":
|
|
description: Not Modified
|
|
schema:
|
|
type: string
|
|
summary: Get email-safe branding logo
|
|
tags:
|
|
- Branding
|
|
/api/v1/reserve-acs/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create reserve AC, create draft inspection, fill before + prepare
|
|
inspection payload, and assign to flight.
|
|
parameters:
|
|
- description: Create reserve AC request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create reserve aircraft assignment
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/reserve-acs/delete:
|
|
delete:
|
|
consumes:
|
|
- application/json
|
|
description: Delete reserve AC by body `data.id`.
|
|
parameters:
|
|
- description: Delete reserve AC request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcDeleteRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.Document'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete reserve AC
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/reserve-acs/get-all:
|
|
get:
|
|
description: Supports `search`, `filter[search]`, `sort`, `page[number]`, `page[size]`,
|
|
`page`, `size`, and `limit`.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Reserve AC UUID (exact match)
|
|
in: query
|
|
name: id
|
|
type: string
|
|
- description: Flight UUID (exact match)
|
|
in: query
|
|
name: flight_id
|
|
type: string
|
|
- description: Sort field
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Page number (fallback)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (fallback)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List reserve AC
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/reserve-acs/get-all/dt:
|
|
get:
|
|
description: Datatable list scoped by auth user. Admin can see all rows; non-admin
|
|
only sees reserve AC linked to own flight assignments.
|
|
parameters:
|
|
- description: Search text
|
|
in: query
|
|
name: search
|
|
type: string
|
|
- description: Search text (JSON:API style)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Reserve AC UUID (exact match)
|
|
in: query
|
|
name: id
|
|
type: string
|
|
- description: Flight UUID (exact match)
|
|
in: query
|
|
name: flight_id
|
|
type: string
|
|
- description: Sort field
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcListResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"401":
|
|
description: Unauthorized
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List reserve AC (datatable)
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/reserve-acs/get/{uuid}:
|
|
get:
|
|
description: Get reserve AC detail. Path `uuid` accepts reserve_ac id, and supports
|
|
fallback to flight id.
|
|
parameters:
|
|
- description: Reserve AC UUID or Flight UUID
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get reserve AC by UUID or flight UUID
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/reserve-acs/update:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Update reserve AC using body `data.id`.
|
|
parameters:
|
|
- description: Update reserve AC request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.ReserveAcUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.ReserveAcResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Update reserve AC
|
|
tags:
|
|
- Flights - Reserve AC
|
|
/api/v1/roles/{uuid}/permissions:
|
|
get:
|
|
description: Returns the permissions currently assigned to the given role. Pair
|
|
with /roles/permissions/get-all to pre-check a role-permission editor.
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionListResponse'
|
|
summary: List a role's assigned permissions
|
|
tags:
|
|
- Roles
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Assign one permission to a role. Idempotent if already assigned.
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API role permission assign request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAssignRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Assign permission to role
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/{uuid}/permissions/{permission_uuid}:
|
|
delete:
|
|
description: Remove one permission from role.
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: Permission UUID (UUIDv7)
|
|
in: path
|
|
name: permission_uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Remove permission from role
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/{uuid}/permissions/assign-bulk:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Assign multiple permissions to role. Idempotent for duplicates/already
|
|
assigned.
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API role permission bulk request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionAssignBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionListResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Assign permissions to role (bulk)
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/{uuid}/permissions/remove-bulk:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Remove multiple permissions from role.
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API role permission bulk request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionRemoveBulkRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RolePermissionListResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Remove permissions from role (bulk)
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a new role. Name is required and must be unique.
|
|
parameters:
|
|
- description: JSON:API Role create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create role
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete role
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, created_at, -created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Filter by name (contains)
|
|
in: query
|
|
name: filter[name]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
- description: Set to 'permissions' to embed each role's assigned permissions
|
|
in: query
|
|
name: include
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleListResponse'
|
|
summary: List roles
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleDataTableResponse'
|
|
summary: List roles (datatable)
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get role by ID
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/permissions/{permission_uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch permission by ID. Currently supports updating requires_pin.
|
|
parameters:
|
|
- description: Permission UUID (UUIDv7)
|
|
in: path
|
|
name: permission_uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API permission update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionResource'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update permission
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/permissions/get-all:
|
|
get:
|
|
description: Returns every permission grouped by its module, ordered by the
|
|
module registry. Optional filter[name] narrows by permission name/key.
|
|
parameters:
|
|
- description: Filter by name/key (contains)
|
|
in: query
|
|
name: filter[name]
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.PermissionGroupedResponse'
|
|
summary: List permissions grouped by module
|
|
tags:
|
|
- Roles
|
|
/api/v1/roles/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: 'Patch role by ID. Provide at least one of: name, description.
|
|
Name must be unique if provided.'
|
|
parameters:
|
|
- description: Role UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API Role update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.RoleResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update role (partial)
|
|
tags:
|
|
- Roles
|
|
/api/v1/takeovers/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: |-
|
|
Atomic create for duty roster + crews + reserve AC + pre-flight inspection + flight. The takeover inspection payload also includes fleet status files under `inspection.fleet_status_file`.
|
|
Optional takeover file uploads can be included via `data.attributes.files[*]` using upload intent UUIDs.
|
|
Edited template draft files created earlier can be linked by passing `data.attributes.edited_template_file_ids[*]`.
|
|
parameters:
|
|
- description: Create takeover request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Create takeover in one request
|
|
tags:
|
|
- Flight - Takeovers
|
|
/api/v1/takeovers/delete/{id}:
|
|
delete:
|
|
parameters:
|
|
- description: Flight UUID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
additionalProperties: true
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Delete takeover by flight UUID
|
|
tags:
|
|
- Flight - Takeovers
|
|
/api/v1/takeovers/get-all:
|
|
get:
|
|
description: Return composite takeover records built from flight, reserve AC,
|
|
duty roster, and inspection. The inspection payload includes `before`, `prepare`,
|
|
and `fleet_status_file`.
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
additionalProperties: true
|
|
type: object
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: List takeovers
|
|
tags:
|
|
- Flight - Takeovers
|
|
/api/v1/takeovers/get/{id}:
|
|
get:
|
|
parameters:
|
|
- description: Flight UUID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Get takeover by flight UUID
|
|
tags:
|
|
- Flight - Takeovers
|
|
/api/v1/takeovers/update/{id}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
parameters:
|
|
- description: Flight UUID
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: string
|
|
- description: Update takeover request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_request.TakeoverUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto_response.TakeoverResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_jsonapi.ErrorDocument'
|
|
summary: Replace takeover by flight UUID
|
|
tags:
|
|
- Flight - Takeovers
|
|
/api/v1/users/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a new user. Email, username, first name, last name and role_id
|
|
are required. Use role_ids to assign additional roles.
|
|
parameters:
|
|
- description: JSON:API User create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create user
|
|
tags:
|
|
- Users
|
|
/api/v1/users/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: User UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete user
|
|
tags:
|
|
- Users
|
|
/api/v1/users/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
email, -email, first_name, -first_name, last_name, -last_name, created_at,
|
|
-created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by username/email/first_name/last_name (contains)
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserListResponse'
|
|
summary: List users
|
|
tags:
|
|
- Users
|
|
/api/v1/users/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserDataTableResponse'
|
|
summary: List users (datatable)
|
|
tags:
|
|
- Users
|
|
/api/v1/users/get/{uuid}:
|
|
get:
|
|
parameters:
|
|
- description: User UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Get user by ID
|
|
tags:
|
|
- Users
|
|
/api/v1/users/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch user by ID. Provide at least one attribute to update.
|
|
parameters:
|
|
- description: User UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API User update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.UserResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update user (partial)
|
|
tags:
|
|
- Users
|
|
/api/v1/vocation/create:
|
|
post:
|
|
consumes:
|
|
- application/json
|
|
description: Create a vocation row.
|
|
parameters:
|
|
- description: JSON:API vocation create request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationCreateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"201":
|
|
description: Created
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationResponse'
|
|
"400":
|
|
description: Bad Request
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Create vocation
|
|
tags:
|
|
- OPC - Vocation
|
|
/api/v1/vocation/delete/{uuid}:
|
|
delete:
|
|
parameters:
|
|
- description: Vocation UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.GenericDeleteResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Delete vocation
|
|
tags:
|
|
- OPC - Vocation
|
|
/api/v1/vocation/get-all:
|
|
get:
|
|
description: 'JSON:API list with pagination, filtering and sorting. Sort values:
|
|
name, -name, sortkey, -sortkey, note, -note, is_active, -is_active, created_at,
|
|
-created_at, updated_at, -updated_at.'
|
|
parameters:
|
|
- description: Search by name/note
|
|
in: query
|
|
name: filter[search]
|
|
type: string
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page[number]
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: page[size]
|
|
type: integer
|
|
- description: Sort order
|
|
in: query
|
|
name: sort
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationListResponse'
|
|
summary: List vocation
|
|
tags:
|
|
- OPC - Vocation
|
|
/api/v1/vocation/get-all/dt:
|
|
get:
|
|
description: Datatable response with simple pagination params.
|
|
parameters:
|
|
- description: Page number (default 1)
|
|
in: query
|
|
name: page
|
|
type: integer
|
|
- description: Page size (default 20, max 100)
|
|
in: query
|
|
name: size
|
|
type: integer
|
|
- description: Page size override (same as size)
|
|
in: query
|
|
name: limit
|
|
type: integer
|
|
- description: Draw counter (optional)
|
|
in: query
|
|
name: draw
|
|
type: integer
|
|
- description: Search term
|
|
in: query
|
|
name: search
|
|
type: string
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationDataTableResponse'
|
|
summary: List vocation (datatable)
|
|
tags:
|
|
- OPC - Vocation
|
|
/api/v1/vocation/update/{uuid}:
|
|
patch:
|
|
consumes:
|
|
- application/json
|
|
description: Patch vocation by ID.
|
|
parameters:
|
|
- description: Vocation UUID (UUIDv7)
|
|
in: path
|
|
name: uuid
|
|
required: true
|
|
type: string
|
|
- description: JSON:API vocation update request
|
|
in: body
|
|
name: request
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationUpdateRequest'
|
|
produces:
|
|
- application/json
|
|
responses:
|
|
"200":
|
|
description: OK
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.VocationResponse'
|
|
"404":
|
|
description: Not Found
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
"422":
|
|
description: Unprocessable Entity
|
|
schema:
|
|
$ref: '#/definitions/wucher_internal_transport_http_dto.ErrorResponse'
|
|
summary: Update vocation (partial)
|
|
tags:
|
|
- OPC - Vocation
|
|
swagger: "2.0"
|
|
tags:
|
|
- description: Corrective-action sign-off for a helicopter. After a complaint's action_taken
|
|
is recorded, it is signed off here (POST /action-signoffs/sign with complaint_id);
|
|
a fleet-wide sign-off (no complaint_id) is also supported. A signed sign-off is
|
|
the prerequisite for creating an EASA maintenance release.
|
|
name: Complaints - Sign Off
|