/* Options: Date: 2026-04-15 21:22:03 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: PostUnclaimedLinkCreationRequest.* //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/unclaimed", Verbs="POST") open class PostUnclaimedLinkCreationRequest : PostLinkCreationRequestBase(), IReturn { @DataMember(Name="affiliatePrograms") @SerializedName("affiliatePrograms") open var affiliatePrograms:ArrayList? = null companion object { private val responseType = PostLinkCreationResponse::class.java } override fun getResponseType(): Any? = PostUnclaimedLinkCreationRequest.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 AffiliateTokens { @DataMember(Name="guid") @SerializedName("guid") open var guid:UUID? = null @DataMember(Name="programGuid") @SerializedName("programGuid") open var programGuid:UUID? = null @DataMember(Name="affiliateTokens") @SerializedName("affiliateTokens") open var tokens:HashMap? = 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 }