> ## Documentation Index
> Fetch the complete documentation index at: https://developer.jtl-software.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Refresh Connector

> Re-mirrors all connector-driven metadata of an existing JTL-Connector account on demand: performs a live handshake against the endpoint (core.connector.init, connector.identify, core.connector.features, global_data.pull), maps the reported metadata onto Wawi data, persists the connector's mirror tables in one transaction, runs the four global-data sync services (shipping methods, cross-selling groups, units, measurement units) and finally pushes the acknowledgements. The modern equivalent of the legacy global-data import performed today by both the Abgleich and the WPF editor save; without that persisted mirror the Abgleich lacks data (tShopSprache, tShopWaehrung) and fails. Returns the same full object as CreateConnector. Two things are deliberately NOT modified: the customer-group assignment - which Wawi customer group an endpoint-side group maps to - which stays the separate user decision owned by PUT sales-channels/{salesChannelId}/connector/customer-groups, and the locally editable configuration (tShop/tShopKonfiguration). The endpoint side of those mappings IS refreshed: the endpoint-reported name of an existing mapping is updated, a mapping whose endpoint group the endpoint no longer reports is removed, and a live group with no existing mapping is never auto-assigned - choosing its Wawi counterpart stays the user decision owned by the customer-groups endpoint, which lists it as an unassigned candidate. Distinct from ResyncConnector, which clears the Wawi-to-Connector shop mappings so the next sync re-imports everything - this command imports nothing item-level and only refreshes the metadata mirror. Concurrency with a running Abgleich is uncritical: both paths upsert the same semantics from the same live source, so the outcome is last-writer-wins. Caveat inherited from the live pull: each global-data collection is fetched with the connector protocol's default page limit of 50 items, and the mirror write is a full-state replacement, so a connector reporting more than 50 entries in a collection has the excess assignments removed.



## OpenAPI

````yaml /openapi/erp/2.1.json post /v2/sales-channels/{salesChannelId}/connector/refresh
openapi: 3.0.0
info:
  title: JTL-WAWI API (Cloud)
  description: "JTL-Wawi-Version: 2.2.0-beta.601+Sha.59ba796\r\n# Introduction\r\n\r\nWelcome to the JTL-WAWI technical API documentation. This guide is here to help developers understand how our REST API works and how it can be integrated into your existing systems. We'll delve into the details of authentication and data manipulation processes, providing clear examples along the way. Whether you're a developer or an IT professional, this documentation aims to give you a practical understanding, laying the groundwork for effectively using the JTL-WAWI API to enhance your processes.\r\n\r\n# Authentication\r\n\r\nYou register your application with the API by sending a POST request with the required information and corresponding keys. You can find the exact request details at https://developer.jtl-software.com/products/erp/swagger/appregistration. This information has to include the following:\r\n\r\n* AppId\r\n* DisplayName\r\n* Description\r\n* Version\r\n* ProviderName\r\n* ProviderWebsite\r\n* MandatoryApiScopes\r\n\r\nThis data is crucial for identifying and registering your application with the API. The API uses it to generate a temporary authentication ID that allows your application to access the necessary resources. After successful validation of this information, you will receive the API key required for future authentication and API requests.\r\n\r\nBefore you can begin the registration process, you must open JTL-Wawi (new interface) and start the registration process under 'Admin->App registration'. Only at this point are you authorised to send the first API call. This step in JTL-Wawi ensures that your application is properly registered and has permission to use the API.\r\n\r\nThe API will send you an authentication ID in the form of a token. Once you have received this token and successfully completed the registration in JTL-Wawi, you will send another request to the API by including this authentication ID in the URL path.\r\n\r\nAfter successful validation of this second request by the API and confirmation of the correct information, you will be provided with the actual API key. It is important to note that this API key will not be displayed again!\r\n\r\nThis API key will be used in the future to authenticate requests to the API. It is of utmost importance that you securely store the API key upon receipt, as it cannot be retrieved from any other location in the system."
  contact:
    name: JTL-Software-GmbH
    url: https://developer.jtl-software.com/
    email: partner@jtl-software.com
  version: '2.1'
  x-application-version: 2.2.0.0
servers:
  - url: https://api.jtl-cloud.com/erp
    description: Production Environment Cloud API Gateway
security: []
tags:
  - name: WMS
    description: >-
      <p data-section-id='tag/WMS' class='stable_summary'></p>Query all pick
      lists for a specific wms warehouse that are not completed.
  - name: Wawi App
    description: >-
      <p data-section-id='tag/Wawi App' class='stable_summary'></p>Get a
      specific customer
  - name: Warehouses
    description: >-
      <p data-section-id='tag/Warehouses' class='stable_summary'></p>Queries all
      storage locations for a given warehouse.
  - name: Units
    description: Development
  - name: Transaction Status
    description: >-
      <p data-section-id='tag/Transaction Status'
      class='stable_summary'></p>Queries all transaction statuses for a sales
      order.
  - name: Tax
    description: >-
      <p data-section-id='tag/Tax' class='stable_summary'></p>Returns the tax
      rate for the given item.
  - name: Inventory
    description: >-
      <p data-section-id='tag/Inventory' class='stable_summary'></p>Queries
      stocks for a specific item, warehouse or storage location.
  - name: Sales Order
    description: Planned
  - name: Sales Invoice Correction
    description: Planned
  - name: Return
    description: >-
      <p data-section-id='tag/Return' class='beta_summary'></p>Create a new
      return with associated items and packages.
  - name: Item
    description: >-
      <p data-section-id='tag/Item' class='beta_summary'></p>Queries all
      responsible persons.
  - name: Refund
    description: Planned
  - name: Property
    description: >-
      <p data-section-id='tag/Property' class='stable_summary'></p>Queries all
      properties of items.
  - name: Printer
    description: >-
      <p data-section-id='tag/Printer' class='beta_summary'></p>Retrieves all
      installed printers.
  - name: Master Data
    description: >-
      <p data-section-id='tag/Master Data' class='stable_summary'></p>Queries
      all on hold reasons for sales orders.
  - name: Manufacturer
    description: Development
  - name: Label
    description: Development
  - name: Sales Invoice
    description: Planned
  - name: Info
    description: >-
      <p data-section-id='tag/Info' class='stable_summary'></p>Returns the
      status of the API.
  - name: Features
    description: >-
      <p data-section-id='tag/Features' class='stable_summary'></p>Returns the
      available feature sets with release state and API version.
  - name: Extensibility
    description: Planned
  - name: Shipment
    description: Development
  - name: Delivery Note
    description: Planned
  - name: Custom Field
    description: Development
  - name: Customer
    description: >-
      <p data-section-id='tag/Customer' class='stable_summary'></p>Deletes a
      specific customer.
  - name: Authentication
    description: >-
      <p data-section-id='tag/Authentication'
      class='deprecated_summary'></p>DEPRECATED seit Wawi 2.2.0: No-Op. Seit
      Wawi 2.1.0 registriert sich die Wawi selbst per JWT.
  - name: Attribute
    description: Development
  - name: Sales Quotation
    description: >-
      <p data-section-id='tag/Sales Quotation' class='beta_summary'></p>Execute
      the printing of a sales quotation
  - name: Production
  - name: Resources
  - name: Company
  - name: Sales Orders
  - name: Marketplace Order
  - name: Marketplace Offer
  - name: Marketplace Invoicing
  - name: Sales Channel
  - name: Payment
  - name: Warehouse Assistant
  - name: Worker
paths:
  /v2/sales-channels/{salesChannelId}/connector/refresh:
    post:
      tags:
        - wawi
        - Sales Channel
      summary: Refresh Connector
      description: >-
        Re-mirrors all connector-driven metadata of an existing JTL-Connector
        account on demand: performs a live handshake against the endpoint
        (core.connector.init, connector.identify, core.connector.features,
        global_data.pull), maps the reported metadata onto Wawi data, persists
        the connector's mirror tables in one transaction, runs the four
        global-data sync services (shipping methods, cross-selling groups,
        units, measurement units) and finally pushes the acknowledgements. The
        modern equivalent of the legacy global-data import performed today by
        both the Abgleich and the WPF editor save; without that persisted mirror
        the Abgleich lacks data (tShopSprache, tShopWaehrung) and fails. Returns
        the same full object as CreateConnector. Two things are deliberately NOT
        modified: the customer-group assignment - which Wawi customer group an
        endpoint-side group maps to - which stays the separate user decision
        owned by PUT sales-channels/{salesChannelId}/connector/customer-groups,
        and the locally editable configuration (tShop/tShopKonfiguration). The
        endpoint side of those mappings IS refreshed: the endpoint-reported name
        of an existing mapping is updated, a mapping whose endpoint group the
        endpoint no longer reports is removed, and a live group with no existing
        mapping is never auto-assigned - choosing its Wawi counterpart stays the
        user decision owned by the customer-groups endpoint, which lists it as
        an unassigned candidate. Distinct from ResyncConnector, which clears the
        Wawi-to-Connector shop mappings so the next sync re-imports everything -
        this command imports nothing item-level and only refreshes the metadata
        mirror. Concurrency with a running Abgleich is uncritical: both paths
        upsert the same semantics from the same live source, so the outcome is
        last-writer-wins. Caveat inherited from the live pull: each global-data
        collection is fetched with the connector protocol's default page limit
        of 50 items, and the mirror write is a full-state replacement, so a
        connector reporting more than 50 entries in a collection has the excess
        assignments removed.
      operationId: Connector_RefreshConnector
      parameters:
        - name: salesChannelId
          in: path
          required: true
          description: >-
            Sales channel id of the Connector account whose metadata is
            re-mirrored.
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          description: >-
            Optional, client-generated key for deduplicating repeated write
            requests. A repeated request with the same key returns the
            originally recorded result instead of executing the effect again.
          schema:
            type: string
            maxLength: 255
            minLength: 1
        - name: x-tenant-id
          in: header
          required: true
          schema:
            type: string
            format: uuid
          description: The tenant ID for the target ERP instance.
      responses:
        '200':
          description: >-
            Declares the response for a completed refresh: the connector-driven
            metadata has been re-mirrored and the full object is returned.
            Deliberately the same model as CreateConnector rather than an id or
            a 204: the point of a refresh is to show the caller what the
            endpoint now reports, which only the full object carries. The
            connector-driven sections (Languages, Currencies, Features,
            TaxRates, ServerInfo) are sourced from the live handshake the call
            performs and are never accepted as request input. SalesChannelId is
            always populated here - unlike CreateConnector's simulate path, this
            command requires an account that already exists. The response
            reflects what was persisted and the live snapshot behind it; it does
            not depend on the outcome of the acknowledgement push that follows,
            which is best-effort by design.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.Connector
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '404':
          description: >-
            Invalid or malformed sales channel id, or no Connector-managed sales
            channel exists for the specified id.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '502':
          description: >-
            The Connector endpoint could not be reached, rejected the request,
            or returned an invalid response. Machine-readable error code in the
            problem details, matching CreateConnector:
            connector-authentication-failed (API token rejected),
            connector-unreachable (endpoint could not be reached),
            connector-invalid-response (response could not be parsed). The
            previously persisted mirror state is left untouched - every live
            call happens before any write.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
        '504':
          description: >-
            The connector endpoint did not respond within the request timeout.
            As with 502, nothing was written.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FastEndpoints.ProblemDetails'
      security:
        - oauth2-authorization-code:
            - saleschannels.write
        - oauth2-client-credentials:
            - saleschannels.write
components:
  schemas:
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.Connector:
      type: object
      description: >-
        Full result of the CreateConnector live pipeline: the created (or, for
        ?simulate=true, merely verified) connector account together with its
        complete metadata mirror. Base data and configuration are the persisted
        DB state (null/default-filled from the WPF editor defaults where the
        request omitted them); the connector-driven sections (Languages,
        Currencies, Features, TaxRates, ServerInfo) are always sourced live from
        the endpoint handshake, ISO-identified per the ADR-85 pattern
        established by ConnectorCurrency. Deliberate ADR-4 deviation: ADR-4 asks
        Create commands to return only the created Id, but this command returns
        the full object instead, because ?simulate=true never persists anything
        and therefore has no Id to return - the live
        handshake/taxrate-validation result (Languages, Currencies, Features,
        TaxRates, ServerInfo) is the only useful response for that preview path,
        so the same shape is used for the persisted case too rather than
        modeling two different response contracts. Known limitations: (1)
        RootCategoryId and UseShopOrderNumber are modeled here rather than
        folded into ConnectorAccount/ConnectorConfiguration, because those two
        shared GET models are out of this ticket's scope - reconcile once
        WAWI-91760 lands; (2) synchronisation settings (send/receive/delete per
        object type) are deliberately NOT included here -
        ConnectorSynchronisationEntityType is a 90+ value enum owned by
        JTL.Wawi.Connector.Core.Contracts, and duplicating it into this response
        ahead of WAWI-91760's actual mapping design risked a stale/incorrect
        mirror; use the existing QueryConnectorSynchronisationSettings endpoint
        for now and fold it in here once the orchestration lands.
      additionalProperties: false
      required:
        - isActive
        - isLocked
        - canImport
        - shouldImportItemsAndCategories
        - shouldImportOrdersAndCustomers
        - shouldImportImages
        - canUpload
        - shouldUploadItemComplete
        - shouldUploadItemPriceRestricted
        - shouldUploadItemStockRestricted
        - shouldUploadCustomers
        - shouldUploadImages
        - shouldRefreshExistingItems
        - shouldRefreshCustomers
        - shouldDeleteImagesOnImport
        - shouldWawiCalculateTaxRate
        - shouldWawiCalculateTaxRateForShipping
        - pullCount
        - quickSyncCount
        - sendOnlyAssignedManufacturers
        - useShopOrderNumber
        - languages
        - currencies
        - features
        - taxRates
        - serverInfo
      properties:
        salesChannelId:
          type: string
          description: >-
            Sales channel id of this connector account. Null when the request
            used ?simulate=true - no account was persisted, so no id could be
            assigned.
        name:
          type: string
          description: Name of the connector account.
        url:
          type: string
          description: URL of the connector endpoint.
        isActive:
          type: boolean
          description: Connector account is active.
        isLocked:
          type: boolean
          description: Connector account is locked.
        companyId:
          $ref: '#/components/schemas/JTL.Data.Contracts.Keys.FirmaKey'
          description: ID of the company the connector account belongs to.
        canImport:
          type: boolean
          description: The connector account is allowed to import data from the endpoint.
        shouldImportItemsAndCategories:
          type: boolean
          description: Items and categories are imported.
        shouldImportOrdersAndCustomers:
          type: boolean
          description: Orders and customers are imported.
        shouldImportImages:
          type: boolean
          description: Item images are imported.
        canUpload:
          type: boolean
          description: The connector account is allowed to upload data to the endpoint.
        shouldUploadItemComplete:
          type: boolean
          description: Items are uploaded completely, rather than price/stock-restricted.
        shouldUploadItemPriceRestricted:
          type: boolean
          description: Item uploads are restricted to prices only.
        shouldUploadItemStockRestricted:
          type: boolean
          description: Item uploads are restricted to stock only.
        shouldUploadCustomers:
          type: boolean
          description: Customer data is uploaded.
        shouldUploadImages:
          type: boolean
          description: Images are uploaded.
        shouldRefreshExistingItems:
          type: boolean
          description: Existing items are merged/refreshed rather than only added.
        shouldRefreshCustomers:
          type: boolean
          description: Existing customer data is refreshed.
        shouldDeleteImagesOnImport:
          type: boolean
          description: Images are deleted on import.
        shouldWawiCalculateTaxRate:
          type: boolean
          description: >-
            The Wawi calculates the tax rate for items, rather than taking the
            endpoint-reported one.
        shouldWawiCalculateTaxRateForShipping:
          type: boolean
          description: >-
            The Wawi calculates the tax rate for shipping, rather than taking
            the endpoint-reported one.
        maximumTransferRate:
          type: number
          description: >-
            Maximum transfer rate for uploads, in megabytes, or null if
            unrestricted.
          format: decimal
        imagesCount:
          type: integer
          description: >-
            Maximum number of images transferred per run, or null if
            unrestricted.
          format: int32
        entityCount:
          type: integer
          description: >-
            Maximum number of entities transferred per run, or null if
            unrestricted.
          format: int32
        pullCount:
          type: integer
          description: Maximum pull count per sync run.
          format: int32
        quickSyncCount:
          type: integer
          description: Maximum quick-sync count per sync run.
          format: int32
        sendOnlyAssignedManufacturers:
          type: boolean
          description: >-
            Manufacturer data sent to the endpoint is filtered to only assigned
            manufacturers.
        shippingCountryIso:
          type: string
          description: >-
            The shipping/departure country as an ISO 3166-1 alpha-2 country
            code, or null if not set. Canonical form is UPPERCASE (ADR-85);
            matching is case-insensitive.
        dummyCategoryId:
          $ref: '#/components/schemas/JTL.Data.Contracts.Keys.KategorieKey'
          description: >-
            Fallback category for uncategorized imported items, or null if not
            set.
        rootCategoryId:
          $ref: '#/components/schemas/JTL.Data.Contracts.Keys.KategorieKey'
          description: Root category for imported items, or null if not set.
        useShopOrderNumber:
          type: boolean
          description: >-
            The shop-assigned order number is used instead of the Wawi-generated
            one.
        languages:
          type: array
          description: >-
            Languages available in the Wawi, annotated with the
            assignment/default state reported by the connector endpoint's live
            handshake.
          items:
            $ref: >-
              #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorLanguage
        currencies:
          type: array
          description: >-
            ISO 4217 currencies known to the Wawi, annotated with the
            assignment/default state reported by the connector endpoint's live
            handshake.
          items:
            $ref: >-
              #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorCurrency
        features:
          type: array
          description: >-
            Every known connector feature, each marked whether the connector
            endpoint reported it as enabled.
          items:
            $ref: >-
              #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorFeatureListItem
        taxRates:
          type: array
          description: >-
            Taxrates reported by the connector endpoint's live handshake, each
            merged with the internal Wawi taxrate it was validated against.
          items:
            $ref: >-
              #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorTaxRate
        serverInfo:
          $ref: >-
            #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorServerInfo
          description: >-
            Live-only metadata about the connected endpoint's platform and
            protocol version, as reported by its handshake.
    FastEndpoints.ProblemDetails:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          default: https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1
        title:
          type: string
          default: One or more validation errors occurred.
        status:
          type: integer
          format: int32
          default: 400
        instance:
          type: string
          default: /api/route
        traceId:
          type: string
          default: 0HMPNHL0JHL76:00000001
        detail:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/FastEndpoints.ProblemDetails_Error'
    JTL.Data.Contracts.Keys.FirmaKey:
      type: string
      description: Represents a key for identifying a firm within the application.
      format: uuid
      example: b45f6432-2462-4c6f-b00f-1d9d01000000
      additionalProperties: false
    JTL.Data.Contracts.Keys.KategorieKey:
      type: string
      format: uuid
      example: b45f6432-2462-4c6f-b00f-1d9d01000000
      additionalProperties: false
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorLanguage:
      type: object
      description: >-
        A single language available in the Wawi in the context of a connector
        account.
      additionalProperties: false
      required:
        - iso
        - isAssigned
        - isDefault
      properties:
        iso:
          type: string
          description: >-
            ISO 639-1 code of the language (lowercase). Identifies the language
            (ADR-85) - languages are standardized reference data, so no separate
            surrogate id is exposed.
        nameGerman:
          type: string
          description: German name of the language.
        nameEnglish:
          type: string
          description: English name of the language.
        isAssigned:
          type: boolean
          description: Language is currently assigned to the connector account.
        isDefault:
          type: boolean
          description: Language is the connector account's default language.
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorCurrency:
      type: object
      description: >-
        A single ISO 4217 currency known to the Wawi, in the context of a
        connector account, including its assignment/default state.
      additionalProperties: false
      required:
        - currencyCode
        - codeSource
        - isAssigned
        - isDefault
      properties:
        currencyCode:
          type: string
          description: >-
            Code of the currency in ISO 4217 alpha-3 form, uppercase. This is
            the identifier of the resource (ADR-85) - the internal surrogate key
            (kWaehrung) is not exposed. Only the FORM of the code is validated;
            membership in the ISO 4217 register is not verified, because the
            Wawi ships no register. Responses always carry the canonical form
            (uppercase). Currencies whose code does not match that form are not
            exposed by this endpoint; the x-prefixed private-use namespace is
            reserved for them.
        codeSource:
          $ref: >-
            #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.CurrencyCodeSource
          description: >-
            Source of CurrencyCode - standardized ISO 4217 code or
            tenant-defined code. Always Iso for now, because only codes in ISO
            4217 alpha-3 form are returned; a tenant-defined code that happens
            to have that form is therefore reported as Iso. Distinguishing the
            two requires the code registry from the pending ADR-85
            implementation tickets.
        name:
          type: string
          description: Name of the currency.
        isAssigned:
          type: boolean
          description: Currency is assigned to the connector account.
        isDefault:
          type: boolean
          description: Currency is the connector account's default currency.
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorFeatureListItem:
      type: object
      description: >-
        A single connector feature together with its configuration state for one
        connector account. The list covers every known feature, so a disabled
        feature is reported as well rather than being omitted.
      additionalProperties: false
      required:
        - feature
        - isEnabled
      properties:
        feature:
          $ref: >-
            #/components/schemas/JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorFeature
          description: >-
            The connector feature this entry describes. Always a single feature,
            never a combination.
        isEnabled:
          type: boolean
          description: >-
            The feature is enabled for the connector account. A connector
            account without any persisted feature configuration reports every
            feature as false.
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorTaxRate:
      type: object
      description: >-
        A single taxrate reported by the Connector endpoint's live handshake,
        merged with the internal Wawi taxrate it was validated against.
        Connector-driven, response-only - never accepted as request input. Every
        entry is guaranteed to carry a resolved TaxRateId, because
        CreateConnector rejects the request with 400 if any endpoint-reported
        taxrate does not exist in the chosen company's tSteuersatz.
      additionalProperties: false
      required:
        - rate
        - taxRateId
      properties:
        rate:
          type: number
          description: The tax rate percentage as reported by the endpoint.
          format: decimal
        taxRateId:
          $ref: '#/components/schemas/JTL.Data.Contracts.Keys.SteuersatzKey'
          description: >-
            ID of the internal Wawi taxrate (dbo.tSteuersatz) this endpoint rate
            was validated against.
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorServerInfo:
      type: object
      description: >-
        Live-only, non-persisted metadata about the connected endpoint's
        software, reported by its handshake (init call). Never part of a
        DB-backed read - only present on a live pipeline result such as
        CreateConnector.
      additionalProperties: false
      required:
        - isOldConnector
      properties:
        platformName:
          type: string
          description: Name of the endpoint's platform.
        platformVersion:
          type: string
          description: Version of the endpoint's platform.
        protocolVersion:
          type: string
          description: Version of the Connector RPC protocol spoken by the endpoint.
        endpointVersion:
          type: string
          description: Version of the JTL-Connector endpoint plugin itself.
        isOldConnector:
          type: boolean
          description: The endpoint reported a legacy Connector protocol generation.
    FastEndpoints.ProblemDetails_Error:
      type: object
      additionalProperties: false
      properties:
        name:
          type: string
          default: Error or field name
        reason:
          type: string
          default: Error reason
        code:
          type: string
        severity:
          type: string
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.CurrencyCodeSource:
      type: integer
      description: 0 = Iso, 1 = UserAssigned
      format: int32
      x-enumNames:
        - Iso
        - UserAssigned
      enum:
        - 0
        - 1
    JTL.Wawi.Verkaufskanaele.PublicApi.DataTransferObjects.V2.Connector.ConnectorFeature:
      type: integer
      description: >-
        1 = ChildVariationsFirst, 2 = PartialPaymentPossible, 4 =
        OrderUpdatePossible, 8 = OrderReactivationPossible, 16 =
        SupportsArticleImages, 32 = SupportsCategoryImages, 64 =
        SupportsManufacturerImages, 128 = SupportsAttributeImages, 256 =
        SupportsAttributeValueImages, 512 = SupportsConfigGroupImages, 1024 =
        SupportsVariationImages, 2048 = SupportsNormalVariations, 4096 =
        SupportsVariationCombinations, 16384 = RequiresCompletionCall, 32768 =
        SupportsFreeFields, 65536 = RequiresRootCategory, 131072 =
        AttributesMultilingual, 262144 = RespectArticleActiveFlag, 524288 =
        IgnoreStatistics, 1048576 = SendAllAcks
      format: int32
      x-enumNames:
        - ChildVariationsFirst
        - PartialPaymentPossible
        - OrderUpdatePossible
        - OrderReactivationPossible
        - SupportsArticleImages
        - SupportsCategoryImages
        - SupportsManufacturerImages
        - SupportsAttributeImages
        - SupportsAttributeValueImages
        - SupportsConfigGroupImages
        - SupportsVariationImages
        - SupportsNormalVariations
        - SupportsVariationCombinations
        - RequiresCompletionCall
        - SupportsFreeFields
        - RequiresRootCategory
        - AttributesMultilingual
        - RespectArticleActiveFlag
        - IgnoreStatistics
        - SendAllAcks
      enum:
        - 1
        - 2
        - 4
        - 8
        - 16
        - 32
        - 64
        - 128
        - 256
        - 512
        - 1024
        - 2048
        - 4096
        - 16384
        - 32768
        - 65536
        - 131072
        - 262144
        - 524288
        - 1048576
    JTL.Data.Contracts.Keys.SteuersatzKey:
      type: string
      format: uuid
      example: b45f6432-2462-4c6f-b00f-1d9d01000000
      additionalProperties: false
  securitySchemes:
    oauth2-authorization-code:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.jtl-cloud.com/oauth2/auth
          tokenUrl: https://auth.jtl-cloud.com/oauth2/token
          scopes:
            inventories.write: Grants permission to modify stock levels.
            inventory.read: Grants permission to read stock levels.
            inventory.write: Grants permission to modify stock levels.
            items.read: Grants permission to read item data.
            items.write: Grants permission to create and modify item data.
            procurements.read: Beschaffung lesen
            saleschannels.read: Grants permission to read sales channels.
            saleschannels.write: Grants permission to create and modify sales channels.
            all.read: Allows the application to read all data.
            customers.read: Grants permission to read customer data.
            customers.write: Grants permission to create and modify customer data.
            customfields.read: Grants permission to read custom fields.
            customfields.write: Grants permission to create and modify custom fields.
            deliveries.read: Grants permission to read deliveries.
            deliveries.write: Grants permission to create and modify deliveries.
            deliverynotes.print: Grants permission to print and output delivery notes.
            deliverynotes.read: Grants permission to read delivery notes.
            deliverynotes.write: Grants permission to create and modify delivery notes.
            extensibility.integration: >-
              Grants permission to manage extensions and integrations of the
              JTL-Wawi.
            inventories.read: Grants permission to read stock levels.
            invoices.read: Grants permission to read invoices.
            invoices.write: Grants permission to create and modify invoices.
            labels.read: Grants permission to read labels.
            labels.write: Grants permission to create and modify labels.
            masterdata.read: >-
              Read master data such as shipping methods, payment methods, color
              codes and tax classes.
            orders.read: Grants permission to read orders.
            picklists.read: Grants permission to read pick lists.
            picklists.write: Grants permission to create and modify pick lists.
            returns.read: Grants permission to read returns.
            returns.write: Grants permission to create and modify returns.
            salesinvoicecorrections.read: Grants permission to read invoice corrections.
            salesinvoicecorrections.write: Grants permission to create and modify invoice corrections.
            salesorders.print: Grants permission to print and output sales orders.
            salesorders.read: Grants permission to read sales orders.
            salesorders.write: Grants permission to create and modify sales orders.
            system.config.read: Grants permission to read the system configuration.
            system.config.write: Grants permission to modify the system configuration.
            taxes.read: Grants permission to read tax data.
            warehouse.read: Grants permission to read warehouse data.
            wawiapp.all: Grants access to Wawi app related operations.
            currencies.read: Grants read access to currencies.
            jera.read: Grants read access to JERA internal endpoints.
            paymentmethods.read: Grants read access to payment methods.
            payments.read: Ermöglicht den Lesezugriff auf Zahlungen.
            payments.write: Ermöglicht den Schreibzugriff auf Zahlungen.
            salesinvoicecorrections.print: Grants permission to print and output invoice corrections.
            salesinvoices.print: Grants permission to print and output sales invoices.
            salesinvoices.read: Grants read access to sales invoices.
            salesinvoices.write: Grants write access to sales invoices.
            salesquotations.print: Grants permission to print and output sales quotations.
            salesquotations.read: Grants read access to sales quotations.
            salesquotations.write: Grants write access to sales quotations.
            system.worker.read: Worker-Synchronisationen lesen
            system.worker.write: Worker-Synchronisationen schreiben
            resources.read: Grants permission to read resource management data.
            resources.write: Grants permission to create and modify resource management data.
            pps.read: Grants permission to read production data.
            pps.write: Grants permission to create and modify production data.
            channels.read: Grants permission to read marketplace channels.
            invoices.print: >-
              Grants permission to print marketplace external documents
              (invoices, credit notes).
            marketplaceoffers.read: Grants permission to read marketplace offers and offer failures.
            marketplaceoffers.write: Grants permission to create and modify marketplace offers.
            notifications.read: Grants permission to read marketplace notifications.
            orders.write: >-
              Grants permission to modify marketplace order data (exclude/reset
              cancellation, payment, return and shipping uploads).
            masterdata.write: Write master data
            taxes.write: Grants permission to create and modify tax data.
            application.runas: >-
              Allows the application to execute requests on behalf of another
              user.
    oauth2-client-credentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.jtl-cloud.com/oauth2/token
          scopes:
            inventories.write: Grants permission to modify stock levels.
            inventory.read: Grants permission to read stock levels.
            inventory.write: Grants permission to modify stock levels.
            items.read: Grants permission to read item data.
            items.write: Grants permission to create and modify item data.
            procurements.read: Beschaffung lesen
            saleschannels.read: Grants permission to read sales channels.
            saleschannels.write: Grants permission to create and modify sales channels.
            all.read: Allows the application to read all data.
            customers.read: Grants permission to read customer data.
            customers.write: Grants permission to create and modify customer data.
            customfields.read: Grants permission to read custom fields.
            customfields.write: Grants permission to create and modify custom fields.
            deliveries.read: Grants permission to read deliveries.
            deliveries.write: Grants permission to create and modify deliveries.
            deliverynotes.print: Grants permission to print and output delivery notes.
            deliverynotes.read: Grants permission to read delivery notes.
            deliverynotes.write: Grants permission to create and modify delivery notes.
            extensibility.integration: >-
              Grants permission to manage extensions and integrations of the
              JTL-Wawi.
            inventories.read: Grants permission to read stock levels.
            invoices.read: Grants permission to read invoices.
            invoices.write: Grants permission to create and modify invoices.
            labels.read: Grants permission to read labels.
            labels.write: Grants permission to create and modify labels.
            masterdata.read: >-
              Read master data such as shipping methods, payment methods, color
              codes and tax classes.
            orders.read: Grants permission to read orders.
            picklists.read: Grants permission to read pick lists.
            picklists.write: Grants permission to create and modify pick lists.
            returns.read: Grants permission to read returns.
            returns.write: Grants permission to create and modify returns.
            salesinvoicecorrections.read: Grants permission to read invoice corrections.
            salesinvoicecorrections.write: Grants permission to create and modify invoice corrections.
            salesorders.print: Grants permission to print and output sales orders.
            salesorders.read: Grants permission to read sales orders.
            salesorders.write: Grants permission to create and modify sales orders.
            system.config.read: Grants permission to read the system configuration.
            system.config.write: Grants permission to modify the system configuration.
            taxes.read: Grants permission to read tax data.
            warehouse.read: Grants permission to read warehouse data.
            wawiapp.all: Grants access to Wawi app related operations.
            currencies.read: Grants read access to currencies.
            jera.read: Grants read access to JERA internal endpoints.
            paymentmethods.read: Grants read access to payment methods.
            payments.read: Ermöglicht den Lesezugriff auf Zahlungen.
            payments.write: Ermöglicht den Schreibzugriff auf Zahlungen.
            salesinvoicecorrections.print: Grants permission to print and output invoice corrections.
            salesinvoices.print: Grants permission to print and output sales invoices.
            salesinvoices.read: Grants read access to sales invoices.
            salesinvoices.write: Grants write access to sales invoices.
            salesquotations.print: Grants permission to print and output sales quotations.
            salesquotations.read: Grants read access to sales quotations.
            salesquotations.write: Grants write access to sales quotations.
            system.worker.read: Worker-Synchronisationen lesen
            system.worker.write: Worker-Synchronisationen schreiben
            resources.read: Grants permission to read resource management data.
            resources.write: Grants permission to create and modify resource management data.
            pps.read: Grants permission to read production data.
            pps.write: Grants permission to create and modify production data.
            channels.read: Grants permission to read marketplace channels.
            invoices.print: >-
              Grants permission to print marketplace external documents
              (invoices, credit notes).
            marketplaceoffers.read: Grants permission to read marketplace offers and offer failures.
            marketplaceoffers.write: Grants permission to create and modify marketplace offers.
            notifications.read: Grants permission to read marketplace notifications.
            orders.write: >-
              Grants permission to modify marketplace order data (exclude/reset
              cancellation, payment, return and shipping uploads).
            masterdata.write: Write master data
            taxes.write: Grants permission to create and modify tax data.
            application.runas: >-
              Allows the application to execute requests on behalf of another
              user.

````