Virto Commerce Store API

Multi store management with individual store settings

Operations 13

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/store-authentication-schemes/{storeId} Get a store's authentication schemes · Store authentication scheme get #
Ask an LLM
“Which sign-in schemes are enabled for a particular store?”
“Can I check what external login methods a storefront allows?”
Tell an agent
Show the authentication schemes for store {storeId}.
List which login methods store {storeId} accepts.
PUT /api/store-authentication-schemes/{storeId} Update a store's authentication schemes · Store authentication scheme update #
Ask an LLM
“How do I turn a login scheme on or off for one store?”
“Can each store have its own set of authentication schemes?”
Tell an agent
Update the authentication schemes for store {storeId}.
Change which sign-in methods store {storeId} allows.
POST /api/stores/search Search stores · Search stores #
Ask an LLM
“Which stores do I have in Virto Commerce and what state are they in?”
“Can I find the store that serves a particular domain?”
Tell an agent
Find the store for domain {domain}.
Search stores matching {keyword}.
GET /api/stores/{id} Get a store by id · Get store by id #
Ask an LLM
“What currencies, languages and catalog is a given store set up with?”
“How do I load the full settings of one store?”
Tell an agent
Get store {id}.
Show store {id} with response group {group}.
PATCH /api/stores/{id} Partially update a store · Partial update for the specified store by id #
Ask an LLM
“Can I change just one field on a store without sending the whole record?”
“Is there a JSON Patch way to edit a store?”
Tell an agent
Patch store {id} with only the fields I changed.
Apply a partial update to store {id}.
GET /api/stores/outer/{outerId} Get a store by its external id · Gets store by outer id #
Ask an LLM
“How can I find a store using the integration key from my ERP?”
“Can I look up a store by outer id instead of its Virto id?”
Tell an agent
Get the store with outer id {outerId}.
Look up store by integration key {outerId}.
POST /api/stores Create a store · Create store #
Ask an LLM
“How do I set up a new storefront with its own catalog and currency?”
“What does a new store need, like languages, email and fulfillment center?”
Tell an agent
Create a new store called {name} using catalog {catalog}.
Set up store {name} with default language {language} and currency {currency}.
PUT /api/stores Update a store · Update store #
Ask an LLM
“How do I change a store's default currency or time zone?”
“Can I replace an existing store's full settings in one call?”
Tell an agent
Update store {id} to use default currency {currency}.
Rename existing store {id} to {name}.
DELETE /api/stores Delete stores · Delete stores #
Ask an LLM
“Can I remove several stores at once?”
“What do I pass to delete a store permanently?”
Tell an agent destructive · confirm first
Delete stores {ids}.
Remove the store {ids} from the platform.
POST /api/stores/send/dynamicnotification Send a custom notification to the store email · Send dynamic notification (contains custom list of properties) to store or… #
Ask an LLM
“How can I email the store administrator a notification with custom fields?”
“Can I send a dynamic notification in a specific language to a store's email?”
Tell an agent
Send a {type} notification to the email of store {storeId}.
Email store {storeId} a dynamic notification with fields {fields} in {language}.
GET /api/stores/{storeId}/accounts/{id}/loginonbehalf Check a contact's login-on-behalf permission · Check if given contact has login on behalf permission #
Ask an LLM
“Is a given account allowed to log in on behalf of customers in a store?”
“Can I check whether a support agent may impersonate shoppers?”
Tell an agent
Check whether account {id} can log in on behalf of others in store {storeId}.
Tell me if contact {id} has login-on-behalf rights for store {storeId}.
GET /api/stores/allowed/{userId} List stores a user may sign in to · Returns list of stores which user can sign in #
Ask an LLM
“Which stores is a particular user allowed to sign in to?”
“What storefronts can this user account access?”
Tell an agent
List the stores user {userId} can sign in to.
Show allowed stores for user {userId}.
GET /api/stores/{id}/public-settings Get a store's public settings · Store module get store public settings by id #
Ask an LLM
“Which store settings are safe to expose to the storefront?”
“How do I read only the public settings of a store?”
Tell an agent
Get the public settings of store {id}.
Show the storefront-visible settings for store {id}.

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

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

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

Get an API key

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

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

OpenAPI Specification

virto-commerce-store-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: VirtoCommerce. Store API
  version: v1
  description: Multi store management with individual store settings
tags:
- name: Store
  description: Multi store management with individual store settings
paths:
  /api/store-authentication-schemes/{storeId}:
    get:
      tags:
      - Store
      operationId: StoreAuthenticationScheme_Get
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/StoreAuthenticationScheme'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/StoreAuthenticationScheme'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/StoreAuthenticationScheme'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - store:read
      - api_key:
        - store:read
      - api_key_header:
        - store:read
      - http-signature:
        - store:read
      - basic:
        - store:read
      x-virtocommerce-module-id: VirtoCommerce.Store
      summary: Store authentication scheme get
      x-summary-source: derived
    put:
      tags:
      - Store
      operationId: StoreAuthenticationScheme_Update
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/StoreAuthenticationScheme'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/StoreAuthenticationScheme'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/StoreAuthenticationScheme'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - store:update
      - api_key:
        - store:update
      - api_key_header:
        - store:update
      - http-signature:
        - store:update
      - basic:
        - store:update
      x-virtocommerce-module-id: VirtoCommerce.Store
      summary: Store authentication scheme update
      x-summary-source: derived
  /api/stores/search:
    post:
      tags:
      - Store
      summary: Search stores
      operationId: StoreModule_SearchStores
      requestBody:
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/StoreSearchCriteria'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/StoreSearchCriteria'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/StoreSearchCriteria'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StoreSearchResult'
            application/json:
              schema:
                $ref: '#/components/schemas/StoreSearchResult'
            text/json:
              schema:
                $ref: '#/components/schemas/StoreSearchResult'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/{id}:
    get:
      tags:
      - Store
      summary: Get store by id
      operationId: StoreModule_GetStoreById
      parameters:
      - name: id
        in: path
        description: Store id
        required: true
        schema:
          type: string
      - name: responseGroup
        in: query
        description: Response group
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Store'
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
            text/json:
              schema:
                $ref: '#/components/schemas/Store'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
    patch:
      tags:
      - Store
      summary: Partial update for the specified store by id
      operationId: StoreModule_PatchStore
      parameters:
      - name: id
        in: path
        description: Store id
        required: true
        schema:
          type: string
      requestBody:
        description: JsonPatchDocument object with fields to update
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Operation'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/outer/{outerId}:
    get:
      tags:
      - Store
      summary: Gets store by outer id
      description: Gets store by outer id (integration key) with full information loaded
      operationId: StoreModule_GetStoreByOuterId
      parameters:
      - name: outerId
        in: path
        description: Store outer id
        required: true
        schema:
          type: string
      - name: responseGroup
        in: query
        description: Response group
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Store'
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
            text/json:
              schema:
                $ref: '#/components/schemas/Store'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores:
    post:
      tags:
      - Store
      summary: Create store
      operationId: StoreModule_CreateStore
      requestBody:
        description: Store
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Store'
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
            text/json:
              schema:
                $ref: '#/components/schemas/Store'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2:
        - store:create
      - api_key:
        - store:create
      - api_key_header:
        - store:create
      - http-signature:
        - store:create
      - basic:
        - store:create
      x-virtocommerce-module-id: VirtoCommerce.Store
    put:
      tags:
      - Store
      summary: Update store
      operationId: StoreModule_UpdateStore
      requestBody:
        description: Store
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/Store'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
    delete:
      tags:
      - Store
      summary: Delete stores
      operationId: StoreModule_DeleteStore
      parameters:
      - name: ids
        in: query
        description: Ids of store that needed to delete
        schema:
          type: array
          items:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/send/dynamicnotification:
    post:
      tags:
      - Store
      summary: Send dynamic notification (contains custom list of properties) to store or…
      operationId: StoreModule_SendDynamicNotificationToStoreEmail
      requestBody:
        description: ''
        content:
          application/json-patch+json:
            schema:
              allOf:
              - $ref: '#/components/schemas/SendDynamicNotificationRequest'
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/SendDynamicNotificationRequest'
          text/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/SendDynamicNotificationRequest'
      responses:
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/{storeId}/accounts/{id}/loginonbehalf:
    get:
      tags:
      - Store
      summary: Check if given contact has login on behalf permission
      operationId: StoreModule_GetLoginOnBehalfInfo
      parameters:
      - name: storeId
        in: path
        description: Store ID
        required: true
        schema:
          type: string
      - name: id
        in: path
        description: Contact ID
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/LoginOnBehalfInfo'
            application/json:
              schema:
                $ref: '#/components/schemas/LoginOnBehalfInfo'
            text/json:
              schema:
                $ref: '#/components/schemas/LoginOnBehalfInfo'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/allowed/{userId}:
    get:
      tags:
      - Store
      summary: Returns list of stores which user can sign in
      operationId: StoreModule_GetUserAllowedStores
      parameters:
      - name: userId
        in: path
        description: ''
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Store'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Store'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Store'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - oauth2: []
      - api_key: []
      - api_key_header: []
      - http-signature: []
      - basic: []
      x-virtocommerce-module-id: VirtoCommerce.Store
  /api/stores/{id}/public-settings:
    get:
      tags:
      - Store
      operationId: StoreModule_GetStorePublicSettingsById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ModulePublicStoreSettings'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ModulePublicStoreSettings'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ModulePublicStoreSettings'
      x-virtocommerce-module-id: VirtoCommerce.Store
      summary: Store module get store public settings by id
      x-summary-source: derived
components:
  schemas:
    PublicStoreSetting:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
        value:
          type:
          - object
          - 'null'
      additionalProperties: false
    SortInfo:
      type: object
      properties:
        sortColumn:
          type:
          - string
          - 'null'
        sortDirection:
          allOf:
          - $ref: '#/components/schemas/SortDirection'
      additionalProperties: false
    DynamicObjectProperty:
      type: object
      properties:
        objectId:
          type:
          - string
          - 'null'
        values:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/DynamicPropertyObjectValue'
        name:
          type:
          - string
          - 'null'
        description:
          type:
          - string
          - 'null'
        objectType:
          type:
          - string
          - 'null'
        isArray:
          type: boolean
        isDictionary:
          type: boolean
        isMultilingual:
          type: boolean
        isRequired:
          type: boolean
        displayOrder:
          type:
          - integer
          - 'null'
          format: int32
        valueType:
          allOf:
          - $ref: '#/components/schemas/DynamicPropertyValueType'
        displayNames:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/DynamicPropertyName'
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type:
          - string
          - 'null'
          format: date-time
        createdBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        modifiedBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        id:
          type:
          - string
          - 'null'
      additionalProperties: false
    StoreState:
      enum:
      - Open
      - Closed
      - RestrictedAccess
      type: string
    SendDynamicNotificationRequest:
      type: object
      properties:
        storeId:
          type:
          - string
          - 'null'
        type:
          type:
          - string
          - 'null'
        fields:
          type:
          - object
          - 'null'
          additionalProperties:
            type:
            - string
            - 'null'
        language:
          type:
          - string
          - 'null'
      additionalProperties: false
    ModulePublicStoreSettings:
      type: object
      properties:
        moduleId:
          type:
          - string
          - 'null'
        settings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/PublicStoreSetting'
      additionalProperties: false
    StoreSearchResult:
      type: object
      properties:
        totalCount:
          type: integer
          format: int32
        results:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Store'
      additionalProperties: false
    DynamicPropertyObjectValue:
      type: object
      properties:
        objectType:
          type:
          - string
          - 'null'
        objectId:
          type:
          - string
          - 'null'
        locale:
          type:
          - string
          - 'null'
        value:
          type:
          - object
          - 'null'
        valueId:
          type:
          - string
          - 'null'
        valueType:
          allOf:
          - $ref: '#/components/schemas/DynamicPropertyValueType'
        propertyId:
          type:
          - string
          - 'null'
        propertyName:
          type:
          - string
          - 'null'
      additionalProperties: false
    Operation:
      type: object
      properties:
        value:
          type:
          - object
          - 'null'
        path:
          type:
          - string
          - 'null'
        op:
          type:
          - string
          - 'null'
        from:
          type:
          - string
          - 'null'
      additionalProperties: false
    DynamicPropertyValueType:
      enum:
      - Undefined
      - ShortText
      - LongText
      - Integer
      - Decimal
      - DateTime
      - Boolean
      - Html
      - Image
      type: string
    LoginOnBehalfInfo:
      type: object
      properties:
        userName:
          type:
          - string
          - 'null'
        canLoginOnBehalf:
          type: boolean
      additionalProperties: false
      description: Represent result for checking of possibility login on behalf request
    DynamicPropertyName:
      type: object
      properties:
        locale:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
      additionalProperties: false
    Store:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
        description:
          type:
          - string
          - 'null'
        storeState:
          allOf:
          - $ref: '#/components/schemas/StoreState'
          description: Store current state (Open, Closed, RestrictedAccess)
        timeZone:
          type:
          - string
          - 'null'
        country:
          type:
          - string
          - 'null'
        region:
          type:
          - string
          - 'null'
        defaultLanguage:
          type:
          - string
          - 'null'
        defaultCurrency:
          type:
          - string
          - 'null'
        catalog:
          type:
          - string
          - 'null'
          description: Catalog id used as primary store catalog
        creditCardSavePolicy:
          type: boolean
        url:
          type:
          - string
          - 'null'
          description: Store storefront url
        secureUrl:
          type:
          - string
          - 'null'
          description: Store storefront https url
        email:
          type:
          - string
          - 'null'
          description: Primary store contact email can be used for store event notifications and for feed back
        adminEmail:
          type:
          - string
          - 'null'
        emailName:
          type:
          - string
          - 'null'
        adminEmailName:
          type:
          - string
          - 'null'
        displayOutOfStock:
          type: boolean
        outerId:
          type:
          - string
          - 'null'
        mainFulfillmentCenterId:
          type:
          - string
          - 'null'
          description: Primary (default) fulfillment center id
        additionalFulfillmentCenterIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Alternate fulfillment centers ids
        mainReturnsFulfillmentCenterId:
          type:
          - string
          - 'null'
          description: Primary (default) fulfillment center for order return
        returnsFulfillmentCenterIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Alternate fulfillment centers for order return
        languages:
          type:
          - array
          - 'null'
          items:
            type: string
          description: All store supported languages
        currencies:
          type:
          - array
          - 'null'
          items:
            type: string
          description: All store supported currencies
        trustedGroups:
          type:
          - array
          - 'null'
          items:
            type: string
          description: All store trusted groups (group of stores that shared the user logins)
        seoObjectType:
          type:
          - string
          - 'null'
          readOnly: true
        seoInfos:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SeoInfo'
        objectType:
          type:
          - string
          - 'null'
          readOnly: true
        dynamicProperties:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/DynamicObjectProperty'
        settings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ObjectSettingEntry'
        typeName:
          type:
          - string
          - 'null'
          readOnly: true
        scopes:
          type:
          - array
          - 'null'
          items:
            type: string
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type:
          - string
          - 'null'
          format: date-time
        createdBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        modifiedBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        id:
          type:
          - string
          - 'null'
      additionalProperties: false
    SettingValueType:
      enum:
      - ShortText
      - LongText
      - Integer
      - Decimal
      - DateTime
      - Boolean
      - SecureString
      - Json
      - PositiveInteger
      type: string
    SortDirection:
      enum:
      - Ascending
      - Descending
      type: string
    StoreSearchCriteria:
      type: object
      properties:
        storeStates:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/StoreState'
        fulfillmentCenterIds:
          type:
          - array
          - 'null'
          items:
            type: string
        domain:
          type:
          - string
          - 'null'
        responseGroup:
          type:
          - string
          - 'null'
        objectType:
          type:
          - string
          - 'null'
        objectTypes:
          type:
          - array
          - 'null'
          items:
            type: string
        objectIds:
          type:
          - array
          - 'null'
          items:
            type: string
        keyword:
          type:
          - string
          - 'null'
        searchPhrase:
          type:
          - string
          - 'null'
        languageCode:
          type:
          - string
          - 'null'
        sort:
          type:
          - string
          - 'null'
        sortInfos:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SortInfo'
          readOnly: true
        skip:
          type: integer
          format: int32
        take:
          type: integer
          format: int32
      additionalProperties: false
    SeoInfo:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
        semanticUrl:
          type:
          - string
          - 'null'
        outline:
          type:
          - string
          - 'null'
        pageTitle:
          type:
          - string
          - 'null'
        metaDescription:
          type:
          - string
          - 'null'
        imageAltDescription:
          type:
          - string
          - 'null'
        metaKeywords:
          type:
          - string
          - 'null'
        storeId:
          type:
          - string
          - 'null'
        organizationId:
          type:
          - string
          - 'null'
        objectId:
          type:
          - string
          - 'null'
        objectType:
          type:
          - string
          - 'null'
        isActive:
          type: boolean
        languageCode:
          type:
          - string
          - 'null'
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type:
          - string
          - 'null'
          format: date-time
        createdBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        modifiedBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        id:
          type:
          - string
          - 'null'
      additionalProperties: false
    ObjectSettingEntry:
      type: object
      properties:
        itHasValues:
          type: boolean
          readOnly: true
        objectId:
          type:
          - string
          - 'null'
        objectType:
          type:
          - string
          - 'null'
        isReadOnly:
          type: boolean
        value:
          type:
          - object
          - 'null'
        id:
          type:
          - string
          - 'null'
        restartRequired:
          type: boolean
        moduleId:
          type:
          - string
          - 'null'
        groupName:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        displayName:
          type:
          - string
          - 'null'
        isRequired:
          type: boolean
        isHidden:
          type: boolean
        isPublic:
          type: boolean
        valueType:
          allOf:
          - $ref: '#/components/schemas/SettingValueType'
        allowedValues:
          type:
          - array
          - 'null'
          items:
            type: object
        defaultValue:
          type:
          - object
          - 'null'
        isDictionary:
          type: boolean
        isLocalizable:
          type: boolean
        tenant:
          type:
          - string
          - 'null'
      additionalProperties: false
    StoreAuthenticationScheme:
      type: object
      properties:
        storeId:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        displayName:
          type:
          - string
          - 'null'
        isActive:
          type: boolean
        position:
          type: integer
          format: int32
        createdDate:
          type: string
          format: date-time
        modifiedDate:
          type:
          - string
          - 'null'
          format: date-time
        createdBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        modifiedBy:
          maxLength: 64
          minLength: 0
          type:
          - string
          - 'null'
        id:
          type:
          - string
          - 'null'
      additionalProperties: false
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth2 Resource Owner Password Grant flow
      flows:
        password:
          tokenUrl: /connect/token
          scopes: {}
        clientCredentials:
          tokenUrl: /connect/token
          scopes: {}
    api_key:
      type: apiKey
      description: API Key authentication
      name: api_key
      in: query
    api_key_header:
      type: apiKey
      description: API Key authentication (alternative via header)
      name: api_key
      in: header
    http-signature:
      type: http
      description: HTTP Signature authentication using Authorization header
      scheme: signature
    basic:
      type: http
      description: Basic authentication using username and password
      scheme: basic