openapi: 3.0.1
info:
  title: Norce Commerce Metadata v1.1 service
  description: >-
    The Metadata namespace has Entities and Operations concerned with the
    Application and similar context. It contains the Application entity, Stores
    and other data for lookups.
  version: '1.1'
servers:
  - url: https://{slug}.api-se.playground.norce.tech/commerce
    description: Playground
    variables:
      slug:
        default: customer-slug
        description: Replace with your slug.
  - url: https://{slug}.api-se.stage.norce.tech/commerce
    description: Stage
    variables:
      slug:
        default: customer-slug
        description: Replace with your slug.
  - url: https://{slug}.api-se.norce.tech/commerce
    description: Production
    variables:
      slug:
        default: customer-slug
        description: Replace with your slug.
security:
  - Bearer: []
    ApplicationId: []
tags:
  - name: Flags
    description: >-
      Contains endpoints for viewing flags on the application. Any flags except
      product flags.
  - name: InfoTypes
    description: >-
      Contains endpoints for viewing metadata for extended fields, specifically
      for Stores.
  - name: Location
    description: >-
      Contains endpoints for looking up location information from the
      application.
  - name: Application
    description: Contains endpoints for viewing metadata for application configurations.
  - name: Stores
    description: Contains endpoints for viewing Store information and its metadata.
paths:
  /metadata/1.1/ListApplicationFlagGroups:
    get:
      tags:
        - Flags
      summary: List application flag groups
      description: >-
        Lists the flag groups available for this application. Flag group can be
        used when listing flags to narrow it down to a specific group.
      parameters:
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
  /metadata/1.1/ListApplicationFlags:
    get:
      tags:
        - Flags
      summary: List application flags
      description: >-
        Lists the flags available for this application. Flag group id can be
        used when listing flags to narrow it down to a specific flag. See
        ListApplicationFlagGroups for available groups.
      parameters:
        - name: flagGroupId
          in: query
          description: >-
            (Optional) Specifies an optional flag group to select flags from.
            All flags are retrieved if flagGroupId is not specified.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
  /metadata/1.1/ListInfoTypes:
    get:
      tags:
        - InfoTypes
      summary: List info types
      description: Reference list of InfoType values.
      parameters:
        - name: groupId
          in: query
          description: >-
            (Optional) Specifies the groupId of values to retrieve. Only
            CustomerInfo(1) and DivisionInfo(4) are supported.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdNameDescription'
  /metadata/1.1/GetLocationInfoByZipCode:
    get:
      tags:
        - Location
      summary: Get location info by zip code
      description: >-
        Gets the LocationInfo for a given zip code. The mapping of zip codes to
        Locations is done in the Norce Admin if not implemented through
        integration. Returns null if the LocationInfo does not exist.
      parameters:
        - name: countryCode
          in: query
          description: The ISO 3166-1 alpha-2 is used. SE for Sweden.
          style: form
          schema:
            type: string
        - name: zip
          in: query
          description: The zip code to get a location for.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationInfo'
  /metadata/1.1/GetApplication:
    get:
      tags:
        - Application
      summary: Get application data
      description: >-
        GetApplication gets the current application data based on the provided
        Oauth2 credentials.
      parameters:
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
  /metadata/1.1/ListStoreInfoTypes:
    get:
      tags:
        - Stores
      summary: List store info types
      description: Lists the info types that can be set on the Store.Info property.
      parameters:
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
  /metadata/1.1/GetStoreItem:
    get:
      tags:
        - Stores
      summary: Get store item
      description: >-
        Gets a StoreItem by Id. Should be used to display details about a
        StoreItem or when just data for a single StoreItem is needed. Returns
        null if the StoreItem does not exist.
      parameters:
        - name: id
          in: query
          description: The internal Id of the Store to fetch.
          style: form
          schema:
            type: integer
            format: int32
        - name: partNo
          in: query
          description: >-
            (Optional) If supplied, the returned StoreItem will have information
            about onHand.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreItem'
  /metadata/1.1/GetStoreItemByUniqueName:
    get:
      tags:
        - Stores
      summary: Get store item by unique name
      description: >-
        Gets a StoreItem by its unique url name. Should be used to display
        details about a StoreItem or when just data for a single StoreItem is
        needed. Returns null if the StoreItem does not exist.
      parameters:
        - name: uniqueName
          in: query
          description: The unique name of the Store to fetch.
          style: form
          schema:
            type: string
        - name: partNo
          in: query
          description: >-
            (Optional) If supplied, the returned StoreItem will have information
            about onHand.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreItem'
  /metadata/1.1/GetStoreItemByCountryAndZipCode:
    get:
      tags:
        - Stores
      summary: Get store item by country and zipcode
      description: >-
        Gets a StoreItem by country and zip code. Should be used to display
        details about a StoreItem or when just data for a single StoreItem is
        needed. Returns null if the StoreItem does not exist.
      parameters:
        - name: zipCode
          in: query
          description: >-
            The zip code of the end user. The StoreItem is resolved by looking
            at deliveryMethod locations as set up in Norce Admin.
          style: form
          schema:
            type: integer
            format: int32
        - name: countryId
          in: query
          description: >-
            (Optional) Specifies in which countryId. If none is supplied, value
            is resolved from Application default. Valid countryIds can be found
            in Application.Countries.
          style: form
          schema:
            type: string
        - name: partNo
          in: query
          description: >-
            (Optional) If supplied, the returned StoreItem will have information
            about onHand.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreItem'
  /metadata/1.1/ListStoreItems:
    get:
      tags:
        - Stores
      summary: List store items
      description: Lists StoreItems as a PagedList.
      parameters:
        - name: partNo
          in: query
          description: >-
            (Optional) If supplied, the returned StoreItem will have information
            about onHand.
          style: form
          schema:
            type: string
        - name: longitude
          in: query
          description: >-
            (Optional) Longitude for current position. StoreItems will calculate
            the Distance if supplied together with latitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: latitude
          in: query
          description: >-
            (Optional) Latitude for current position. StoreItems will calculate
            the Distance if supplied together with longitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            (Optional) Page numbers start with 1. Default is 1. If you specify a
            pageNo outside the range of items, an empty list will be returned.
            PageSize is mandatory for pageNo to work.
          style: form
          schema:
            type: string
        - name: pageSize
          in: query
          description: >-
            (Optional) Number of items to display per page. Mandatory if using
            pageNo.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreItemPagedList'
  /metadata/1.1/ListStoreInfo:
    get:
      tags:
        - Stores
      summary: List store info
      description: Lists StoreInfo as a PagedList. This will list info for all Stores.
      parameters:
        - name: pageNo
          in: query
          description: >-
            (Optional) Page numbers start with 1. Default is 1. If you specify a
            pageNo outside the range of items, an empty list will be returned.
            PageSize is mandatory for pageNo to work.
          style: form
          schema:
            type: string
        - name: pageSize
          in: query
          description: >-
            (Optional) Number of items to display per page. Mandatory if using
            pageNo.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreInfoPagedList'
  /metadata/1.1/GetStore:
    get:
      tags:
        - Stores
      summary: Get store
      description: >-
        Gets a Store by Id. Should be used to display details about a Store or
        when just data for a single Store is needed. Returns null if the Store
        does not exist.
      parameters:
        - name: id
          in: query
          description: The internal Id of the Store to fetch.
          style: form
          schema:
            type: integer
            format: int32
        - name: longitude
          in: query
          description: >-
            (Optional) Longitude for current position. Store will calculate the
            Distance if supplied together with latitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: latitude
          in: query
          description: >-
            (Optional) Latitude for current position. Store will calculate the
            Distance if supplied together with longitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
  /metadata/1.1/GetStoreByUniqueName:
    get:
      tags:
        - Stores
      summary: Get store by unique name
      description: >-
        Gets a Store by its unique url name. Should be used to display details
        about a Store or when just data for a single Store is needed. Returns
        null if the Store does not exist.
      parameters:
        - name: uniqueName
          in: query
          description: The unique name of the Store to fetch.
          style: form
          schema:
            type: string
        - name: longitude
          in: query
          description: >-
            (Optional) Longitude for current position. Store will calculate the
            Distance if supplied together with latitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: latitude
          in: query
          description: >-
            (Optional) Latitude for current position. Store will calculate the
            Distance if supplied together with longitude. Format: decimal.
          style: form
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
  /metadata/1.1/ListStores2:
    get:
      tags:
        - Stores
      summary: List stores (v2)
      description: >-
        Lists all stores. Any distance calculations should be made by the client
        application for caching reasons or the Distance field will be null.
      parameters:
        - name: cultureCode
          in: query
          description: >-
            (Optional) Specifies in which language to display culture specific
            information. If none is supplied, value is resolved from
            Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Store'
                description: A list of Stores.
  /metadata/1.1/UpdateDivisionInfo:
    post:
      tags:
        - Stores
      summary: Update division information
      description: Updates the given info for a division.
      parameters:
        - name: id
          in: query
          description: The internal id of the division.
          style: form
          schema:
            type: integer
            format: int32
        - name: typeId
          in: query
          description: The id of the info type. For reference, use ListInfoTypes.
          style: form
          schema:
            type: integer
            format: int32
        - name: value
          in: query
          description: The value to set.
          style: form
          schema:
            type: string
        - name: updatedBy
          in: query
          description: >-
            (Optional) The accountId of the user making the update. If none is
            supplied, value is resolved from Application.
          style: form
          schema:
            type: string
      responses:
        '200':
          description: Success
components:
  schemas:
    Application:
      type: object
      properties:
        Id:
          type: integer
          description: The system wide unique internal Norce Id for this Application.
          format: int32
          nullable: true
        ParentId:
          type: integer
          description: >-
            Id of the parent application, if any. Will be the same as Id if none
            exists. Applications with the same parentId share products and
            customers. Some content and navigation can differ.
          format: int32
          nullable: true
        Key:
          type: string
          description: The system wide unique Key for this Application.
          format: uuid
          nullable: true
        Name:
          type: string
          description: The Name of this Application.
          nullable: true
        Url:
          type: string
          description: The Url to the Application.
          nullable: true
        SenderEmailAddress:
          type: string
          description: >-
            The sender e-mail address for all external communication and
            notifications if Norce email services are used.
          nullable: true
        Client:
          allOf:
            - $ref: '#/components/schemas/Client'
          nullable: true
        Cultures:
          allOf:
            - $ref: '#/components/schemas/Cultures'
          nullable: true
        Currencies:
          allOf:
            - $ref: '#/components/schemas/Currencies'
          nullable: true
        Pricelists:
          allOf:
            - $ref: '#/components/schemas/Pricelists'
          nullable: true
        SalesAreas:
          allOf:
            - $ref: '#/components/schemas/SalesAreas'
          nullable: true
        Roles:
          allOf:
            - $ref: '#/components/schemas/Roles'
          nullable: true
        Countries:
          allOf:
            - $ref: '#/components/schemas/Countries'
          nullable: true
        Authorizations:
          type: array
          items:
            $ref: '#/components/schemas/IdValue'
          description: >-
            A list of authorizations available for this application. Can be used
            when creating customer accounts.
          nullable: true
      additionalProperties: false
      description: >-
        The Application entity contains data specific to the current
        application. An Application belongs to a Client and one Client can have
        multiple Applications. A common usage is that an Application maps to a
        market or a domain such as .se, .com and such.
    Client:
      type: object
      properties:
        Id:
          type: integer
          description: The system wide unique internal Norce Id for the Client.
          format: int32
          nullable: true
        Key:
          type: string
          description: The system wide unique Key for the Client.
          format: uuid
          nullable: true
        Name:
          type: string
          description: The Name of the Client.
          nullable: true
      additionalProperties: false
      description: >-
        The Client entity contains data specific to the current client. A Client
        can have multiple Applications and represents a customer to Norce.
    Countries:
      type: object
      properties:
        List:
          type: array
          items:
            $ref: '#/components/schemas/Country'
          description: A list of countries.
          nullable: true
        Default:
          allOf:
            - $ref: '#/components/schemas/Country'
          nullable: true
      additionalProperties: false
      description: >-
        A list of Countries and a Default. Used in Application. Available
        Countries can be used to populate drop-down lists with countries when
        the end user enters addresses.
    Country:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Norce Id of the country.
          format: int32
          nullable: true
        Name:
          type: string
          description: The name of the country.
          nullable: true
        Code:
          type: string
          description: >-
            The Code of the country. The ISO 3166-1 alpha-2 is used. SE for
            Sweden.
          nullable: true
      additionalProperties: false
      description: The Country entity contains info about a country.
    Culture:
      type: object
      properties:
        Code:
          type: string
          description: >-
            The Code of the culture. Two letter or five letter codes. sv-SE for
            swedish.
          nullable: true
        Name:
          type: string
          description: The name of the culture.
          nullable: true
      additionalProperties: false
      description: >-
        The Culture entity contains info about a culture. It defines language
        and formats.
    Cultures:
      type: object
      properties:
        List:
          type: array
          items:
            $ref: '#/components/schemas/Culture'
          description: A list of cultures.
          nullable: true
        Default:
          allOf:
            - $ref: '#/components/schemas/Culture'
          nullable: true
      additionalProperties: false
      description: >-
        A list of Cultures and a Default. Used in Application. Available
        Cultures can be used to let the end user select different languages
        within an Application.
    Currencies:
      type: object
      properties:
        List:
          type: array
          items:
            $ref: '#/components/schemas/Currency'
          description: A list of currencies.
          nullable: true
        Default:
          allOf:
            - $ref: '#/components/schemas/Currency'
          nullable: true
      additionalProperties: false
      description: >-
        A list of Currencies and a Default. Used in Application. Available
        Currencies can be used to let the end user select different currencies
        within an Application.
    Currency:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Norce Id of the currency.
          format: int32
          nullable: true
        Name:
          type: string
          description: The name of the currency.
          nullable: true
        Code:
          type: string
          description: The Code of the currency. ISO 4217 is used. SEK for Swedish kronor.
          nullable: true
        Prefix:
          type: string
          description: The Prefix sign/code if available.
          nullable: true
        Suffix:
          type: string
          description: The suffix sign/code if available.
          nullable: true
      additionalProperties: false
      description: The Currency entity contains info about a currency.
    IdNameDescription:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Entity.
          format: int32
          nullable: true
        Name:
          type: string
          description: The Name of the Entity.
          nullable: true
        Description:
          type: string
          description: The Description of the Entity.
          nullable: true
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: uuid
          nullable: true
        Code:
          type: string
          description: The Code of the Entity.
          nullable: true
      additionalProperties: false
    IdValue:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            The internal Id of the Entity. This Id might be different in
            different tiers such as Stage and Production. Use Code if hard
            coding is required.
          format: int32
          nullable: true
        Value:
          type: string
          description: The Value of the Entity.
          nullable: true
        Code:
          type: string
          description: >-
            The Code of the Entity, if existing. Use this value when hard coding
            is required.
          nullable: true
      additionalProperties: false
      description: >-
        An Entity used where Id and Value is needed. Mostly used for lookup
        data.
    Location:
      type: object
      properties:
        StoreId:
          type: integer
          description: This is the internal Norce ID.
          format: int32
          nullable: true
        StoreCode:
          type: string
          description: This is a code used to map Store from an external system.
          nullable: true
        WarehouseId:
          type: integer
          description: This is the internal Norce ID.
          format: int32
          nullable: true
        LocationIdId:
          type: integer
          description: This is the internal Norce ID.
          format: int32
          nullable: true
      additionalProperties: false
      description: >-
        This entity defines a location. If StoreId and StoreCode are both null,
        then WarehouseId and LocationId are not null and vice versa. All
        properties can have values if the Store is fetched from Norce Commerce.
        The information can be used when specifying Store/Warehouse/Location in
        some API-methods.
    LocationInfo:
      type: object
      properties:
        CountryCode:
          type: string
          description: This is country code for the location.
          nullable: true
        ZipCode:
          type: string
          description: This is zip code for the location.
          nullable: true
        Delivery:
          allOf:
            - $ref: '#/components/schemas/Location'
          nullable: true
        Pickup:
          allOf:
            - $ref: '#/components/schemas/Location'
          nullable: true
        Payment:
          allOf:
            - $ref: '#/components/schemas/Location'
          nullable: true
      additionalProperties: false
      description: >-
        LocationInfo aggregates Locations for a zipcode in a country. Available
        locations are Delivery, Pickup and Payment.
    OnHand:
      type: object
      properties:
        Value:
          type: number
          description: >-
            The aggregated value from all warehouses and locations in the
            current context (Web, Supplier or Store).
          format: decimal
          nullable: true
        IncomingValue:
          type: number
          description: The incoming quantity on the next delivery.
          format: decimal
          nullable: true
        NextDeliveryDate:
          type: string
          description: The next delivery data from supplier to client warehouse.
          format: date-time
          nullable: true
        LeadtimeDayCount:
          type: integer
          description: The number of days it takes to ship from the supplier.
          format: int32
          nullable: true
        LastChecked:
          type: string
          description: When onHand info was last checked. Null if never.
          format: date-time
          nullable: true
        IsActive:
          type: boolean
          description: Indicate if the product is stocked in a store.
          nullable: true
        IsReturnable:
          type: boolean
          description: Indicate if the product is returnable in a store.
          nullable: true
        Info:
          type: array
          items:
            $ref: '#/components/schemas/IdValue'
          description: >-
            List of IdValues for the OnHand data for this sku warehouse location
            combination. This will always be null unless fetched with any of the
            ProductOnHand methods.
          nullable: true
      additionalProperties: false
      description: >-
        Information about OnHand for a given SKU. There are generally three
        different types of OnHand in Norce. One for the Web, one for the chosen
        supplier and one for any specified Store.
    Pricelists:
      type: object
      properties:
        Ids:
          type: array
          items:
            type: integer
            format: int32
          description: A list of priceList ids.
          nullable: true
        Default:
          type: integer
          description: The default priceList id from the list.
          format: int32
          nullable: true
      additionalProperties: false
      description: A list of public PriceListIds and a Default. Used in Application.
    Role:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the role.
          format: int32
          nullable: true
        Name:
          type: string
          description: The Name of the role.
          nullable: true
        Description:
          type: string
          description: The Description of the role.
          nullable: true
      additionalProperties: false
      description: >-
        The Role entity contains info about a Role. Roles can be used to
        authorize users to different actions within an Application.
    Roles:
      type: object
      properties:
        List:
          type: array
          items:
            $ref: '#/components/schemas/Role'
          description: A list of roles.
          nullable: true
        Default:
          allOf:
            - $ref: '#/components/schemas/Role'
          nullable: true
      additionalProperties: false
      description: >-
        A list of Roles and a Default. Used in Application. Available Roles can
        be used in Account. Roles when creating customers with accounts.
    SalesArea:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the SalesArea.
          format: int32
          nullable: true
        Name:
          type: string
          description: The Name of the SalesArea.
          nullable: true
        CurrencyId:
          type: integer
          description: The default id of the Currency for this SalesArea.
          format: int32
          nullable: true
        VatCodeId:
          type: integer
          description: The default id of the VatCode for this SalesArea.
          format: int32
          nullable: true
      additionalProperties: false
      description: >-
        A SaleArea defines a region within an Application(market) with specific
        default VAT and currency.
    SalesAreas:
      type: object
      properties:
        List:
          type: array
          items:
            $ref: '#/components/schemas/SalesArea'
          description: A list of SalesAreas.
          nullable: true
        Default:
          allOf:
            - $ref: '#/components/schemas/SalesArea'
          nullable: true
      additionalProperties: false
      description: A list of SalesAreas and a Default. Used in Application.
    Store:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Store.
          format: int32
          nullable: true
        Name:
          type: string
          description: The Name of the Store.
          nullable: true
        Address:
          type: string
          description: The Address of the Store.
          nullable: true
        PostalAddress:
          type: string
          description: The PostalAddress of the Store. Zip and City.
          nullable: true
        Phone:
          type: string
          description: The PhoneNumber to the Store.
          nullable: true
        Fax:
          type: string
          description: The FaxNumber to the Store.
          nullable: true
        OpeningWeekdays:
          type: string
          description: Defines the opening hours for the Store during week days.
          nullable: true
        OpeningSaturdays:
          type: string
          description: Defines the opening hours for the Store during on Saturdays.
          nullable: true
        OpeningSundays:
          type: string
          description: Defines the opening hours for the Store during on Sundays.
          nullable: true
        Longitude:
          type: number
          description: >-
            The longitude part of the location of the Store. Can be used to
            calculate distances to the Store.
          format: double
          nullable: true
        Latitude:
          type: number
          description: >-
            The latitude part of the location of the Store. Can be used to
            calculate distances to the Store.
          format: double
          nullable: true
        Distance:
          type: number
          description: >-
            Used when fetching Stores and we have a specified current location
            from which to calculate a distance to the Store.
          format: decimal
          nullable: true
        Key:
          type: string
          description: The system wide unique Key for the Store.
          format: uuid
          nullable: true
        Type:
          type: string
          description: The Type of the Store. Taken from Norce's Division.GroupName.
          nullable: true
        SubType:
          type: string
          description: The SubType of the Store. Taken from Norce's Division.SubGroupName.
          nullable: true
        Info:
          type: array
          items:
            $ref: '#/components/schemas/IdValue'
          description: >-
            Contains a list of id-value pairs specific to the client for this
            Store. Use ApplicationService.ListStoreInfoTypes(string) for id
            lookup.
          nullable: true
        Pricelists:
          allOf:
            - $ref: '#/components/schemas/Pricelists'
          nullable: true
        Code:
          type: string
          description: The external code. Usually the id in the erp system.
          nullable: true
        Description:
          type: string
          description: The Description of the Store.
          nullable: true
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: uuid
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get this entity.
            GetStore and GetStoreByUniqueName gets the same Store.
          nullable: true
      additionalProperties: false
      description: >-
        Represents a Store, Workshop or such. It is called Division in Norce
        Admin. The Store entity is a bit more heavy weight than it's counter
        part StoreItem and should be used to display a detail page for the
        Store.
    StoreInfo:
      type: object
      properties:
        Id:
          type: integer
          description: The internal id of the Store.
          format: int32
          nullable: true
        Info:
          type: array
          items:
            $ref: '#/components/schemas/IdValue'
          description: >-
            Contains a list of id-value pairs specific to the client for this
            store. Use ApplicationService.ListStoreInfoTypes(string) for id
            lookup.
          nullable: true
      additionalProperties: false
      description: StoreInfo contains all info fields for a given Store.
    StoreInfoPagedList:
      type: object
      properties:
        ItemCount:
          type: integer
          description: >-
            The total item count. Can be used to manage paging. This will always
            be the total number of available items, regardless of paging. Use
            PageSize to calculate number of pages.
          format: int32
          nullable: true
        Items:
          type: array
          items:
            $ref: '#/components/schemas/StoreInfo'
          description: >-
            Items contains the current list of StoreInfo for the current page if
            paging is used. Otherwise all items will be in the list.
          nullable: true
      additionalProperties: false
      description: >-
        The StoreInfoPagedList is a PagedList. The Items property contains all
        current items, depending on paging, and the ItemCount the total number
        of items.
    StoreItem:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Store.
          format: int32
          nullable: true
        Name:
          type: string
          description: The Name of the Store.
          nullable: true
        Address:
          type: string
          description: The Address of the Store.
          nullable: true
        PostalAddress:
          type: string
          description: The PostalAddress of the Store. Zip and City.
          nullable: true
        OnHandValue:
          type: number
          format: decimal
          nullable: true
          deprecated: true
        IncomingValue:
          type: number
          format: decimal
          nullable: true
          deprecated: true
        NextDeliveryDate:
          type: string
          format: date-time
          nullable: true
          deprecated: true
        Distance:
          type: number
          description: >-
            Used when fetching Stores and we have a specified current location
            from which to calculate a distance to the Store.
          format: decimal
          nullable: true
        Type:
          type: string
          description: The Type of the Store. Taken from Norce's Division.GroupName.
          nullable: true
        SubType:
          type: string
          description: The SubType of the Store. Taken from Norce's Division.SubGroupName.
          nullable: true
        Code:
          type: string
          description: The external code. Usually the id in the erp system.
          nullable: true
        OnHand:
          allOf:
            - $ref: '#/components/schemas/OnHand'
          nullable: true
        OnHandDemo:
          allOf:
            - $ref: '#/components/schemas/OnHand'
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get this entity.
            GetStoreItem and GetStoreItemByUniqueName gets the same StoreItem.
          nullable: true
      additionalProperties: false
      description: >-
        Represents a Store, Workshop or such. It is called Division in Norce
        Admin. The StoreItem entity is a bit less heavy weight than it's counter
        part Store and is fetched in a list.
    StoreItemPagedList:
      type: object
      properties:
        ItemCount:
          type: integer
          description: >-
            The total item count. Can be used to manage paging. This will always
            be the total number of available items, regardless of paging. Use
            PageSize to calculate number of pages.
          format: int32
          nullable: true
        Items:
          type: array
          items:
            $ref: '#/components/schemas/StoreItem'
          description: >-
            Items contains the current list of StoreItems for the current page
            if paging is used. Otherwise all items will be in the list.
          nullable: true
      additionalProperties: false
      description: >-
        The StoreItemPagedList is a PagedList. The Items property contains all
        current items, depending on paging, and the ItemCount the total number
        of items.
  securitySchemes:
    Bearer:
      type: apiKey
      description: >-
        JWT Authorization header using the Bearer scheme. Example:
        "Authorization: Bearer {token}"
      name: Authorization
      in: header
    ApplicationId:
      type: apiKey
      description: ApplicationId header required for all requests.
      name: ApplicationId
      in: header
