Mirakl Stores API

The Stores API from Mirakl — 5 operation(s) for stores.

OpenAPI Specification

mirakl-stores-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  description: '{% partial file="/partial-content/product/connect-channel-platform/rest/connect/openapi-description.md" /%}'
  title: Mirakl Connect Channel Platform APIs Carriers Stores API
  version: ''
servers:
- description: Connect Channel Platform API
  url: https://miraklconnect.com/api/channel-platform
tags:
- name: Stores
paths:
  /api/shops/documents:
    get:
      description: '<div class="extension-title">Description</div>


        You must specify at least one of the following parameters: <code>shop_ids</code>, <code>updated_since</code>


        <div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: At each display of a page that includes documents from a store (for example: during the KYC process)</div>

        <div class="max-call-frequency">Maximum usage: At each display of a page that includes documents from a store (for example: during the KYC process)</div>

        </div>'
      operationId: S30
      parameters:
      - description: A list of shop identifiers
        explode: true
        in: query
        name: shop_ids
        required: false
        schema:
          type: string
        style: form
      - description: True to include deleted documents, false to remove them
        explode: true
        in: query
        name: include_deleted
        required: false
        schema:
          type: boolean
          default: false
        style: form
      - description: Retrieve shop documents modified at or after this date. The time period cannot exceed 90 days
        explode: true
        in: query
        name: updated_since
        required: false
        schema:
          type: string
          format: date-time
        style: form
      responses:
        '200':
          content:
            application/json:
              examples:
                application/json-0:
                  summary: Example with business values (application/json)
                  value:
                    shop_documents:
                    - date_deleted: null
                      date_uploaded: '2019-03-27T14:43:06Z'
                      file_name: legal.jpeg
                      id: 2002
                      shop_id: 2000
                      type: LEGAL_DOC
                    - date_deleted: null
                      date_uploaded: '2019-03-27T14:44:07Z'
                      file_name: card.jpeg
                      id: 2004
                      shop_id: 2000
                      type: ID_CARD
                    total_count: 2
                application/json-auto:
                  summary: Complete example with value types (application/json)
                  value:
                    shop_documents:
                    - date_deleted: '2023-03-28T09:34:42Z'
                      date_uploaded: '2023-03-28T09:34:42Z'
                      file_name: string
                      id: 0
                      shop_id: 0
                      type: string
                    total_count: 0
              schema:
                type: object
                $ref: '#/components/schemas/S30_Response_200'
          description: OK
      security:
      - Operator-Bearer-Token: []
      - OAuth-2: []
      summary: S30 - List shop's documents
      tags:
      - Stores
    post:
      description: '<div class="extension-title">Description</div>


        Document filenames must be distinct and there can be only one file per document type.<br/>Only documents of the following types are supported: csv, doc, docx, gif, html, jpeg, latex, mp4, odp, odc, odg, ods, odt, pdf, png, pps, ppsx, ppt, pptx, quicktime, rtf, text, tiff, xls, xlsx, xml, zip<br/><span class=''red''>You can upload a maximum of 50 business documents for each shop. These documents are not order related documents.</span>


        <div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: At each business document upload to a shop</div>

        <div class="max-call-frequency">Maximum usage: 50 business documents per call</div>

        <div class="extension-title">Read More</div>


        <ul><li><a href="https://help.mirakl.com/bundle/customers/page/topics/Mirakl/mmp/Operator/manage_docs/manage_order_and_seller_docs/manage_order_and_seller_documents.html">More context</a></li></ul></div>'
      operationId: S32
      parameters: []
      requestBody:
        content:
          multipart/form-data:
            examples:
              multipart/form-data-auto:
                summary: Complete example with value types (multipart/form-data)
                value:
                  files:
                  - string
                  shop_documents:
                    shop_documents:
                    - file_name: string
                      type_code: string
                  shop_id: 0
            schema:
              type: object
              properties:
                files:
                  type: array
                  description: Files to upload
                  items:
                    type: string
                    format: binary
                shop_documents:
                  $ref: '#/components/schemas/S32_Request_MultipartFormData_ShopDocuments'
                  description: A descriptor associated to the files
                shop_id:
                  type: integer
                  format: int64
                  description: the shop identifier to add the documents to
              required:
              - files
              - shop_documents
              - shop_id
      responses:
        '200':
          content:
            application/json:
              examples:
                application/json-0:
                  summary: Example with business values (application/json)
                  value:
                    errors_count: 1
                    shop_documents:
                    - errors:
                      - code: valid_shop_document.type
                        field: type_code
                        message: Unable to retrieve document's type from the given code
                      input:
                        file_name: proof-of-identity-38294.pdf
                        type_code: IDENTIFICATION_DOCUMENTX
                application/json-auto:
                  summary: Complete example with value types (application/json)
                  value:
                    documents:
                    - errors:
                      - code: string
                        field: string
                        message: string
                    errors_count: 0
              schema:
                type: object
                $ref: '#/components/schemas/S32_Response_200'
          description: OK
      security:
      - Operator-Bearer-Token: []
      - OAuth-2: []
      summary: S32 - Upload business documents to associate with a shop
      tags:
      - Stores
      x-codeSamples:
      - lang: cURL
        source: "curl -i -X POST \\\n  https://your-instance.mirakl.net/api/shops/documents \\\n  -H 'Content-Type: multipart/form-data' \\\n  -F 'files=@path/to/file' \\\n  -F 'shop_documents=\"{\\\"shop_documents\\\":[{\\\"file_name\\\":\\\"string\\\",\\\"type_code\\\":\\\"string\\\"}]}\";type=application/json' \\\n  -F 'shop_id=\"0\";type=application/json'\n"
  /api/shops/documents/download:
    get:
      description: "<div class=\"extension-title\">Description</div>\n\n        <ul>  <li><span class='red'>It is mandatory to specify either the <code>shop_ids</code> or the <code>document_ids</code>.</span></li>  <li>If a list of document identifiers is specified only these documents are downloaded.    <ul>      <li>If more than one document id is specified, the documents will be wrapped in a ZIP archive</li>      <li>If only one document id is specified the document will not be zipped</li>    </ul>  </li>  <li>    If a list of shop identifiers is specified, all documents from those shops are downloaded.<br/>    Use a list of shop document type codes to retrieve specific types from those shops.<br/>    In this case, the output of the API will always be a ZIP archive even if there is only one document to retrieve.  </li></ul><p>When documents are retrieved, they're wrapped into a ZIP archive except when only one document id is specified. The tree structure of this archive is as follow:</p><pre>\ndocuments-timestamp.zip\n|\n|__ shop_id_x/\n|   |__ foo.txt\n|   |__ bar.txt\n|   |__ baz.pdf\n|\n|__ shop_id_y/\n|   |__ image.png\n|   |__ image(1).png\n</pre><p>Returns a <code>404</code> if at least one document id, one shop id or one document type code is invalid</p>\n\n<div class=\"api-description-extension\">\n<div class=\"extension-title\">Call Frequency</div>\n\n<div class=\"recommended-call-frequency\">Recommended usage: After each S30 call, when you want to download documents from a store</div>\n<div class=\"max-call-frequency\">Maximum usage: After each S30 call, when you want to download documents from a store</div>\n<div class=\"extension-title\">Read More</div>\n\n<ul><li><a href=\"https://help.mirakl.com/bundle/customers/page/topics/Mirakl/mmp/Operator/manage_docs/manage_order_and_seller_docs/manage_order_and_seller_documents.html\">More context</a></li></ul></div>"
      operationId: S31
      parameters:
      - description: A list of shop identifiers (separated by a comma). It is mandatory to specify either the <code>shop_ids</code> or the <code>document_ids</code>
        explode: true
        in: query
        name: shop_ids
        required: false
        schema:
          type: string
        style: form
      - description: A list of document identifiers (separated by a comma). It is mandatory to specify either the <code>shop_ids</code> or the <code>document_ids</code>
        explode: true
        in: query
        name: document_ids
        required: false
        schema:
          type: string
        style: form
      - description: A list of document type codes (separated by a comma)
        explode: true
        in: query
        name: type_codes
        required: false
        schema:
          type: string
        style: form
      responses:
        '200':
          content:
            application/octet-stream:
              examples:
                application/octet-stream-auto:
                  summary: Complete example with value types (application/octet-stream)
                  value: string
              schema:
                type: string
                format: binary
          description: OK
      security:
      - Operator-Bearer-Token: []
      - OAuth-2: []
      summary: S31 - Download documents for one or multiple shops
      tags:
      - Stores
  /api/shops/documents/{document_id}:
    delete:
      description: '<div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: At each document deletion from one store</div>

        <div class="max-call-frequency">Maximum usage: At each document deletion from one store</div>

        <div class="extension-title">Read More</div>


        <ul><li><a href="https://help.mirakl.com/bundle/customers/page/topics/Mirakl/mmp/Operator/manage_docs/manage_order_and_seller_docs/manage_order_and_seller_documents.html">More context</a></li></ul></div>'
      operationId: S33
      parameters:
      - description: Document identifier to delete
        explode: false
        in: path
        name: document_id
        required: true
        schema:
          type: integer
          format: int64
        style: simple
      responses:
        '204':
          description: No Content
      security:
      - Operator-Bearer-Token: []
      - OAuth-2: []
      summary: S33 - Delete a shop document
      tags:
      - Stores
  /api/account:
    get:
      description: '<div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: Once per day</div>

        <div class="max-call-frequency">Maximum usage: Once per day</div>

        </div>'
      operationId: A01
      parameters:
      - description: Use this parameter when your user has access to several shops. If not specified, the shop_id from your default shop will be used.
        explode: true
        in: query
        name: shop_id
        required: false
        schema:
          type: integer
          format: int64
        style: form
      responses:
        '200':
          content:
            application/json:
              examples:
                application/json-0:
                  summary: Example with business values (application/json)
                  value:
                    applicable_taxes:
                    - code: TAXDEFAULT
                      fee_types:
                      - COMMISSION
                      - SUBSCRIPTION
                      - ADDITIONAL_FEES
                      label: ShopTax.TAXDEFAULT.label
                    approval_delay: 33
                    approval_rate: 1
                    banner: https://url.mirakl.net/mmp/media/shop-banner/2000
                    channels:
                    - US
                    closed_from: '2019-07-31T22:00:00Z'
                    closed_to: '2019-08-31T21:59:59Z'
                    contact_informations:
                      city: New York
                      civility: Mr
                      country: USA
                      email: shop@mail.com
                      fax: 213-509-6997
                      firstname: John
                      lastname: Doe
                      phone: 213-509-6995
                      phone_secondary: 213-509-6996
                      state: Manhattan
                      street1: 30, Prince Street
                      street2: 1st floor
                      web_site: https://www.mirakl.com
                      zip_code: NY 10012
                    currency_iso_code: USD
                    date_created: '2019-03-25T14:34:03Z'
                    default_billing_information:
                      corporate_information:
                        company_registration_name: ACME SHOP
                        company_registration_number: '01234567'
                      default_language: en_US
                      fiscal_information:
                        tax_identification_country: USA
                        tax_identification_number: XXX-XX-XXXX
                      id: a83c1170-f8cb-45a1-aa4a-affe809d6c64
                      registration_address:
                        city: New York
                        country_iso_code: USA
                        state: New York
                        street_1: 30, Prince Street
                        street_2: null
                        zip_code: NY 10012
                    description: Games seller
                    domains:
                    - PRODUCT
                    evaluations_count: 3
                    free_shipping: false
                    grade: 4
                    is_professional: true
                    kyc:
                      reason: Missing information
                      status: REFUSED
                    last_updated_date: '2019-03-28T09:28:59Z'
                    logo: https://url.mirakl.net/mmp/media/shop-logo/2000
                    model: MARKETPLACE
                    offers_count: 234
                    order_messages_response_delay: 76
                    orders_count: 7
                    payment_details:
                      paid_balance: -170.06
                      payable_balance: -259.2
                      pending_balance: 512.84
                      reserve_balance: 0
                      reserve_target: 0
                      sub_balances:
                      - paid: -170.06
                        pay_out_psp_code: NOT_SPECIFIED
                        payable: -259.2
                        pending: 512.84
                    payment_info:
                      '@type': ABA
                      bank_account_number: 000123456789123
                      bank_city: New York
                      bank_name: Bank of America
                      bank_street: 115 W 42nd St
                      bank_zip: NY 10036 US
                      bic: BOFAUS3NXXX
                      owner: John Doe
                      routing_number: '789456124'
                    payment_method_mandatory: true
                    premium: true
                    pro_details:
                      corporate_name: ACME SHOP
                      identification_number: '01234567'
                      tax_identification_number: XXX-XX-XXXX
                    producer_identifiers:
                    - epr_category_code: FR-DEA
                      producer_id: FR123456_89ABCD
                    - epr_category_code: DE-WEEE
                      producer_id: PRODUCERID1
                    recycling_policy: 'When we deliver your new item, we’ll take your old one away for you. Appliance recycling: this service is available through our home delivery service. Recycling electronic items in-store: if you have an old electronic item, we can safely recycle these items in-store, for free'
                    return_policy: "Any product return must be the subject of a formal agreement between the Seller and Purchaser. Any product returned without this agreement shall be held on behalf of the Purchaser and shall not give rise to the granting of any credit note. Claims must be received by shop within 8 days of the delivery of the goods. Subsequently to this delay, no claims shall be accepted. Once this delay has expired, should the client not have addressed their claim in writing to shop, the client is deemed to have accepted the product.\r\nWarranties that cover the delivered goods only apply within the framework of their intended use. Defects and damage resulting from natural wear, faulty assembly or maintenance, as well as modification of the products that was not intended or specified by the Seller are excluded from the warranty. Goods must be returned in their original packaging and as new, the cost and risks of returning the goods being borne by the Purchaser. Once the returned goods have been received and inspected, shop shall send the Purchaser a credit note corresponding to the amount of the original invoice, after deduction of any compensation or expenses which arise from any reconditioning work deemed necessary. This sum is credited to the account that the Purchaser has opened with the shop."
                    shipping:
                      lead_time_to_ship: 2
                    shipping_country: USA
                    shippings:
                    - additional_fields:
                      - code: productid
                        type: STRING
                        value: EAN123456789
                      shipping_free_amount: 550
                      shipping_type_code: EXP
                      shipping_type_label: Express
                      shipping_type_standard_code: CU_ADD-EXP
                      shipping_zone_code: DOM2
                      shipping_zone_label: Domestic 2
                    - additional_fields:
                      - code: osi
                        type: STRING
                        value: 5 articles per box
                      shipping_free_amount: 550
                      shipping_type_code: EXP
                      shipping_type_label: Express
                      shipping_type_standard_code: CU_ADD-EXP
                      shipping_zone_code: INT1
                      shipping_zone_label: International 1
                    - additional_fields:
                      - code: osi
                        type: STRING
                        value: 'One article per box '
                      - code: osi1
                        type: STRING
                        value: Five articles per box
                      - code: productid
                        type: STRING
                        value: EAN12345678
                      shipping_free_amount: 570
                      shipping_type_code: STD
                      shipping_type_label: Standard
                      shipping_type_standard_code: CU_ADD-STD
                      shipping_zone_code: DOM1
                      shipping_zone_label: Domestic 1
                    shop_additional_fields:
                    - code: accounting-phone
                      type: STRING
                      value: 213-509-6995
                    - code: customer-care-phone
                      type: STRING
                      value: 213-509-6996
                    - code: recruitment
                      type: LIST
                      value: Opt-In
                    shop_id: 2000
                    shop_name: ACME SHOP
                    shop_state: OPEN
                    suspension_type: null
                application/json-auto:
                  summary: Complete example with value types (application/json)
                  value:
                    applicable_taxes:
                    - code: string
                      fee_types:
                      - COMMISSION
                      label: string
                    approval_delay: 0
                    approval_rate: 0
                    banner: string
                    billing_info:
                      bank_city: string
                      bank_name: string
                      bank_street: string
                      bic: string
                      iban: string
                      owner: string
                      zip_code: string
                    channels:
                    - string
                    closed_from: '2023-03-28T09:34:42Z'
                    closed_to: '2023-03-28T09:34:42Z'
                    contact_informations:
                      city: string
                      civility: string
                      country: string
                      email: string
                      fax: string
                      firstname: string
                      lastname: string
                      phone: string
                      phone_secondary: string
                      state: string
                      street1: string
                      street2: string
                      web_site: string
                      zip_code: string
                    currency_iso_code: AED
                    date_created: '2023-03-28T09:34:42Z'
                    default_billing_information:
                      corporate_information:
                        company_registration_name: string
                        company_registration_number: string
                        complementary_information:
                          business_activity_code: string
                          company_registration_city: string
                          company_registration_province: string
                          company_shareholders: SINGLE
                          is_in_liquidation: true
                          legal_form: string
                          share_capital: 0
                          share_capital_currency: AED
                          sole_trader: true
                        electronic_address: string
                        phone_number: string
                      default_language: string
                      fiscal_information:
                        local_tax_number: string
                        tax_identification_country: AFG
                        tax_identification_number: string
                      fiscal_representative:
                        city: string
                        civility: string
                        company_registration_name: string
                        company_registration_number: string
                        country_iso_code: AFG
                        first_name: string
                        last_name: string
                        local_tax_number: string
                        state: string
                        street_1: string
                        street_2: string
                        zip_code: string
                      id: string
                      personal_information:
                        birth_city: string
                        birth_country: AFG
                        birth_date: string
                        civility: string
                        first_name: string
                        last_name: string
                      registration_address:
                        city: string
                        country_iso_code: AFG
                        state: string
                        street_1: string
                        street_2: string
                        zip_code: string
                    description: string
                    domains:
                    - PRODUCT
                    dropship:
                      retail_pricing_edition_enabled: true
                    evaluations_count: 0
                    free_shipping: true
                    grade: 0
                    is_professional: true
                    kyc:
                      reason: string
                      status: PENDING_SUBMISSION
                    last_updated_date: '2023-03-28T09:34:42Z'
                    logo: string
                    model: MARKETPLACE
                    offers_count: 0
                    order_messages_response_delay: 0
                    orders_count: 0
                    payment_details:
                      paid_balance: 0
                      payable_balance: 0
                      pending_balance: 0
                      reserve_balance: 0
                      reserve_target: 0
                      sub_balances:
                      - paid: 0
                        pay_out_psp_code: NOT_SPECIFIED
                        payable: 0
                        pending: 0
                    payment_info:
                      '@type': IBAN
                      owner: string
                    payment_method_mandatory: true
                    premium: true
                    pro_details:
                      VAT_number: string
                      corporate_name: string
                      identification_number: string
                      tax_identification_number: string
                    producer_identifiers:
                    - epr_category_code: FR-AGROPACK
                      producer_id: string
                    recycling_policy: string
                    return_policy: string
                    shipping:
                      lead_time_to_ship: 0
                    shipping_country: string
                    shipping_types:
                    - string
                    shipping_zones:
                    - string
                    shippings:
                    - additional_fields:
                      - code: string
                        type: STRING
                      shipping_free_amount: 0
                      shipping_type_code: string
                      shipping_type_label: string
                      shipping_type_standard_code: string
                      shipping_zone_code: string
                      shipping_zone_label: string
                    shop_additional_fields:
                    - code: string
                      type: STRING
                    shop_id: 0
                    shop_name: string
                    shop_state: OPEN
                    specific_billing_informations:
                    - corporate_information:
                        company_registration_name: string
                        company_registration_number: string
                        complementary_information:
                          business_activity_code: string
                          company_registration_city: string
                          company_registration_province: string
                          company_shareholders: SINGLE
                          is_in_liquidation: true
                          legal_form: string
                          share_capital: 0
                          share_capital_currency: AED
                          sole_trader: true
                        electronic_address: string
                        phone_number: string
                      fiscal_information:
                        local_tax_number: string
                        tax_identification_country: AFG
                        tax_identification_number: string
                      fiscal_representative:
                        city: string
                        civility: string
                        company_registration_name: string
                        company_registration_number: string
                        country_iso_code: AFG
                        first_name: string
                        last_name: string
                        local_tax_number: string
                        state: string
                        street_1: string
                        street_2: string
                        zip_code: string
                      id: string
                      personal_information:
                        birth_city: string
                        birth_country: AFG
                        birth_date: string
                        civility: string
                        first_name: string
                        last_name: string
                      registration_address:
                        city: string
                        country_iso_code: AFG
                        state: string
                        street_1: string
                        street_2: string
                        zip_code: string
                    suspension_type: MANUAL
              schema:
                type: object
                $ref: '#/components/schemas/A01_Response_200'
          description: OK
      security:
      - Shop-API-Key:
        - ROLE_SHOP_ADMIN
        - ROLE_PARTNER_SHOP_READ
      summary: A01 - Get shop information
      tags:
      - Stores
    put:
      description: '<div class="extension-title">Description</div>


        Depending on the operator''s configuration, some fields might not be editable.


        <div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: At each information update</div>

        <div class="max-call-frequency">Maximum usage: Once per day</div>

        </div>'
      operationId: A02
      parameters:
      - description: Use this parameter when your user has access to several shops. If not specified, the shop_id from your default shop will be used.
        explode: true
        in: query
        name: shop_id
        required: false
        schema:
          type: integer
          format: int64
        style: form
      requestBody:
        content:
          application/json:
            examples:
              application/json-0:
                summary: Update shop account
                value:
                  address:
                    city: New York
                    civility: Mr
                    country: USA
                    firstname: Doe
                    lastname: John
                    phone: 213-509-6996
                    phone_secondary: 213-509-6995
                    state: Manhattan
                    street1: 30, Prince Street
                    street2: 1st floor
                    zip_code: NY 10012
                  channels:
                  - US
                  closed_from: '2025-03-20T16:42:21Z'
                  closed_to: '2026-03-20T16:42:21Z'
                  description: This is the description of this seller
                  email: my-store@example.com
                  fax: 0245875499
                  is_professional: true
                  payment_info:
                    '@type': IBAN
                    bank_name: CACE
                    bic: AGRIFRPPXX2
                    iban: FR6031047696713027315572590
                    owner: John Doe
                  pro_details:
                    corporate_name: Mirakl Inc.
                    identification_number: '44268625900078'
                    tax_identification_number: FR939383
                  producer_identifiers:
                  - epr_category_code: FR-DEA
                    producer_id: FR123456_89ABCD
                  - epr_category_code: DE-WEEE
                    producer_id: PRO

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