/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1-dev * User agent: apibuilder app.apibuilder.io/shopr/clickouts-api/0.0.1-dev/flow_erm_schema */ package com.shopr.api.clickouts.api.v0.erm import io.flow.event.relation.mapper.schema.ErmSpec import io.apibuilder.spec.v0.models.{Enum, EnumValue, Field, Model, Union, UnionType} import com.shopr.api.clickouts.api.v0.models.Clickout import com.shopr.api.clickouts.api.v0.models.ClientOrigin import com.shopr.api.clickouts.api.v0.models.ErrorCode import com.shopr.api.clickouts.api.v0.models.ErrorResponse import com.shopr.api.clickouts.api.v0.models.Status import com.shopr.api.clickouts.api.v0.models.Tracking object GeneratedErmSchema { implicit lazy val ermSpecTracking: ErmSpec[Tracking] = ErmSpec.model( qualifiedName = "com.shopr.api.clickouts.api.v0.models.tracking", spec = Model(name = "tracking", plural = "trackings", fields = Seq( Field(name = "ipAddress", `type` = "string", required = true), Field(name = "origin", `type` = "client_origin", required = true), Field(name = "userAgent", `type` = "string", required = false), Field(name = "referrer", `type` = "string", required = false), )), resolved = Map[String, ErmSpec[_]]( "com.shopr.api.clickouts.api.v0.enums.client_origin" -> ermSpecClientOrigin, ), ) implicit lazy val ermSpecClickout: ErmSpec[Clickout] = ErmSpec.model( qualifiedName = "com.shopr.api.clickouts.api.v0.models.clickout", spec = Model(name = "clickout", plural = "clickouts", fields = Seq( Field(name = "productId", `type` = "string", required = true), Field(name = "seller", `type` = "string", required = true), Field(name = "sellerProductId", `type` = "string", required = true), Field(name = "price", `type` = "decimal", required = true), Field(name = "deepUrl", `type` = "string", required = true), Field(name = "lowestPrice", `type` = "decimal", required = true), Field(name = "highestPrice", `type` = "decimal", required = true), Field(name = "offerCount", `type` = "integer", required = true), Field(name = "offerPosition", `type` = "integer", required = true), Field(name = "categoryId", `type` = "string", required = true), Field(name = "tracking", `type` = "tracking", required = true), Field(name = "creationTime", `type` = "date-time-iso8601", required = true), )), resolved = Map[String, ErmSpec[_]]( "com.shopr.api.clickouts.api.v0.models.tracking" -> ermSpecTracking, ), ) implicit lazy val ermSpecErrorCode: ErmSpec[ErrorCode] = ErmSpec.model( qualifiedName = "com.shopr.api.clickouts.api.v0.models.error_code", spec = Model(name = "error_code", plural = "error_codes", fields = Seq( Field(name = "code", `type` = "string", required = true), Field(name = "localized_string_code", `type` = "string", required = true), )), ) implicit lazy val ermSpecErrorResponse: ErmSpec[ErrorResponse] = ErmSpec.model( qualifiedName = "com.shopr.api.clickouts.api.v0.models.error_response", spec = Model(name = "error_response", plural = "error_responses", fields = Seq( Field(name = "message", `type` = "string", required = false), Field(name = "error_codes", `type` = "[error_code]", required = true), Field(name = "fingerprint", `type` = "string", required = false), )), resolved = Map[String, ErmSpec[_]]( "com.shopr.api.clickouts.api.v0.models.error_code" -> ermSpecErrorCode, ), ) implicit lazy val ermSpecStatus: ErmSpec[Status] = ErmSpec.model( qualifiedName = "com.shopr.api.clickouts.api.v0.models.status", spec = Model(name = "status", plural = "statuses", fields = Seq( Field(name = "response", `type` = "string", required = true), )), ) implicit lazy val ermSpecClientOrigin: ErmSpec[ClientOrigin] = ErmSpec.`enum`( qualifiedName = "com.shopr.api.clickouts.api.v0.enums.client_origin", spec = Enum(name = "client_origin", plural = "client_origins", values = Seq( EnumValue(name = "shopr_website"), EnumValue(name = "shopr_mobile_web"), EnumValue(name = "shopr_iphone"), EnumValue(name = "shopr_ipad"), EnumValue(name = "shopr_android"), )), ) val all: Seq[ErmSpec[_]] = Seq( ermSpecTracking, ermSpecClickout, ermSpecErrorCode, ermSpecErrorResponse, ermSpecStatus, ermSpecClientOrigin, ) }