Cdn Public Collector's Pricing Guide (CPG) API V2

<back to all web services

GetPricingRequest

Pricing

Retrieve pricing data for a collectible.

The following routes are available for this service:
GET/GetPricingRequestGsid or Pcgs Number is required. Grade, MinGrade and MaxGrade are optional. Specify ApiLevel=Advanced for additional collectible information.
import Foundation
import ServiceStack

/**
* Retrieve pricing data for a collectible.
*/
// @Api(Description="Retrieve pricing data for a collectible.")
public class GetPricingRequest : Codable
{
    public var gsid:Int
    public var pcgsNumber:String
    public var frNumber:String
    public var grade:Int
    public var minGrade:Int
    public var maxGrade:Int
    public var apiLevel:String

    required public init(){}
}

public class GetPricingResponse : BaseResponse
{
    public var data:[CdnPricingDataDto]

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case data
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        data = try container.decodeIfPresent([CdnPricingDataDto].self, forKey: .data) ?? []
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if data != nil { try container.encode(data, forKey: .data) }
    }
}

public class BaseResponse : Codable
{
    public var total:Int
    public var opCode:Int
    public var errorText:String
    public var requestTime:String
    public var responseTime:String
    public var totalExecutionTime:String
    public var cachedResponse:Bool
    public var permitAccess:Bool
    public var accessDeniedMessage:String

    required public init(){}
}

public class CdnPricingDataDto : Codable
{
    public var gsId:Int
    public var name:String
    public var sortingPosition:Int
    public var isType:Bool
    public var isSet:Bool
    public var uiParentId:Int
    public var pricingData:[CdnPricingItemDto]

    required public init(){}
}

public class CdnPricingItemDto : Codable
{
    public var grade:Int
    public var gradeLabel:String
    public var isCac:Bool
    public var cpgVal:String
    public var greyVal:String
    public var pcgsVal:String
    public var ngcVal:String
    public var blueBookVal:String

    required public init(){}
}


Swift GetPricingRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /GetPricingRequest HTTP/1.1 
Host: publicapiv2dev.greysheet.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Data":[{"GsId":0,"Name":"String","SortingPosition":0,"IsType":false,"IsSet":false,"UiParentId":0,"PricingData":[{"Grade":0,"GradeLabel":"String","IsCac":false,"CpgVal":"String","GreyVal":"String","PcgsVal":"String","NgcVal":"String","BlueBookVal":"String"}]}],"Total":0,"OpCode":0,"ErrorText":"String","RequestTime":"String","ResponseTime":"String","TotalExecutionTime":"String","CachedResponse":false,"PermitAccess":false,"AccessDeniedMessage":"String"}