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

# Change vendor status with validation based on target status.

> Transitions to Active status require full validation (address, SKU mappings, ReceiverId for EDIKibo).
Transitions to Inactive or OnboardingInProcess have no validation requirements.



## OpenAPI

````yaml /openapi/openapi_location_admin.json post /commerce/vendors/{vendorCode}/status
openapi: 3.0.1
info:
  description: |-
    <div id="overview_LOCATION_ADMIN">
                <h2>LOCATION ADMINISTRATION</h2>
                <p>The Location and Location Groups APIs enable tenants to associate a physical address with product inventory,
                    provide a store finder for in-store pickup, or both and manage these locations at individual and group levels. See the
                    <a href="/pages/locations">Location user guides</a>
                    for information about the related feature in the Unified Commerce Admin.</p>
                <p>The <strong>Location Admin</strong>
                    resource
                    allows information about the individual locations to be accessed and edited, including creating new
                    locations.</p>
                <p>Use the <strong>Location Group</strong> and <strong>Location Group Configuration</strong> resources to manage groups, or sets of similar fulfillment locations that are bundled together
                    to improve efficiency of managing configurations based on catalogs, custom fulfillment flows,
                    available carrier options, and so forth.</p>
                <p>Use the <strong>Location Types</strong> resource to manage the types of locations your tenant maintains, such as
                    warehouses,
                    physical storefronts, and kiosks.</p>
                <p>Use the <strong>Location Settings</strong> resource to to define the available usages; or the locations and
                        location types that interact
                        with a specified site.</p>
            </div>
  title: Location Admin
  version: 0.0.1
servers:
  - description: Kibo Base URL
    url: '{baseUrl}/api'
    variables:
      baseUrl:
        default: https://t1000000.sb.usc1.gcp.kibocommerce.com
        description: Base URL
security:
  - bearerAuth: []
paths:
  /commerce/vendors/{vendorCode}/status:
    post:
      tags:
        - Vendor
      summary: Change vendor status with validation based on target status.
      description: >-
        Transitions to Active status require full validation (address, SKU
        mappings, ReceiverId for EDIKibo).

        Transitions to Inactive or OnboardingInProcess have no validation
        requirements.
      parameters:
        - description: Unique vendor code
          in: path
          name: vendorCode
          required: true
          schema:
            type: string
        - description: limits which fields are returned in the response body
          in: query
          name: responseFields
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChangeVendorStatusRequest'
        description: Request containing new status
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Vendor'
            text/json:
              schema:
                $ref: '#/components/schemas/Vendor'
            text/plain:
              schema:
                $ref: '#/components/schemas/Vendor'
          description: OK
components:
  schemas:
    ChangeVendorStatusRequest:
      properties:
        status:
          nullable: true
          type: string
      type: object
    Vendor:
      properties:
        attributes:
          items:
            $ref: '#/components/schemas/VendorAttribute'
          nullable: true
          type: array
        auditInfo:
          $ref: '#/components/schemas/ApiContractsAuditInfo'
        contactInfo:
          $ref: '#/components/schemas/ContactInfo'
        corporateDetails:
          $ref: '#/components/schemas/CorporateDetails'
        data:
          nullable: true
        inventoryRefresh:
          nullable: true
          type: string
        locations:
          items:
            $ref: '#/components/schemas/VendorLocation'
          nullable: true
          type: array
        metrics:
          $ref: '#/components/schemas/VendorMetrics'
        name:
          nullable: true
          type: string
        onboardingChecklist:
          $ref: '#/components/schemas/OnboardingChecklist'
        status:
          nullable: true
          type: string
        tenantId:
          format: int32
          type: integer
        vendorCode:
          nullable: true
          type: string
        vendorType:
          nullable: true
          type: string
      type: object
    VendorAttribute:
      properties:
        attributeDefinition:
          $ref: '#/components/schemas/LocationAdminAttribute'
        attributeDefinitionId:
          format: int32
          nullable: true
          type: integer
        auditInfo:
          $ref: '#/components/schemas/ApiContractsAuditInfo'
        fullyQualifiedName:
          nullable: true
          type: string
        values:
          items: {}
          nullable: true
          type: array
      type: object
    ApiContractsAuditInfo:
      properties:
        createBy:
          nullable: true
          type: string
        createDate:
          format: date-time
          nullable: true
          type: string
        updateBy:
          nullable: true
          type: string
        updateDate:
          format: date-time
          nullable: true
          type: string
      type: object
    ContactInfo:
      properties:
        address:
          $ref: '#/components/schemas/Address'
        billingEmail:
          nullable: true
          type: string
        email:
          nullable: true
          type: string
        phone:
          nullable: true
          type: string
        primaryContactName:
          nullable: true
          type: string
        supportEmail:
          nullable: true
          type: string
      type: object
    CorporateDetails:
      properties:
        businessType:
          nullable: true
          type: string
        companyDescription:
          nullable: true
          type: string
        foundedYear:
          format: int32
          nullable: true
          type: integer
        legalBusinessName:
          nullable: true
          type: string
        numberOfEmployees:
          format: int32
          nullable: true
          type: integer
        taxId:
          nullable: true
          type: string
        website:
          nullable: true
          type: string
      type: object
    VendorLocation:
      properties:
        data:
          nullable: true
        locationCode:
          nullable: true
          type: string
      type: object
    VendorMetrics:
      properties:
        itemAcceptanceRate:
          format: double
          nullable: true
          readOnly: true
          type: number
        itemReturnRate:
          format: double
          nullable: true
          readOnly: true
          type: number
        onTimeShipmentRate:
          format: double
          nullable: true
          readOnly: true
          type: number
        performanceCategory:
          nullable: true
          readOnly: true
          type: string
        performanceScore:
          format: double
          nullable: true
          readOnly: true
          type: number
      type: object
    OnboardingChecklist:
      properties:
        businessVerificationCompleted:
          type: boolean
        companyInfoSubmitted:
          type: boolean
        integrationProfile:
          $ref: '#/components/schemas/IntegrationProfile'
        userAccountsAdded:
          type: boolean
      type: object
    LocationAdminAttribute:
      properties:
        adminName:
          maxLength: 50
          nullable: true
          type: string
        attributeCode:
          maxLength: 50
          minLength: 1
          type: string
        attributeFQN:
          nullable: true
          type: string
        attributeMetadata:
          items:
            $ref: '#/components/schemas/AttributeMetadataItem'
          nullable: true
          type: array
        auditInfo:
          $ref: '#/components/schemas/ApiContractsAuditInfo'
        availableForDiscounts:
          type: boolean
        availableForOrderRouting:
          type: boolean
        availableInRules:
          type: boolean
        content:
          $ref: '#/components/schemas/AttributeLocalizedContent'
        dataType:
          nullable: true
          type: string
        displayGroup:
          minLength: 1
          type: string
        entityConfigs:
          items:
            $ref: '#/components/schemas/AttributeEntityConfig'
          nullable: true
          type: array
        id:
          format: int32
          nullable: true
          type: integer
        inheritanceRules:
          items:
            $ref: '#/components/schemas/AttributeInheritanceRule'
          nullable: true
          type: array
        inputType:
          nullable: true
          type: string
        isActive:
          nullable: true
          type: boolean
        isMultiValued:
          nullable: true
          type: boolean
        isReadOnly:
          type: boolean
        isRequired:
          nullable: true
          type: boolean
        isVisible:
          nullable: true
          type: boolean
        namespace:
          maxLength: 200
          nullable: true
          type: string
        order:
          format: int32
          nullable: true
          type: integer
        validation:
          $ref: '#/components/schemas/AttributeValidation'
        valueType:
          minLength: 1
          type: string
        vocabularyValues:
          items:
            $ref: '#/components/schemas/AttributeVocabularyValue'
          nullable: true
          type: array
      required:
        - attributeCode
        - displayGroup
        - valueType
      type: object
    Address:
      properties:
        address1:
          nullable: true
          type: string
        address2:
          nullable: true
          type: string
        address3:
          nullable: true
          type: string
        address4:
          nullable: true
          type: string
        addressType:
          nullable: true
          type: string
        cityOrTown:
          nullable: true
          type: string
        countryCode:
          nullable: true
          type: string
        isValidated:
          nullable: true
          type: boolean
        postalOrZipCode:
          nullable: true
          type: string
        stateOrProvince:
          nullable: true
          type: string
      type: object
    IntegrationProfile:
      properties:
        api:
          $ref: '#/components/schemas/ApiIntegration'
        ediKibo:
          $ref: '#/components/schemas/EdiKiboIntegration'
        integrationConfigured:
          type: boolean
        portal:
          $ref: '#/components/schemas/PortalIntegration'
        type:
          nullable: true
          type: string
      type: object
    AttributeMetadataItem:
      properties:
        key:
          maxLength: 50
          minLength: 1
          type: string
        value:
          minLength: 1
          type: string
      required:
        - key
        - value
      type: object
    AttributeLocalizedContent:
      properties:
        localeCode:
          maxLength: 8
          nullable: true
          type: string
        value:
          maxLength: 100
          nullable: true
          type: string
      type: object
    AttributeEntityConfig:
      properties:
        auditInfo:
          $ref: '#/components/schemas/CoreAuditInfo'
        editable:
          type: boolean
        entityType:
          nullable: true
          type: string
        id:
          format: int32
          nullable: true
          type: integer
      type: object
    AttributeInheritanceRule:
      properties:
        auditInfo:
          $ref: '#/components/schemas/CoreAuditInfo'
        id:
          format: int32
          nullable: true
          type: integer
        inheritanceMode:
          nullable: true
          type: string
        sourceEntityType:
          nullable: true
          type: string
        targetEntityType:
          nullable: true
          type: string
      type: object
    AttributeValidation:
      properties:
        maxDateTime:
          format: date-time
          nullable: true
          type: string
        maxNumericValue:
          format: double
          nullable: true
          type: number
        maxStringLength:
          format: int32
          nullable: true
          type: integer
        minDateTime:
          format: date-time
          nullable: true
          type: string
        minNumericValue:
          format: double
          nullable: true
          type: number
        minStringLength:
          format: int32
          nullable: true
          type: integer
        regularExpression:
          maxLength: 200
          nullable: true
          type: string
      type: object
    AttributeVocabularyValue:
      properties:
        content:
          $ref: '#/components/schemas/AttributeValueLocalizedContent'
        isHidden:
          nullable: true
          type: boolean
        sequence:
          format: int32
          nullable: true
          type: integer
        value:
          maxLength: 50
          minLength: 1
          type: string
      required:
        - value
      type: object
    ApiIntegration:
      properties:
        catalogListing:
          type: boolean
        inventory:
          type: boolean
        locations:
          type: boolean
        orders:
          type: boolean
      type: object
    EdiKiboIntegration:
      properties:
        ackOn856:
          nullable: true
          type: boolean
        receiverId:
          nullable: true
          type: string
      type: object
    PortalIntegration:
      properties:
        catalogListingAndInventory:
          type: boolean
        locations:
          type: boolean
      type: object
    CoreAuditInfo:
      properties:
        createBy:
          nullable: true
          type: string
        createDate:
          format: date-time
          nullable: true
          type: string
        updateBy:
          nullable: true
          type: string
        updateDate:
          format: date-time
          nullable: true
          type: string
      type: object
    AttributeValueLocalizedContent:
      properties:
        localeCode:
          minLength: 1
          type: string
        value:
          minLength: 1
          type: string
      required:
        - localeCode
        - value
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      description: JWT Authorization header using the Bearer scheme.
      scheme: bearer
      type: http

````