{
  "openapi": "3.0.1",
  "info": {
    "title": "Extendedlogger",
    "description": "Provides RESTful services to config extended logger",
    "version": "9.1.20.0",
    "x-introduced": "9.1.0.0"
  },
  "servers": [
    {
      "url": "https://{hostname}:{port}/wcs/resources",
      "variables": {
        "port": {
          "default": "443",
          "enum": [
            "443",
            "5443"
          ]
        },
        "hostname": {
          "default": "localhost",
          "enum": [
            "localhost",
            "test.hcl.com"
          ]
        }
      }
    }
  ],
  "externalDocs": {
    "description": "Some REST services require authentication. HCL Commerce REST services are authenticated on secure and unsecured channels. This authentication can include the use of the WCToken and WCTrustedToken. To use REST services that require authentication, you must first get authentication data by using a supported identity services.\n\nAfter you obtain the authentication data, you must pass either the WCToken or WCTustedToken parameters, or both, within the HTTP header for every request that requires authentication. If a request is sent over HTTP, pass the WCToken parameter in the HTTP header. Do not pass the WCTrustedToken in HTTP requests, as the parameter value might display. Send both the WCToken and the WCTrustedToken parameters when the request is being sent over HTTPS.\n\nThe HCL Commerce REST APIs can also use session cookies that are created by the HCL Commerce store runtime for authentication. These cookies allow you to mix requests to the HCL Commerce REST APIs and the HCL Commerce store runtime within the same user session.\n\n",
    "url": "https://help.hcltechsw.com/commerce/9.1.0/webservices/concepts/cwvrestauth.html?hl=rest%2Cauthentication"
  },
  "paths": {
    "/extendedlogger/asyncconfig": {
      "put": {
        "tags": [
          "extendedlogger"
        ],
        "summary": "Update configuration of extended logger asynchronously.",
        "description": "Update configuration of extended logger asynchronously.",
        "parameters": [
          {
            "name": "enableFlag",
            "in": "query",
            "description": "This enable flag is used to enable/disable the extended logging.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customFields",
            "in": "query",
            "description": "This custom fields query param is used to set the customized extended log for their own specification.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "registrationFlag",
            "in": "query",
            "description": "This registration flag is used to register/unregister the custom fields.  When registrationFlag value is false, and customFields doesn't exist, it means to unregister all custom fields.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "containerNames",
            "in": "query",
            "description": "This container names is used to assign the containers who will be enabled extended logging.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "responseFormat",
            "in": "query",
            "description": "The response format. Valid values are json and xml. If the request contains an input body, it must use the format specified in responseFormat. If the responseFormat is not specified, the accept  HTTP header determines the format of the response. If the accept  HTTP header is not specified then default response format is json.",
            "schema": {
              "type": "string",
              "enum": [
                "xml",
                "json"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The requested completed successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/extendedlogger-behavior"
                },
                "example": {
                  "resultList": [
                    {
                      "status": "ok",
                      "customFields": "string",
                      "action": [
                        "string"
                      ]
                    }
                  ]
                }
              },
              "application/xhtml+xml": {
                "schema": {
                  "$ref": "#/components/schemas/extendedlogger-behavior"
                }
              }
            }
          },
          "400": {
            "description": "Bad request. The request could not be understood by the server due to malformed syntax.",
            "content": {}
          },
          "401": {
            "description": "Not authenticated. The user session is not valid.",
            "content": {}
          },
          "403": {
            "description": "The user is not authorized to perform the specified request.",
            "content": {}
          },
          "404": {
            "description": "The specified resource could not be found.",
            "content": {}
          },
          "500": {
            "description": "Internal server error. For details, see the server log files.",
            "content": {}
          }
        },
        "x-codegen-request-body-name": "body"
      }
    }
  },
  "components": {
    "schemas": {
      "extendedlogger-behavior": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "customFields": {
            "type": "string"
          },
          "action": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "basicAuth": {
        "type": "http",
        "scheme": "basic"
      }
    }
  },
  "security": [
    {
      "basicAuth": []
    }
  ],
  "x-aes-documentation": {
    "gettingstarted": [
      {
        "content": "HCL Commerce REST services support JSON and XML formats for input and output data by default. The default format is JSON. When an XML String is sent to a REST service, you must set Content-Type HTTP header to be \"application/xml\". The REST service converts the XML input data to the JSON format that is accepted by REST services. Therefore, your input XML format must follow a certain structure so that it can be transformed to the JSON object that is accepted by REST services. See more here: <a href=https://help.hcltechsw.com/commerce/8.0.0/webservices/refs/rwvrestxmlformat.html </a> ",
        "codeSnippets": [],
        "name": "Response formats"
      },
      {
        "content": "Preview tokens are encrypted strings that encapsulates a set of preview options and restrictions on when and where the token can be used. Any user who is authorized to access your server and has a preview token, can complete preview actions in the same store for which that token is generated. See more here: <a href=https://help.hcltechsw.com/commerce/8.0.0/developer/concepts/cpvpreviewtoken.html?hl=preview%2Ctokens</a>",
        "codeSnippets": [],
        "name": "Preview tokens"
      },
      {
        "content": "Some HCL Commerce REST services require a request to be sent over HTTPS. Learn more here: <a href=https://help.hcltechsw.com/commerce/8.0.0/webservices/tasks/twvrestssl.html?hl=secure%2Csockets%2Clayer </a> ",
        "codeSnippets": [],
        "name": "Secure Sockets Layer"
      }
    ]
  }
}
