/* Options: Date: 2026-04-15 21:22:11 Version: 8.60 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: http://api.booklinker.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PostLinkCreationRequest.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/v1/links", Verbs="POST") // @Route(Path="/v1/complete-link-creation-requests", Verbs="POST") open class PostLinkCreationRequest : PostLinkCreationRequestBase(), IReturn { @DataMember(Name="code") @SerializedName("code") open var code:String? = null companion object { private val responseType = PostLinkCreationResponse::class.java } override fun getResponseType(): Any? = PostLinkCreationRequest.responseType } @DataContract open class PostLinkCreationResponse { @DataMember(Name="success") @SerializedName("success") open var success:Boolean? = null @DataMember(Name="linkResult") @SerializedName("linkResult") open var linkResult:String? = null @DataMember(Name="destinations") @SerializedName("destinations") open var destinations:ArrayList? = null @DataMember(Name="responseStatus") @SerializedName("responseStatus") open var responseStatus:ResponseStatus? = null } @DataContract open class PostLinkCreationRequestBase { @DataMember(Name="url") @SerializedName("url") @ApiMember(IsRequired=true) open var url:String? = null @DataMember(Name="domain") @SerializedName("domain") open var domain:String? = null @DataMember(Name="parameterKeyValues") @SerializedName("parameterKeyValues") open var parameterKeyValues:HashMap? = null } @DataContract open class ProductMetadata : ProductMetadata() { } @DataContract open class ProductMetadata { @DataMember(Name="title") @SerializedName("title") open var title:String? = null @DataMember(Name="author") @SerializedName("author") open var author:String? = null @DataMember(Name="url") @SerializedName("url") open var url:Uri? = null @DataMember(Name="description") @SerializedName("description") open var description:String? = null @DataMember(Name="retailer") @SerializedName("retailer") open var retailer:String? = null @DataMember(Name="productImages") @SerializedName("productImages") open var productImages:HashMap? = null }