// Generated by Create API
// https://github.com/CreateAPI/CreateAPI

import Foundation
import Get
import URLQueryEncoder

extension Paths {
    public static var oembed: Oembed {
        Oembed(path: "/api/oembed")
    }

    public struct Oembed {
        /// Path: `/api/oembed`
        public let path: String

        /// Get Oembed
        public func get(parameters: GetParameters) -> Request<GenAPI.OEmbedResponse> {
            Request(path: path, method: "GET", query: parameters.asQuery, id: "studio_api_bots_oembed_api_get_oembed")
        }

        public struct GetParameters {
            public var url: String
            public var maxwidth: Int?
            public var maxheight: Int?

            public init(url: String, maxwidth: Int? = nil, maxheight: Int? = nil) {
                self.url = url
                self.maxwidth = maxwidth
                self.maxheight = maxheight
            }

            public var asQuery: [(String, String?)] {
                let encoder = URLQueryEncoder()
                encoder.encode(url, forKey: "url")
                encoder.encode(maxwidth, forKey: "maxwidth")
                encoder.encode(maxheight, forKey: "maxheight")
                return encoder.items
            }
        }
    }
}
