{
  "openapi" : "3.1.0",
  "info" : {
    "title" : "Render Stories",
    "version" : "1.0.0",
    "description" : "Provides services for rendering stories."
  },
  "paths" : {
    "/portals/api/v1/stories/render-searchlet" : {
      "post" : {
        "operationId" : "post-portals-api-v1-stories-render-searchlet",
        "summary" : "Render Searchlet Story",
        "description" : "Tries to find and render a searchlet for the given parameters.\n",
        "parameters" : [ {
          "name" : "accessToken",
          "in" : "query",
          "required" : true,
          "description" : "Access token for non-public portals. When submitting a <i>user</i> or <i>roles,</i> the respective values need to be considered during the computation of the token. See kba:INT63 for details.",
          "schema" : {
            "type" : "string"
          },
          "example" : "d0765f518ff0cab426dbbd6d467c9967"
        }, {
          "name" : "portal",
          "in" : "query",
          "required" : true,
          "description" : "Globally unique alpha-numeric code as set up or automatically assigned. Also visible in the respective URL on the <a href=\"/portals\">Portals</a> page.",
          "schema" : {
            "type" : "string"
          },
          "example" : "9999999"
        }, {
          "name" : "user",
          "in" : "query",
          "required" : true,
          "description" : "User name",
          "schema" : {
            "type" : "string"
          },
          "example" : "john.doe"
        }, {
          "name" : "brandName",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the brand name to filter by. This is just a backup option, and a unique supplier number should preferably be used instead.",
          "schema" : {
            "type" : "string"
          },
          "example" : "ACME"
        }, {
          "name" : "classification",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the ETIM class to filter by.",
          "schema" : {
            "type" : "string"
          },
          "example" : "ec011550"
        }, {
          "name" : "filterCountry",
          "in" : "query",
          "required" : false,
          "description" : "The country to filter by. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "filterLanguage",
          "in" : "query",
          "required" : false,
          "description" : "The language to filter by in case of multi language portals. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "language",
          "in" : "query",
          "required" : false,
          "description" : "Language to use for human-readable data. Does not affect content where applicable. Provide a two-letter ISO code.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "productGroup",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the product group as supplied by the manufacturer to filter by.",
          "schema" : {
            "type" : "string"
          },
          "example" : "pg-01"
        }, {
          "name" : "query",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the current search query of the user to filter by.",
          "schema" : {
            "type" : "string"
          },
          "example" : "bathtub"
        }, {
          "name" : "roles",
          "in" : "query",
          "required" : false,
          "description" : "Comma-separated list of roles assigned to the user. Can be omitted if roles are not in use, or if the portal is public.",
          "schema" : {
            "type" : "string"
          },
          "example" : "Heating,Electronics,Top-Customer"
        }, {
          "name" : "seriesCode",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the series code as supplied by the manufacturer to filter by.",
          "schema" : {
            "type" : "string"
          },
          "example" : "001"
        }, {
          "name" : "supplierNumber",
          "in" : "query",
          "required" : false,
          "description" : "Specifies the number of the supplier to filter by, as set in the respective partnership. This is the preferred way to specify the supplier.",
          "schema" : {
            "type" : "string"
          },
          "example" : "0815"
        } ],
        "requestBody" : {
          "description" : "Sample request",
          "required" : false,
          "content" : {
            "application/json" : {
              "examples" : {
                "example1" : {
                  "value" : {
                    "portal" : "DEMO",
                    "user" : "Demouser",
                    "roles" : "sales",
                    "accessToken" : "fc97df375de49fbae114a42a991c5999",
                    "lang" : "de",
                    "filterLang" : "de",
                    "brandName" : "ACME",
                    "supplierNumber" : "0815",
                    "classification" : "ec011550",
                    "seriesCode" : "001",
                    "productGroup" : "pg-01",
                    "query" : "bathtub"
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successful response",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : true,
                      "error" : false,
                      "renderedHtml" : "<div class=\"sci-border-box sci-story sci-story-gc8hheij92rnsgh2\">...</div>",
                      "borderless" : false
                    }
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Missing parameter or malformed request",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : false,
                      "error" : true,
                      "message" : "The parameter {missingParameter} must be filled."
                    }
                  }
                }
              }
            }
          },
          "401" : {
            "description" : "Authentication required but none provided",
            "content" : {
              "application/json" : { }
            }
          },
          "403" : {
            "description" : "Invalid authentication or missing permission",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Resource not found",
            "content" : {
              "application/json" : { }
            }
          },
          "405" : {
            "description" : "Incorrect request method, e.g. GET instead of POST",
            "content" : {
              "application/json" : { }
            }
          },
          "500" : {
            "description" : "Unexpected server-side error",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/portals/api/v1/stories/slider" : {
      "post" : {
        "operationId" : "post-portals-api-v1-stories-slider",
        "summary" : "Render Stories Slider",
        "description" : "Renders a slider containing all accessible stories and returns the generated html within a json response.\n",
        "parameters" : [ {
          "name" : "accessToken",
          "in" : "query",
          "required" : true,
          "description" : "Access token for non-public portals. When submitting a <i>user</i> or <i>roles,</i> the respective values need to be considered during the computation of the token. See kba:INT63 for details.",
          "schema" : {
            "type" : "string"
          },
          "example" : "d0765f518ff0cab426dbbd6d467c9967"
        }, {
          "name" : "limit",
          "in" : "query",
          "required" : true,
          "description" : "Defines the maximum number of stories within the slider (Max: 10).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "portal",
          "in" : "query",
          "required" : true,
          "description" : "Globally unique alpha-numeric code as set up or automatically assigned. Also visible in the respective URL on the <a href=\"/portals\">Portals</a> page.",
          "schema" : {
            "type" : "string"
          },
          "example" : "9999999"
        }, {
          "name" : "user",
          "in" : "query",
          "required" : true,
          "description" : "User name",
          "schema" : {
            "type" : "string"
          },
          "example" : "john.doe"
        }, {
          "name" : "filterCountry",
          "in" : "query",
          "required" : false,
          "description" : "The country to filter by. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "filterLanguage",
          "in" : "query",
          "required" : false,
          "description" : "The language to filter by in case of multi language portals. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "language",
          "in" : "query",
          "required" : false,
          "description" : "Language to use for human-readable data. Does not affect content where applicable. Provide a two-letter ISO code.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "roles",
          "in" : "query",
          "required" : false,
          "description" : "Comma-separated list of roles assigned to the user. Can be omitted if roles are not in use, or if the portal is public.",
          "schema" : {
            "type" : "string"
          },
          "example" : "Heating,Electronics,Top-Customer"
        } ],
        "requestBody" : {
          "description" : "Sample request",
          "required" : false,
          "content" : {
            "application/json" : {
              "examples" : {
                "example1" : {
                  "value" : {
                    "limit" : "6",
                    "portal" : "DEMO",
                    "user" : "Demouser",
                    "roles" : "sales",
                    "accessToken" : "25ca3e75b592585d7748a189ab10d8c3",
                    "lang" : "",
                    "interactionToken" : "8wjlnm0ydq2demo"
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successful response",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : "true",
                      "error" : false,
                      "renderedHtml" : "<div class=\"sci-border-box sci-story sci-story-gc8hheij92rnsgh2\">...</div>"
                    }
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Missing parameter or malformed request",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : false,
                      "error" : true,
                      "message" : "The parameter {missingParameter} must be filled."
                    }
                  }
                }
              }
            }
          },
          "401" : {
            "description" : "Authentication required but none provided",
            "content" : {
              "application/json" : { }
            }
          },
          "403" : {
            "description" : "Invalid authentication or missing permission",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Resource not found",
            "content" : {
              "application/json" : { }
            }
          },
          "405" : {
            "description" : "Incorrect request method, e.g. GET instead of POST",
            "content" : {
              "application/json" : { }
            }
          },
          "500" : {
            "description" : "Unexpected server-side error",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/portals/api/v1/stories/render" : {
      "post" : {
        "operationId" : "post-portals-api-v1-stories-render",
        "summary" : "Render Story",
        "description" : "Renders the requested story and returns the generated HTML within a JSON response.\n",
        "parameters" : [ {
          "name" : "accessToken",
          "in" : "query",
          "required" : true,
          "description" : "Access token for non-public portals. When submitting a <i>user</i> or <i>roles,</i> the respective values need to be considered during the computation of the token. See kba:INT63 for details.",
          "schema" : {
            "type" : "string"
          },
          "example" : "d0765f518ff0cab426dbbd6d467c9967"
        }, {
          "name" : "portal",
          "in" : "query",
          "required" : true,
          "description" : "Globally unique alpha-numeric code as set up or automatically assigned. Also visible in the respective URL on the <a href=\"/portals\">Portals</a> page.",
          "schema" : {
            "type" : "string"
          },
          "example" : "9999999"
        }, {
          "name" : "story",
          "in" : "query",
          "required" : true,
          "description" : "The ID of the desired story or its manually (and optionally) provided code. If multiple stories with the same code exists, the newest will be selected.",
          "schema" : {
            "type" : "string"
          },
          "example" : "demostory-1"
        }, {
          "name" : "user",
          "in" : "query",
          "required" : true,
          "description" : "User name",
          "schema" : {
            "type" : "string"
          },
          "example" : "john.doe"
        }, {
          "name" : "filterCountry",
          "in" : "query",
          "required" : false,
          "description" : "The country to filter by. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "filterLanguage",
          "in" : "query",
          "required" : false,
          "description" : "The language to filter by in case of multi language portals. Provide a two-letter ISO code. Note that internationalisation is a paid feature that needs to be purchased and enabled separately.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "language",
          "in" : "query",
          "required" : false,
          "description" : "Language to use for human-readable data. Does not affect content where applicable. Provide a two-letter ISO code.",
          "schema" : {
            "type" : "string"
          },
          "example" : "de"
        }, {
          "name" : "roles",
          "in" : "query",
          "required" : false,
          "description" : "Comma-separated list of roles assigned to the user. Can be omitted if roles are not in use, or if the portal is public.",
          "schema" : {
            "type" : "string"
          },
          "example" : "Heating,Electronics,Top-Customer"
        } ],
        "requestBody" : {
          "description" : "Sample request",
          "required" : false,
          "content" : {
            "application/json" : {
              "examples" : {
                "example1" : {
                  "value" : {
                    "story" : "demostory-1",
                    "portal" : "DEMO",
                    "user" : "Demouser",
                    "roles" : "sales",
                    "accessToken" : "fc97df375de49fbae114a42a991c5999",
                    "lang" : "de",
                    "filterLang" : "de"
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successful response",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : true,
                      "error" : false,
                      "id" : "51",
                      "code" : "demostory-1",
                      "type" : "landingpage",
                      "typeName" : "Landingpage",
                      "renderedHtml" : "<div class=\"sci-border-box sci-story sci-story-gc8hheij92rnsgh2\">...</div>"
                    }
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Missing parameter or malformed request",
            "content" : {
              "application/json" : {
                "examples" : {
                  "example1" : {
                    "value" : {
                      "success" : false,
                      "error" : true,
                      "message" : "The parameter {missingParameter} must be filled."
                    }
                  }
                }
              }
            }
          },
          "401" : {
            "description" : "Authentication required but none provided",
            "content" : {
              "application/json" : { }
            }
          },
          "403" : {
            "description" : "Invalid authentication or missing permission",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Resource not found",
            "content" : {
              "application/json" : { }
            }
          },
          "405" : {
            "description" : "Incorrect request method, e.g. GET instead of POST",
            "content" : {
              "application/json" : { }
            }
          },
          "500" : {
            "description" : "Unexpected server-side error",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    }
  }
}