Refurbed MarketOfferService API

The MarketOfferService API from Refurbed — 10 operation(s) for marketofferservice.

Operations 10

POST /refb.merchant.v1.MarketOfferService/BatchCreateMarketOffer Batch creates market offers / offer market prices of offers. #
POST /refb.merchant.v1.MarketOfferService/BatchDeleteMarketOffer Batch deletes market offers / offer market prices of offers. #
POST /refb.merchant.v1.MarketOfferService/BatchGetMarketOffer Batch gets market offers / offer market prices of offers. #
POST /refb.merchant.v1.MarketOfferService/BatchUpdateMarketOffer Batch updates market offers / offer market prices of offers. #
POST /refb.merchant.v1.MarketOfferService/CreateMarketOffer Creates a single market offer / an offer market price of an offer. #
POST /refb.merchant.v1.MarketOfferService/DeleteMarketOffer Deletes a single market offer / an offer market price of an offer. #
POST /refb.merchant.v1.MarketOfferService/GetMarketOffer Gets a single market offer. #
POST /refb.merchant.v1.MarketOfferService/ListMarketOffers Lists all market offers. #
POST /refb.merchant.v1.MarketOfferService/ListMarketOffersByOffer Lists all market offers of a specific offer. #
POST /refb.merchant.v1.MarketOfferService/UpdateMarketOffer Updates a single market offer / an offer market price of an offer. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/refurbed-marketofferservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

refurbed-marketofferservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Affiliate Partner BuybackBidService Market Offer Service API
  version: '1.0'
  description: The refurbed affiliate partner API allows to retrieve info about markets, products and instances including the buybox info (current price, grading, warranty).
  contact:
    name: Refurbed Affiliate Partner Integrations Team
    email: integrations@refurbed.com
servers:
- url: https://api.refurbed.com
security:
- APIKeyAuth: []
tags:
- name: MarketOfferService
paths:
  /refb.merchant.v1.MarketOfferService/BatchCreateMarketOffer:
    post:
      summary: Batch creates market offers / offer market prices of offers.
      description: "Known errors:\n - identical to the CreateMarketOffer operation"
      operationId: BatchCreateMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchCreateMarketOffersResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchCreateMarketOffersRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/BatchDeleteMarketOffer:
    post:
      summary: Batch deletes market offers / offer market prices of offers.
      description: "Known errors:\n - identical to the DeleteMarketOffer operation"
      operationId: BatchDeleteMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchDeleteMarketOffersResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchDeleteMarketOffersRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/BatchGetMarketOffer:
    post:
      summary: Batch gets market offers / offer market prices of offers.
      description: "Known errors:\n - identical to the GetMarketOffer operation"
      operationId: BatchGetMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchGetMarketOffersResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchGetMarketOffersRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/BatchUpdateMarketOffer:
    post:
      summary: Batch updates market offers / offer market prices of offers.
      description: "Known errors:\n - identical to the UpdateMarketOffer operation"
      operationId: BatchUpdateMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchUpdateMarketOffersResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchUpdateMarketOffersRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/CreateMarketOffer:
    post:
      summary: Creates a single market offer / an offer market price of an offer.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- ALREADY_EXISTS\n  - when market offer already exists, i.e. market price is defined for\n    given offer and market combination\n- INVALID_ARGUMENT\n  - when the unknown offer is provided\n  - invalid market code is provided\n  - invalid input market offer data is provided\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: CreateMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateMarketOfferResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMarketOfferRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/DeleteMarketOffer:
    post:
      summary: Deletes a single market offer / an offer market price of an offer.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- NOT_FOUND\n  - when market offer does not exists\n- INVALID_ARGUMENT\n  - invalid market offer identifier is provided\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: DeleteMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                properties: {}
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteMarketOfferRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/GetMarketOffer:
    post:
      summary: Gets a single market offer.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- NOT_FOUND\n  - when the offer is not found\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: GetMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetMarketOfferResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetMarketOfferRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/ListMarketOffers:
    post:
      summary: Lists all market offers.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- INVALID_ARGUMENT\n  - when pagination limit is too large (>100)\n  - when both \"ending_before\" and \"starting_after\" are specified in pagination\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: ListMarketOffers
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMarketOffersResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListMarketOffersRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/ListMarketOffersByOffer:
    post:
      summary: Lists all market offers of a specific offer.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- INVALID_ARGUMENT\n  - when offer identifier is not valid\n  - when pagination limit is too large (>100)\n  - when both \"ending_before\" and \"starting_after\" are specified in pagination\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: ListMarketOffersByOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMarketOffersByOfferResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListMarketOffersByOfferRequest'
        required: true
  /refb.merchant.v1.MarketOfferService/UpdateMarketOffer:
    post:
      summary: Updates a single market offer / an offer market price of an offer.
      description: "Known errors:\n- UNAUTHENTICATED\n  - when no authorization header is sent\n  - when authorization header is malformed or invalid\n- PERMISSION_DENIED\n  - when the authorized user does not have permissions for this operation\n- NOT_FOUND\n  - when market offer does not exists\n- INVALID_ARGUMENT\n  - when the unknown offer is provided\n  - invalid input market offer data is provided\n- RESOURCE_EXHAUSTED\n  - when rate limit is exceeded"
      operationId: UpdateMarketOffer
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateMarketOfferResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
      tags:
      - MarketOfferService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMarketOfferRequest'
        required: true
components:
  schemas:
    CurrencyCodeFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/CurrencyCode'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/CurrencyCode'
    CreateMarketOfferRequest:
      type: object
      properties:
        identifier:
          $ref: '#/components/schemas/OfferIdentifier'
        market_price:
          $ref: '#/components/schemas/CreateMarketOfferRequest.CreateOfferMarketPrice'
    Status:
      type: object
      properties:
        code:
          type: integer
          format: int32
          description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
        message:
          type: string
          description: 'A developer-facing error message, which should be in English. Any

            user-facing error message should be localized and sent in the

            [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.'
        details:
          type: array
          items:
            $ref: '#/components/schemas/Any'
          description: 'A list of messages that carry the error details.  There is a common set of

            message types for APIs to use.'
      description: 'The `Status` type defines a logical error model that is suitable for

        different programming environments, including REST APIs and RPC APIs. It is

        used by [gRPC](https://github.com/grpc). Each `Status` message contains

        three pieces of data: error code, error message, and error details.


        You can find out more about this error model and how to work with it in the

        [API Design Guide](https://cloud.google.com/apis/design/errors).'
    OfferState:
      type: string
      enum:
      - UNSPECIFIED
      - OK
      - UNVERIFIED
      - SUBMITTED
      - PENDING_REVIEW
      - REJECTED
      default: UNSPECIFIED
      description: " - OK: Everything is in order. Final state.\n - UNVERIFIED: Offer needs to be verified in the refurbed merchant interface before\nbeing shown publicly. This state is set on all offers that are created\nusing GTIN/MPN identifiers. Next state: OK.\n - SUBMITTED: Offer has been submitted using catalog attributes, but not processed yet.\nNext state: PENDING_REVIEW.\n - PENDING_REVIEW: Offer has been submitted using catalog attributes, and is awaiting manual review.\nNext state: OK, REJECTED.\n - REJECTED: Offer will not proceed to the marketplace. Final state."
    MarketOffer:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/MarketOfferIdentifier'
          description: Primary key.
        version:
          type: string
          format: int64
          description: Version of this offer / offer market price.
        is_current:
          type: boolean
          description: Indicates whether this is the currently available version.
        created_at:
          type: string
          format: date-time
          description: When the offer was initially created.
        instance_id:
          type: string
          format: int64
          description: The refurbed instance id ("product variant") this offer is for.
        instance_name:
          type: string
          description: Human-readable name of the instance this offer is for.
        state:
          $ref: '#/components/schemas/OfferState'
          description: The offer's state.
        sku:
          type: string
          description: 'The merchant''s SKU.


            Max. length is 256 unicode characters. SKUs cannot have leading or trailing

            whitespace characters.


            Can be empty string for old offers that did not require SKU to be set.'
        grading:
          $ref: '#/components/schemas/OfferGrading'
          description: Grading of the item sold.
        warranty:
          $ref: '#/components/schemas/OfferWarranty'
          description: Warranty of the item sold.
        stock:
          type: integer
          format: int64
          description: The item's stock.
        shipping_profile_id:
          type: string
          format: int64
          description: 'The shipping profile connected to this offer. This determines in what

            markets the offer is sold and what the shipping costs are.'
        shipping_profile_name:
          type: string
          description: Name of shipping profile.
        secondary_shipping_profile_id:
          type:
          - string
          - 'null'
          format: int64
          description: 'An optional secondary shipping profile id. Can be used to offer express

            shipping next to standard shipping. Has to be different from the primary

            shipping profile.'
        secondary_shipping_profile_name:
          type:
          - string
          - 'null'
          description: 'Name of secondary shipping profile. Only returned if secondary shipping

            profile is set.'
        taxation:
          $ref: '#/components/schemas/OfferTaxation'
          description: The taxation mode set for this offer.
        real_taxation:
          $ref: '#/components/schemas/OfferTaxation'
          description: 'The taxation mode the offer uses. This is either the set offer taxation

            or the global taxation mode (merchant account settings) that overrides it.'
        reference_currency_code:
          $ref: '#/components/schemas/CurrencyCode'
          description: Currency of reference prices.
        reference_price:
          type: string
          description: 'Reference gross price of this offer. The reference price is used to

            calculate prices if they are not defined for a market.'
        reference_min_price:
          type:
          - string
          - 'null'
          description: 'Optional reference minimum price in market currency for automatic

            repricing. The reference minimum price is used to calculate minimum prices

            if they are not defined for a market.'
        market_price:
          $ref: '#/components/schemas/OfferMarketPrice'
          description: The market price.
      description: 'A merchant''s market offer. A market offer is a combination of an offer with

        a specific offer market price.'
    BatchCreateMarketOffersResponse.Result:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/Status'
        market_offer:
          $ref: '#/components/schemas/MarketOffer'
          description: Created market offer. Set if status code is OK.
    ListMarketOffersRequest.Filter.OfferNameFilter:
      type: object
      properties:
        matches:
          type:
          - string
          - 'null'
    StringPagination:
      type: object
      properties:
        limit:
          type:
          - integer
          - 'null'
          format: int64
          description: 'Limit on the number of results to be returned. Between 1 and 100.

            Default and maximum is 100.'
        ending_before:
          type: string
        starting_after:
          type: string
      description: Paginates resources with string primary key.
    ListMarketOffersByOfferRequest.Filter:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/MarketOfferIdentifierFilter'
        market_price_market_code:
          $ref: '#/components/schemas/StringFilter'
        market_price_is_site_market:
          $ref: '#/components/schemas/BoolFilter'
        market_price_is_calculated:
          $ref: '#/components/schemas/BoolFilter'
        market_price_currency_code:
          $ref: '#/components/schemas/CurrencyCodeFilter'
        market_price_price:
          $ref: '#/components/schemas/NumericRangeFilter'
        market_price_min_price:
          $ref: '#/components/schemas/OptionalNumericRangeFilter'
        market_price_site_market_currency_code:
          $ref: '#/components/schemas/CurrencyCodeFilter'
        market_price_site_market_price:
          $ref: '#/components/schemas/NumericRangeFilter'
        market_price_site_market_min_price:
          $ref: '#/components/schemas/OptionalNumericRangeFilter'
        market_price_visibility:
          $ref: '#/components/schemas/OfferVisibilityFilter'
        market_price_instance_buybox_state:
          $ref: '#/components/schemas/OfferBuyboxStateFilter'
        market_price_buybox_scope:
          $ref: '#/components/schemas/OfferBuyboxScopeFilter'
          title: only applicable when buybox state is WON
    CreateMarketOfferRequest.CreateOfferMarketPrice:
      type: object
      properties:
        market_code:
          type: string
          required:
          - market_code
        currency_code:
          $ref: '#/components/schemas/CurrencyCode'
        price:
          type: string
          required:
          - price
        min_price:
          type:
          - string
          - 'null'
      required:
      - market_code
      - price
    BatchUpdateMarketOffersRequest.Update:
      type: object
      properties:
        identifier:
          $ref: '#/components/schemas/MarketOfferIdentifier'
          description: The identifier of the market offer to update.
        market_price:
          $ref: '#/components/schemas/Update.UpdateOfferMarketPrice'
    OfferBuyboxScopeFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferBuyboxScope'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferBuyboxScope'
    OptionalInt64Filter:
      type: object
      properties:
        any_of:
          type: array
          items:
            type: string
            format: int64
        none_of:
          type: array
          items:
            type: string
            format: int64
        is_set:
          type:
          - boolean
          - 'null'
    OfferGradingFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferGrading'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferGrading'
    BatchDeleteMarketOffersRequest:
      type: object
      properties:
        offers:
          type: array
          items:
            $ref: '#/components/schemas/BatchDeleteMarketOffersRequest.Delete'
          description: Market offers to delete. Between 1 and 50.
          required:
          - offers
      required:
      - offers
    OfferTaxationFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferTaxation'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferTaxation'
    OfferMarketPrice:
      type: object
      properties:
        offer_id:
          type: string
          format: int64
          description: Id of the offer the price is set for.
        market_code:
          type: string
          description: Code of the market the price is set for.
        market_name:
          type: string
          description: Name of the market the price is set for.
        is_site_market:
          type: boolean
          description: Indicates whether there exists a refurbed website for this market.
        is_calculated:
          type: boolean
          description: 'Indicates whether the price was calculated by a rule or set manually by

            the merchant.'
        currency_code:
          $ref: '#/components/schemas/CurrencyCode'
          description: Currency of prices set.
        price:
          type: string
          description: 'Gross price of this offer. Either set by merchant, or calculated by

            refurbed.'
        min_price:
          type:
          - string
          - 'null'
          description: 'Optional minimum price in market currency for automatic repricing. Either

            set by merchant, or calculated by refurbed.'
        site_market_currency_code:
          $ref: '#/components/schemas/CurrencyCode'
          description: Native currency of the market. Only set for site markets.
        site_market_price:
          type:
          - string
          - 'null'
          description: Price in currency of the site market. Only set for site markets.
        site_market_min_price:
          type:
          - string
          - 'null'
          description: Minimum price in currency of the site market. Only set for site markets.
        visibility:
          $ref: '#/components/schemas/OfferVisibility'
          description: Visibility of the offer in this market. Only set on the current version.
        instance_buybox_state:
          $ref: '#/components/schemas/OfferBuyboxState'
          description: 'Shows if the offer has the BuyBox in this market.

            Only set for site markets in the current offer version.'
        instance_buybox_info:
          $ref: '#/components/schemas/BuyboxInfo'
          description: 'More detailed information about how to win the BuyBox.


            This is only set if the BuyBox state is ELIGIBLE.'
        buybox_scope:
          $ref: '#/components/schemas/OfferBuyboxScope'
          description: It may be set only if market offer is in WON BuyBox state.
      description: 'An offer price defines the price configuration of an offer for a single

        market.'
    ListMarketOffersByOfferResponse:
      type: object
      properties:
        market_offers:
          type: array
          items:
            $ref: '#/components/schemas/MarketOffer'
          description: The market offers found.
        has_more:
          type: boolean
          description: Indicates whether there are more results available.
    GetMarketOfferRequest:
      type: object
      properties:
        identifier:
          $ref: '#/components/schemas/MarketOfferIdentifier'
          description: The identifier of the market offer to get.
    BatchDeleteMarketOffersRequest.Delete:
      type: object
      properties:
        identifier:
          $ref: '#/components/schemas/MarketOfferIdentifier'
          description: The identifier of the market offer to delete.
    ListMarketOffersByOfferRequest.Sort.By:
      type: string
      enum:
      - ID
      - MARKET_PRICE_MARKET_CODE
      - MARKET_PRICE_MARKET_NAME
      - MARKET_PRICE_IS_SITE_MARKET
      - MARKET_PRICE_IS_CALCULATED
      - MARKET_PRICE_CURRENCY_CODE
      - MARKET_PRICE_PRICE
      - MARKET_PRICE_MIN_PRICE
      - MARKET_PRICE_SITE_MARKET_CURRENCY_CODE
      - MARKET_PRICE_SITE_MARKET_PRICE
      - MARKET_PRICE_SITE_MARKET_MIN_PRICE
      default: ID
    BatchCreateMarketOffersRequest.Create:
      type: object
      properties:
        identifier:
          $ref: '#/components/schemas/OfferIdentifier'
        market_price:
          $ref: '#/components/schemas/Create.CreateOfferMarketPrice'
    GetMarketOfferResponse:
      type: object
      properties:
        market_offer:
          $ref: '#/components/schemas/MarketOffer'
    Any:
      type: object
      properties:
        '@type':
          type: string
          description: "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n  value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n  URL, or have them precompiled into a binary to avoid any\n  lookup. Therefore, binary compatibility needs to be preserved\n  on changes to types. (Use versioned type names to manage\n  breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
      additionalProperties: {}
      description: "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n    Foo foo = ...;\n    Any any;\n    any.PackFrom(foo);\n    ...\n    if (any.UnpackTo(&foo)) {\n      ...\n    }\n\nExample 2: Pack and unpack a message in Java.\n\n    Foo foo = ...;\n    Any any = Any.pack(foo);\n    ...\n    if (any.is(Foo.class)) {\n      foo = any.unpack(Foo.class);\n    }\n\n Example 3: Pack and unpack a message in Python.\n\n    foo = Foo(...)\n    any = Any()\n    any.Pack(foo)\n    ...\n    if any.Is(Foo.DESCRIPTOR):\n      any.Unpack(foo)\n      ...\n\n Example 4: Pack and unpack a message in Go\n\n     foo := &pb.Foo{...}\n     any, err := anypb.New(foo)\n     if err != nil {\n       ...\n     }\n     ...\n     foo := &pb.Foo{}\n     if err := any.UnmarshalTo(foo); err != nil {\n       ...\n     }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n    package google.profile;\n    message Person {\n      string first_name = 1;\n      string last_name = 2;\n    }\n\n    {\n      \"@type\": \"type.googleapis.com/google.profile.Person\",\n      \"firstName\": <string>,\n      \"lastName\": <string>\n    }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n    {\n      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n      \"value\": \"1.212s\"\n    }"
    ListMarketOffersRequest:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/MarketOfferIdentifierPagination'
        sort:
          $ref: '#/components/schemas/ListMarketOffersRequest.Sort'
        filter:
          $ref: '#/components/schemas/ListMarketOffersRequest.Filter'
    BatchGetMarketOffersResponse.Result:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/Status'
        market_offer:
          $ref: '#/components/schemas/MarketOffer'
          description: Retrieved market offer. Set if status code is OK.
    SortOrder:
      type: string
      enum:
      - ASC
      - DESC
      default: ASC
    BatchGetMarketOffersRequest:
      type: object
      properties:
        market_offers:
          type: array
          items:
            $ref: '#/components/schemas/BatchGetMarketOffersRequest.Get'
          description: Market offers to get. Between 1 and 50.
          required:
          - market_offers
      required:
      - market_offers
    BatchUpdateMarketOffersResponse:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/BatchUpdateMarketOffersResponse.Result'
          description: Results of the update operation. In request order.
    OfferVisibilityFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferVisibility'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/OfferVisibility'
    MarketOfferIdentifierFilter:
      type: object
      properties:
        any_of:
          type: array
          items:
            $ref: '#/components/schemas/MarketOfferIdentifier'
        none_of:
          type: array
          items:
            $ref: '#/components/schemas/MarketOfferIdentifier'
    OfferBuyboxState:
      type: string
      enum:
      - UNSPECIFIED
      - WON
      - SHOULD_WIN
      - ELIGIBLE
      - WON_ELSEWHERE
      - INELIGIBLE
      default: UNSPECIFIED
      description: " - WON: Offer currently has the BuyBox.\n - SHOULD_WIN: Current

# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/refurbed/refs/heads/main/openapi/refurbed-marketofferservice-api-openapi.yml