# This file was generated by the Julia Swagger Code Generator
# Do not modify this file directly. Modify the swagger specification instead.

struct HostsApi <: SwaggerApi
    client::Swagger.Client
end

function _swaggerinternal_apiV1FleetHostsCountGet(_api::HostsApi; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", Any, "/api/v1/fleet/hosts/count", ["bearerAuth"])
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? [] : [_mediaType])
    return _ctx
end

@doc raw"""Hosts Count

Params:

Return: Any
"""
function apiV1FleetHostsCountGet(_api::HostsApi; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsCountGet(_api; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function apiV1FleetHostsCountGet(_api::HostsApi, response_stream::Channel; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsCountGet(_api; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

function _swaggerinternal_apiV1FleetHostsDeletePost(_api::HostsApi; body=nothing, _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "POST", Nothing, "/api/v1/fleet/hosts/delete", ["bearerAuth"], body)
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

@doc raw"""Bulk Delete Hosts

Params:
- body::Any

Return: Nothing
"""
function apiV1FleetHostsDeletePost(_api::HostsApi; body=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsDeletePost(_api; body=body, _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function apiV1FleetHostsDeletePost(_api::HostsApi, response_stream::Channel; body=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsDeletePost(_api; body=body, _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

function _swaggerinternal_apiV1FleetHostsGet(_api::HostsApi; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", Any, "/api/v1/fleet/hosts", ["bearerAuth"])
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? [] : [_mediaType])
    return _ctx
end

@doc raw"""List Hosts

Params:

Return: Any
"""
function apiV1FleetHostsGet(_api::HostsApi; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsGet(_api; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function apiV1FleetHostsGet(_api::HostsApi, response_stream::Channel; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsGet(_api; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

function _swaggerinternal_apiV1FleetHostsHostIdGet(_api::HostsApi, host_id::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", Any, "/api/v1/fleet/hosts/{host_id}", ["bearerAuth"])
    Swagger.set_param(_ctx.path, "host_id", host_id)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? [] : [_mediaType])
    return _ctx
end

@doc raw"""Get Host By ID

Params:
- host_id::String (required)

Return: Any
"""
function apiV1FleetHostsHostIdGet(_api::HostsApi, host_id::String; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsHostIdGet(_api, host_id; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function apiV1FleetHostsHostIdGet(_api::HostsApi, response_stream::Channel, host_id::String; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsHostIdGet(_api, host_id; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end


function _swaggerinternal_apiV1FleetHostsDeviceMappingGet(_api::HostsApi, host_id::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", Any, "/api/v1/fleet/hosts/{host_id}/device_mapping", ["bearerAuth"])
    Swagger.set_param(_ctx.path, "host_id", host_id)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? [] : [_mediaType])
    return _ctx
end

@doc raw"""Get Host Device Mapping

Params:
- host_id::String (required)

Return: Any
"""
function apiV1FleetHostsDeviceMappingGet(_api::HostsApi, host_id::String; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsDeviceMappingGet(_api, host_id; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function apiV1FleetHostsDeviceMappingGet(_api::HostsApi, response_stream::Channel, host_id::String; _mediaType=nothing)
    _ctx = _swaggerinternal_apiV1FleetHostsDeviceMappingGet(_api, host_id; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end


export apiV1FleetHostsCountGet, apiV1FleetHostsDeletePost, apiV1FleetHostsGet, apiV1FleetHostsHostIdGet, apiV1FleetHostsDeviceMappingGet
