Back Market Care API

The Care API from Back Market — 6 operation(s) for care.

OpenAPI Specification

back-market-care-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 0.1.1
  title: Back Market - API Guidelines Care API
  description: "## Table of contents\n\n1. [Introduction](#introduction)\n1. [Getting started](#getting-started)\n1. [Technical requirements](#technical-requirements)\n1. [F.A.Q. and Contact](#faq-and-contact)\n1. [Cookbooks](#cookbooks)\n\n## Introduction\n\nWelcome to Back Market, the leading online marketplace dedicated to refurbished products.\n\nOur back-office and our web-services have been created in order to allow Seller to manage their products\neasily on our marketplace. This documentation is meant to help you integrate our marketplace and learn how to manage\nyour `Products`, `Offers` and `Orders` on Back Market.\n\n### Overview of what this documentation is talking about\n\n* Our Taxonomy : This part will describe the organization and classification of our marketplace\n* Products & Offers : You will learn how to create `Products` as well as create, update and list `Offers` on Back Market\n* Your Orders : The `Orders` workflow, listing and update will be explained\n\nDifferent solutions are offered in order to use our marketplace. It's possible to work with a combination of\nthese solutions or to switch from one to another at a later stage.\n\n1 - Back Market API:\n\nThis is the best solution for big and/or small sellers with their own technical team. Working with our API will\nenable you to synchronize your information with our database in real time. It is especially suitable for sellers\nwith long-tail catalogs as well as a large amount of sales.\n\n2 - Back-office:\n\nOur <a target=\"_blank\" href=\"https://www.backmarket.fr/bo_merchant/\"> back-office</a> offers a graphic user\ninterface which allows you to manage everything simply and efficiently.\n\nOur back-office also gives you the possibility to import and export CSV files\nwith `Products`, `Offers` and `Orders` information.\nThis allows you to work with more `Offers` comfortably.\n\n3 - DEPRECATED FTP :\n\nFTP in Back Market is deprecated. If you used to use FTP in order to connect to Back Market\nPlease contact <partner-support@backmarket.com> to help you to setup an API connexion.\n\n### Other information\n\nOn this website, we've collected all the information you might need to get on board as smoothly as possible.\nAlso, be sure to check our [F.A.Q.](#f-a-q-and-contact) to get answers to your questions.\n[Contact us](#f-a-q-and-contact) if you still have further questions.\n\n### Feedback\n\nAt Back Market, we always want to improve our solutions.\nPlease [Give Us Feedback](mailto:<partner-support@backmarket.com>?subject=Feedback Back Market Doc) and let us\n know about possible improvement we could make, be it on this documentation, our web services,\n our back-office or whatever you might think of.\nPlease note that this mail is temporary as we will deploy a new Seller support center\nthat will assist you.\n\n## Getting Started\n\nIf you did not yet read the page on [taxonomy](operations/get-bm-catalog-category#taxonomy), please do it before proceeding.\n\n### Account\n\nAfter validation by our team, each Seller gains access to an account. This account gives you access to the Back\nMarket Back Office and our API.\n\nUse one of the following links to access your Back Office account or create one if you haven't done so already.\nYou will need to provide information about your company and we will get back to you as soon as possible:\n\n* <a target=\"_blank\" href=\"https://www.backmarket.co.jp/bo-seller\">AP platform</a>\n* <a target=\"_blank\" href=\"https://www.backmarket.fr/bo-seller\">EU platform</a>\n* <a target=\"_blank\" href=\"https://www.backmarket.com/bo-seller\">US platform</a>\n\nFor creating or accessing an account on the preprod, you can use the following links:\n\n* <a target=\"_blank\" href=\"https://preprod.backmarket.co.jp/bo-seller\">AP preprod platform</a>\n* <a target=\"_blank\" href=\"https://preprod.backmarket.fr/bo-seller\">EU preprod platform</a>\n* <a target=\"_blank\" href=\"https://preprod.backmarket.com/bo-seller\">US preprod platform</a>\n\n### Country code\n\nBack Market is international so you can sell products abroad. The\ncountry code matches both the targeted language and country for the\naction you'd like to perform (ex: update the price for a listing in\nItaly).\nInformation about every countries are contained in the same instance\nof an object `Product` or a `Listing`.\n\nIndeed, you don't need to create one `Listing` for each country. This\n`Listing` will contain some fields which are the same for all the countries (_listing_id, quantity, ..._) and other\n country specific fields (_comment, price and warranty_delay_).\nTherefore, if you wish to edit the _**stock**_ (field :\n'quantity'), the change will apply to all the countries, but for the\n_**comment**_ you will have to change it for each country.\n\nIn the same way, some fields of the `Product` are common for all\ncountries (_weight, EAN, ..._), and others depend on the country\n(_description, title and price_new_).\n\n**COUNTRY_CODES** - Accepted values are :\n\n* AP platform:\n\n  * ja-jp     : Japan\n  * en-au     : Australia\n\n* EU platform:\n\n  * fr-fr     : France\n  * fr-be     : Belgium\n  * es-es     : Spain\n  * de-de     : Germany\n  * de-at     : Austria\n  * it-it     : Italy\n  * en-gb     : United Kingdom\n  * nl-nl     : Netherlands\n  * pt-pt     : Portugal\n  * en-ie     : Ireland\n  * el-gr     : Greece\n  * sk-sk     : Slovakia\n  * sv-se     : Sweden\n\n* US platform:\n\n  * en-us     : United States\n\n### CSV file format\n\nAll files imported through our Back Office or imported using Back Market's API must be in CSV format.\n\nRequired field separator is ';'.\n\nRequired line separator is the line feed '\\n'.\n\nFields must be surrounded by double quotes.\n## Technical Requirements\n\n### API Identification\n>\n> HTTP Header (will remain the same for every API call):\n\n```http\nContent-type: application/json\nAccept: application/json\nAccept-Language: COUNTRY_CODE\nAuthorization: Basic YOUR_ACCESS_TOKEN\nUser-Agent: YOUR_USER_AGENT\n```\n\nEach Integrator or Seller should use the following HTTP Header when calling Back Market API endpoints.\n\nThe User-Agent is mandatory. Any request without it might be refused by our System.\n\nIt should include your company name, application name, version, and a contact email address in this format:\n\n```http\nBM-{CompanyName}-{IntegrationName};company@companydomain.com.\n```\n\nFor example:\n\n```http\nBM-Ebay-Invoices;contact@ebay.com\nBM-bouygues-automations;contact@bouygues.fr\n```\n\n### Web application firewall (WAF) and Bot management\n\nThe WAF or bot management may block your requests for security reason. You'll typically receive an HTTP 403 Forbidden\nresponse, possibly with a response body to tell you to challenge your client with Cloudflare.\n\nIn case you judge that your request should not be blocked by Cloudflare, from the response headers, you can get the value of cf-ray and send it to your seller contact for investigation.\n\nExample HTTP 403 response from WAF:\n\n```http\nHTTP/2 403\ndate: Wed, 16 Apr 2025 11:26:41 GMT\ncontent-type: text/html; charset=UTF-8\nreferrer-policy: same-origin\ncache-control: max-age=15\nexpires: Wed, 16 Apr 2025 11:26:56 GMT\n...\nx-content-type-options: nosniff\nx-frame-options: SAMEORIGIN\nserver: cloudflare\ncf-ray: 931354450813d142-CDG\nalt-svc: h3=\":443\"; ma=86400\n```\n\nExample HTTP 403 response for Bot Management protected endpoints:\n\n```json\n{\n  \"errors\": [\n    {\n      \"code\": \"bot-need-challenge\",\n      \"message\": \"Forbidden\",\n      \"challengePath\": \"/testchallengepage\"\n    }\n  ]\n}\n```\n\n### Traffic limitation\n\nOur standard rate limits are will allow your automations to run fast enough to finish your processes.\nHowever, in case of too many requests beyond what we except on sellers endpoints, you will be presented with an HTTP 429 response from Cloudflare.\n\nUsually you will find the range above 200 requests in 10 seconds being blocked for 10 seconds and for more sensible\nendpoints like catalog for example above 20 requests in 10 seconds being blocked for 10 seconds.\n\n### Data limitation\n\nTo make sure we can handle and process all the incoming data correctly, we have set-up the following limitation:\n**We might not accept more than 2k lines of SKUs to process per hour** on the\n following endpoints ([Update Several listings](#update-several-listings) or\n  on [Update specific listing](#update-specific-listing)) and [Update Listings](#update-listings)) files.\nFTP in Back Market is deprecated. If you used to use FTP in order to connect to Back Market\nPlease contact <partner-support@backmarket.com> to help you to setup an API connexion.\n\n**If this limit is reached, Back Market may refuse the task**, in this case you will receive HTTP responses\nwith the \"429 Too Many Requests\" status.\n\nIf you have lots of active SKUs, please take into account the [Best Practice](#best-practices)\npart of the documentation.\n\n### Questions ?\n\nIf you have any questions, please send an email to <partner-support@backmarket.com>\nPlease note that this mail is temporary as we will deploy a new seller support center\nthat will assist you.\n## F.A.Q. and Contact\n\nPlease [click here](https://merchant-support.backmarket.com/hc/en-us) to access your Seller Support Center\n where you can find our F.A.Q. or contact us.\n\nIf you have never signed in to the Seller Support Center, you can\n read this [tutorial](statics/How-to-connect-to-SSC.pdf) which helps you setup you connection for the first time.\n\nIf you have any more questions and are already selling on Back Market, we invite you to contact your account manager.\n## Cookbooks\n\nA list of notebooks showcasing different API use cases:\n\n[Winning the BackBox based on small price efforts](https://colab.research.google.com/drive/12jHZ3AQG8mQjjAvulG9zVvfC_psEOKjh?usp=sharing)\n"
  contact:
    name: Seller Support Center
    url: https://merchant-support.backmarket.com/hc/en-us
    x-slack: NA
    email: NA@NA.com
servers:
- url: https://preprod.backmarket.co.jp
  description: Preprod - AP
- url: https://www.backmarket.co.jp
  description: Prod - AP
- url: https://preprod.backmarket.fr
  description: Preprod - EU
- url: https://www.backmarket.fr
  description: Prod - EU
- url: https://preprod.backmarket.com
  description: Preprod - NA
- url: https://www.backmarket.com
  description: Prod - NA
tags:
- name: Care
paths:
  /ws/sav:
    get:
      operationId: getCareFolderList
      x-tier: 2
      parameters:
      - description: Retrieve Care Folders with an ID higher than `last_id`
        example: 123
        in: query
        name: last_id
        required: false
        schema:
          type: integer
      - description: "Retrieve Care Folders with state equal to `state`.\n  * 0 - OPEN\n  * 9 - CLOSED\n"
        example: 9
        in: query
        name: state
        required: false
        schema:
          enum:
          - 0
          - 9
          type: integer
      - description: Retrieve Care Folders for a specific Orderline
        example: 456
        in: query
        name: orderline
        required: false
        schema:
          type: integer
      - description: Retrieve Care Folders more recent than `last_modification_date`. Format is YYYY-MM-DD-hh-mm
        example: 1970-01-01-00-00
        in: query
        name: last_modification_date
        required: false
        schema:
          type: string
      - description: Retrieve Care Folders having messages more recent than `last_message_date`. Format is YYYY-MM-DD-hh-mm
        example: 1970-01-01-00-00
        in: query
        name: last_message_date
        required: false
        schema:
          type: string
      - description: Page number to retrieve (10 entries per page).
        example: 2
        in: query
        name: page
        required: false
        schema:
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getCareFolderListResponse'
          description: Retrieved
        '401':
          description: Guest user not allowed
        '403':
          description: Authenticated user not allowed
      summary: Get a list of Care Folders attached to a Seller
      description: '## Rate Limiting


        This endpoint is rate limited to 520 requests per minute and 4000 per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
  /ws/sav/{careFolderId}:
    get:
      operationId: getCareFolderDetails
      x-tier: 2
      parameters:
      - description: ID of the Care Folder to retrieve
        example: 123
        in: path
        name: careFolderId
        required: true
        schema:
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/getCareFolderDetailsResponse'
          description: Retrieved
        '401':
          description: Guest user not allowed
        '403':
          description: Authenticated user not allowed
        '404':
          description: Care Folder does not exist
      summary: Get the details of a Care Folder
      description: '## Rate limiting


        This endpoint is rate limited to 600 requests per minute and 40000 requests per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
  /ws/sav/{careFolderId}/problem:
    post:
      operationId: postProblem
      x-tier: 2
      parameters:
      - description: ID of the Care Folder on which the problem is declared
        example: 123
        in: path
        name: careFolderId
        required: true
        schema:
          type: integer
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/postProblemRequest'
      responses:
        '201':
          description: Declared
        '401':
          description: Guest user not allowed
        '403':
          description: Forbidden
        '404':
          description: Care Folder does not exist
        '413':
          description: File too large or too many attachments
        '422':
          description: Attachments are mandatory for this problem type / Only OTHER problem type is allowed for IDs lower than 100,000,000 / Cannot declare problem on this Care Folder
      summary: Declare a problem on a Care Folder
      description: 'Declare a problem on a Care Folder.


        The `problem_type` field specifies the type of problem. If omitted, it defaults to `OTHER`.


        Attachments are **mandatory** for the following problem types: `DAMAGED_PACKAGE`, `ITEM_NOT_RECEIVED`, `OOW_ITEM`.


        For Care Folders with ID below 100,000,000, only `OTHER` is accepted and no message or attachments can be provided.


        ## Rate limiting


        This endpoint is rate limited to 750 requests per minute and 1000 requests per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
  /ws/sav/refund:
    post:
      operationId: postRefundCreate
      x-tier: 2
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/postRefundCreateRequest'
      responses:
        '201':
          content:
            text/plain:
              schema:
                description: Summary of the created refund
                example: 99€ refunded on the sku 123456
                type: string
          description: Refund Created
        '400':
          description: Payload not acceptable
        '401':
          description: Guest user not allowed
        '403':
          description: Authenticated user not allowed
        '404':
          description: Orderline does not exist
      summary: Create a refund on an Orderline
      description: '## Rate limiting


        This endpoint is rate limited to 500 requests per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
  /ws/sav/{careFolderId}/msg:
    post:
      operationId: postMessage
      x-tier: 2
      parameters:
      - description: ID of the Care Folder to retrieve
        example: 123
        in: path
        name: careFolderId
        required: true
        schema:
          type: integer
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/postMessageRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/postMessageResponse'
          description: Created
        '400':
          description: Payload not acceptable
        '401':
          description: Guest user not allowed
        '403':
          description: Authenticated user not allowed
        '404':
          description: Care Folder does not exist
      summary: Post a message on the After Sales Platform for a Care Folder
      description: 'Posting a message to a closed folder will reopen it.


        ## Rate limiting


        This endpoint is rate limited to 560 requests per minute and 40000 requests per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
  /ws/sav/{careFolderId}/item-transfer:
    post:
      operationId: postItemTransfer
      x-tier: 2
      parameters:
      - description: ID of the Care Folder on which the item is transferred back to the customer
        example: 123
        in: path
        name: careFolderId
        required: true
        schema:
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/postItemTransferCreateRequest'
        required: true
      responses:
        '201':
          description: Success
        '400':
          description: An item transfer with this tracking number already exists
        '403':
          description: Authenticated user not allowed
        '404':
          description: Care folder does not exit
        '422':
          description: Cannot create item transfer / Care folders with ID above 100,000,000 are not yet supported on this endpoint due to an ongoing internal migration
        '500':
          description: Shipment registration failed or Internal server error
      summary: Declare an item transfer back to customer
      description: '## Rate limiting


        This endpoint is rate limited to 292 requests per minute and 500 requests per day.

        If you exceed this limit, you will receive a `429` status code.

        '
      tags:
      - Care
      security:
      - ApiKeyAuth: []
      - BasicAuth: []
components:
  schemas:
    getCareFolderListResponse:
      properties:
        count:
          description: Number of Care Folders on the current page
          example: 3
          type: integer
        next:
          description: URL to the next page
          example: https://backmarket.fr/ws/sav/?page=2
          type: string
        previous:
          description: URL to the previous page
          example: 'null'
          type: string
        results:
          description: List of Care Folders
          items:
            $ref: '#/components/schemas/careFolder'
          type: array
      type: object
    postItemTransferCreateRequest:
      required:
      - shipperName
      - trackingNumber
      properties:
        shipperName:
          description: Name of the carrier used for the shipment
          example: DHL
          type: string
        trackingNumber:
          description: Tracking id issued by the carrier
          example: 123AZ0672
          type: string
        action:
          description: Action taken by the seller
          example: REPAIR
          enum:
          - REPAIR
          - REPLACE
          - NOTHING
          type: string
      type: object
    lightAttachment:
      type: object
      properties:
        id:
          type: integer
          description: ID of the attachment
          example: 123
        attachment:
          type: string
          description: URL of the attachment
          example: https://www.mycdn.com/path/to/the/attachment.file
        date_creation:
          type: string
          description: Attachment's creation date
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
    snapshot:
      type: object
      properties:
        id:
          type: integer
          description: ID of the snapshot (always returns a static value of 0)
          deprecated: true
          example: 0
        product:
          $ref: '#/components/schemas/product'
        listing:
          type: integer
          description: id of the listing
          example: 456
        sku:
          type: string
          description: SKU of the product
          example: 0123456789012
        snowden:
          type: boolean
          description: Only for iPhones. _true_ if TouchID is broken, _false_ otherwise. This field shouldn't be used anymore
          deprecated: true
          example: false
        image:
          type: string
          description: URL of the image
          example: https://www.mycdn.com/path/to/the/image.file
    order:
      type: object
      properties:
        order_id:
          type: integer
          description: ID of the order
          example: 123
        shipping_address:
          $ref: '#/components/schemas/address'
        billing_address:
          $ref: '#/components/schemas/address'
        tracking_number:
          type: string
          description: Tracking number
          example: ABC123
        tracking_url:
          type: string
          description: Tracking URL
          example: https://www.mycarrier.com/delivery/track
        shipper:
          type: integer
          description: ID of the shipper
          example: 456
        shipper_display:
          type: string
          description: Name of the Shipper
          example: Shipper
        date_creation:
          type: string
          description: Date of the order's creation (ISO 8601 format)
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
        date_modification:
          type: string
          description: Date of the order's last modification (ISO 8601 format)
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
        date_shipping:
          type: string
          description: Date of the order's shipping (ISO 8601 format)
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
        date_payment:
          type: string
          description: Date of the order's payment (ISO 8601 format)
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
        state:
          type: integer
          description: "Sate of the order:\n  * 0 - New\n  * 1 - Validated\n  * 3 - Merchant needs to send\n  * 8 - Failed\n  * 9 - Sent\n"
          enum:
          - 0
          - 1
          - 3
          - 8
          - 9
          example: 1
        price:
          type: string
          description: Price of the order
          example: '89.99'
        shipping_price:
          type: string
          description: Price of the order's shipping
          example: '5.99'
        currency:
          type: string
          description: Currency of the payment
          example: EUR
        country_code:
          type: string
          description: Country locale code of the plateform's location, lowercase
          example: fr-fr
    postRefundCreateRequest:
      properties:
        amount:
          description: Amount of the refund. Only if refund type is 6
          example: 89.99
          type: number
        orderline_pk:
          description: ID of the Orderline to be refund
          example: 123
          type: integer
        refund_type:
          description: "Type of the refund:\n  * 4 - Full refund for an orderline with state 1\n  * 5 - Full refund for an orderline with state 2\n  * 6 - Partial or full refund for an orderline with state 3\n\nDetails of the orderline states:\n| State | Description                                    |\n|-------|------------------------------------------------|\n| 0     | New Orderline                                  |\n| 1     | Orderline paid by the customer                 |\n| 2     | Orderline accepted by the seller               |\n| 3     | Orderline delivered to the shipping provider   |\n| 4     | Orderline cancelled                            |\n| 5     | Orderline refunded before shipping             |\n| 6     | Orderline refunded after shipping              |\n| 7     | Orderline not paid                             |\n| 8     | Orderline pending customer payment             |\n"
          enum:
          - 4
          - 5
          - 6
          example: 4
          type: integer
      type: object
    orderline:
      type: object
      properties:
        id:
          type: integer
          description: ID of the orderline
          example: 123
        order:
          $ref: '#/components/schemas/order'
        snapshot:
          $ref: '#/components/schemas/snapshot'
        quantity:
          type: integer
          description: Number of products
          example: 2
        price:
          type: string
          description: Price of the product
          example: '89.99'
        state:
          type: integer
          description: "State of the orderline:\n  * NEW - 0\n  * PAID - 1\n  * VALIDATED - 2\n  * SHIPPED - 3\n  * CANCELLED - 4\n  * REFUNDED_PRE_DELIVERY - 5\n  * REFUNDED_POST_DELIVERY - 6\n  * NOT_PAID - 7\n"
          example: 2
        trust_pack_plus:
          type: boolean
          description: Customer bought Trust Pack Plus. This field shouldn't be used anymore
          deprecated: true
          example: false
    message:
      type: object
      properties:
        id:
          type: integer
          description: ID of the message
          example: 123
        message:
          type: string
          description: Content of the message
          example: Lorem ipsum dolor sit amet
        date_creation:
          type: string
          description: Message's creation date (ISO 8601 format)
          format: date-time
          example: '1970-01-01T00:00:00+00:00'
        attachments:
          type: array
          items:
            $ref: '#/components/schemas/lightAttachment'
        initiator:
          type: string
          description: Entity that sent the message
          example: Merchant
        kind:
          type: string
          description: Kind of the message (SENDER_TO_RECEIVER)
          example: MERCHANT_TO_ALL
        is_informative:
          type: boolean
          description: _true_ if message is informative. Informative message do not trigger LRR
          example: false
    address:
      type: object
      properties:
        company:
          type: string
          description: Company related to the address
          example: My Company
        first_name:
          type: string
          description: First name related to the address
          example: John
        last_name:
          type: string
          description: Last name related to the address
          example: Smith
        street:
          type: string
          description: Street of the adress
          example: 1 rue du Paradis
        street2:
          type: string
          description: Complement on the street of the address
          example: ' '
        postal_code:
          type: string
          description: Postal code of the city of the address
          example: '33000'
        country:
          type: string
          description: Country of the address
          example: FR
        city:
          type: string
          description: City of the address
          example: Bordeaux
        phone:
          type: string
          description: Phone number related to the address
          example: 0123456789
        email:
          type: string
          description: Email related to the address
          example: john.smith@mycompany.com
        customer_id_number:
          type: string
          description: ID of the customer related to the address
          example: '123'
    claim:
      type: object
      properties:
        id:
          type: integer
          description: ID of the Claim
          example: 123
        tiles:
          type: array
          description: This field shouldn't be used anymore
          deprecated: true
          items:
            $ref: '#/components/schemas/tile'
        issues:
          type: array
          items:
            $ref: '#/components/schemas/issue'
        rate:
          type: integer
          description: This field shouldn't be used anymore
          deprecated: true
          example: 1
        score:
          type: integer
          description: This field shouldn't be used anymore
          deprecated: true
          example: 1
        state:
          type: integer
          description: "State of the Claim:\n  * 0 - OPEN\n  * 9 - CLOSED\n"
          example: 1
        withdraw:
          type: boolean
          description: This field shouldn't be used anymore
          deprecated: true
          example: false
        gras_savoye:
          type: boolean
          description: This field shouldn't be used anymore
          deprecated: true
          example: false
        warnings:
          type: array
          description: This field shouldn't be used anymore
          deprecated: true
          example: []
        resolution_choice:
          type: string
          description: Resolution option chosen by the customer
          enum:
          - REMOTE_ASSISTANCE
          - REPAIR
          - REPLACE
          - REPAIR_REPLACE
          - REFUND
          example: REPLACE
        declared_warranty_state:
          type: string
          description: Warranty state declared by the customer
          enum:
          - IN_WARRANTY
          - WATER_OR_DROPPED
          - THIRD_PARTY_REPAIR
          example: IN_WARRANTY
        return_labels:
          type: array
          items:
            $ref: '#/components/schemas/returnLabel'
    postProblemRequest:
      properties:
        problem_type:
          description: 'The type of problem to declare on the Care Folder.


            If not provided, defaults to `OTHER`.


            **Attachment requirements:**

            - `DAMAGED_PACKAGE`, `ITEM_NOT_RECEIVED`, and `OOW_ITEM` require at least one attachment.

            - All other problem types have optional attachments.

            '
          type: string
          enum:
          - ACCOUNT_LOCKED
          - CODE_LOCKED
          - DAMAGED_PACKAGE
          - ITEM_NOT_RECEIVED
          - MISSING_PART
          - OOW_ITEM
          - PROBLEM_NOT_IDENTIFIED
          - WRONG_ITEM
          - OTHER
          default: OTHER
          example: OTHER
        message:
          description: Optional message to include with the problem declaration.
          type: string
          example: The package arrived damaged
        attachment:
          description: 'The local file(s) to be uploaded with the problem declaration.


            **Mandatory** for problem types `DAMAGED_PACKAGE`, `ITEM_NOT_RECEIVED`, and `OOW_ITEM`.


            **Limits:**

            - Maximum file size: 3 MB per file

            - Maximum number of files: 10 files

            '
          example: []
          items:
            format: binary
            type: string
          type: array
      type: object
    category_3:
      type: object
      properties:
        category_name:
          type: string
          description: Name of the product's category
          example: Smartphones
        parent:
          deprecated: true
          description: This field shouldn't be used anymore
          $ref: '#/components/schemas/category_3'
    postMessageRequest:
      properties:
        attachment:
          description: '

# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/back-market/refs/heads/main/openapi/back-market-care-api-openapi.yml